Sql server 我如何设计一个能够存储非常大数据的表?
我需要在Oracle中设计一个表,它将在一天内存储2-5 TB的数据。它可以增长到200TB,当超过200TB时,记录将被清除 将其保留在OLTP中是可行的选择,还是需要将其转移到数据仓库数据库中? 请告知我在设计此表或数据库的架构时应牢记的注意事项Sql server 我如何设计一个能够存储非常大数据的表?,sql-server,oracle,large-data-volumes,large-data,Sql Server,Oracle,Large Data Volumes,Large Data,我需要在Oracle中设计一个表,它将在一天内存储2-5 TB的数据。它可以增长到200TB,当超过200TB时,记录将被清除 将其保留在OLTP中是可行的选择,还是需要将其转移到数据仓库数据库中? 请告知我在设计此表或数据库的架构时应牢记的注意事项 另外,如果它是SQL server,请提供建议,因为我可以使用任何一个数据库。我将首先查看您的磁盘子系统,并确保它能够处理您每天要处理的2-5 TB负载。Oracle和SQL Server都内置了分区。在SQL Server中,您还可以使用压缩来最
另外,如果它是SQL server,请提供建议,因为我可以使用任何一个数据库。我将首先查看您的磁盘子系统,并确保它能够处理您每天要处理的2-5 TB负载。Oracle和SQL Server都内置了分区。在SQL Server中,您还可以使用压缩来最小化磁盘上的存储(不确定Oracle)
这将主要用于OLAP或OLTP吗?这种规模将您置于VLDB领域(非常大的数据库)。 在那个高度,情况根本不同 如果您的申请没有充分的责任要求,您的问题将无法得到回答。您需要针对应用程序应该对数据执行的操作进行性能设计 我的建议是让有经验的人上船,否则你几乎100%肯定会失败 如果您使用Oracle,它提供了几种您需要非常小心使用的分区类型。出于管理目的(移动数据、构建索引、恢复数据)以及查询性能,您需要分区:
- 范围分区,例如按日期范围
- 列表分区,用于存储数据片段,如国家('SE','US','GB'))
- 散列分区。基于哈希函数将数据存储在其中一个分区中
- 或上述任何组合
很抱歉,我无法为您提供一个可供使用的解决方案,但我想确保您了解,您不仅仅是在构建一个高于平均大小的数据库。它是巨大的 你可能会得到更好的答案,我只是确认Oracle也支持表和索引压缩,一天2-5 TB?无论压缩与否,我都会远离索引。如果需要查询,请复制到OLAP结构。当然是分区。