Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/oracle/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Oracle中每天1000亿条记录—这是个问题吗?_Oracle - Fatal编程技术网

Oracle中每天1000亿条记录—这是个问题吗?

Oracle中每天1000亿条记录—这是个问题吗?,oracle,Oracle,一位客户希望我将1000亿条记录复制到一个空的Oracle数据库中。几乎所有记录都有大约6个字段,其中只有一个是varchar字段,这些varchar字段中99.99%包含空值。他希望每天都这样做。这需要什么样的Oracle服务器,我需要记住哪些特别的东西?每天1000亿条记录相当于每秒导入1157407行。是的-这是一个重要的问题,这里不是获得真正答案的地方-如果您有这些数据量和非常大的硬件预算,那么直接与Oracle交谈,让他们参与项目。您可能在Oracle数据库机器领域:如果这是一个真正的

一位客户希望我将1000亿条记录复制到一个空的Oracle数据库中。几乎所有记录都有大约6个字段,其中只有一个是varchar字段,这些varchar字段中99.99%包含空值。他希望每天都这样做。这需要什么样的Oracle服务器,我需要记住哪些特别的东西?

每天1000亿条记录相当于每秒导入1157407行。是的-这是一个重要的问题,这里不是获得真正答案的地方-如果您有这些数据量和非常大的硬件预算,那么直接与Oracle交谈,让他们参与项目。

您可能在Oracle数据库机器领域:

如果这是一个真正的客户如果他们有满足技术要求的预算,那么我建议的第一件事就是与他们合作,了解此技术要求背后的业务需求。然后检查是否有比上述技术要求更好的方法来满足业务需求。原因是以下一些技术问题:

询问这将运行多长时间并购买大量磁盘空间?这是增量还是覆盖

一年中的每一天,或者接下来20年中的每一天,等等

即使假设每个字段的大小只有一个字节,也可以计算为每天1/2 TB。如果每天都有一组不同的记录,那么这些记录就加起来了


然后看看进口方面。这也是一个惊人的每秒行数

每天都有1000亿条记录我怀疑客户是否真的需要这个。问他为什么,你可能会找到另一种解决办法


如果结果证明我错了,而您的客户真的需要这样做,我很好奇原因

每天1000亿张唱片?!这个客户叫什么名字,“梯队”?;)此外,您可能希望尝试在的ServerFault姐妹站点上获取更多管理员类型的内容,因为您在这里面临的主要挑战将是Andrew在下面提到的基础设施。请澄清:1000亿条记录将复制到一个空数据库。我不打算数据库中的记录总数超过1000亿条。主要原因是复制(仅复制更改的记录)不是选项。为什么仅复制更改的记录不是选项?无论是通过“复制”还是其他类型的增量提要完成,在完成初始加载后,这通常是将日常数据加载降至最低的方法。您还指定了一个字段为varchar。其他的是什么?业务需求很简单:每天在Oracle上提供另一个数据库中的数据。出于其他原因,使用复制进行优化不是一个选项。好吧,那么您现在看到的是每日拷贝(即不是每天1000亿条新记录)。在这种情况下,这更像是一个报告副本?我想我所质疑的业务需求是他们以后需要如何处理数据。他们需要所有的数据吗?是否可以在插入之前进行转换,以帮助他们实现目标?是否可以对源数据库等进行处理?源数据库中的数据每天变化多少。每天加载增量提要比每天加载这种规模的满负载要容易得多。如果真的需要这种规模的每日满负荷,那么我们讨论的是一个非常重要的要求,正如其他地方建议的那样,应该与供应商讨论。我不确定客户是否知道所涉及的数据量,但他们愿意为此花钱,因此,问题更像是:它的价格会有多高。经过简短的讨论,这个想法被放弃,取而代之的是更简单的东西。