l--*_*''' 3 sql sql-server sql-server-2008
我正在建立一个数据仓库.我需要从不同的来源获取数据并将它们放在一起,以便我可以生成报告.我会做很多表格的加入.我说的可能总共有20张桌子,每张桌子将从100mb到5演出.
我想知道是否应该为每个表创建不同的数据库,因为每个表可能具有完全不同的数据集类型.
例如,我可能有一个表有1 GB的汽车设计数据.我将在这些车上另外有一张3 GB的销售数据表.
将这些分成不同的数据库是否合适?
请告诉我需要哪些其他信息来告知我这种情况.
如果存在逻辑或业务分离,则无论如何都要将它们放在不同的数据库中.这只是干净的数据应用程序开发.但是,如果您要加入或合并不同的数据集,则可以通过使用单个数据库来节省一些开销和管理成本.总共20个表不是很多(我正在开发一个拥有大约3700个表的系统,尽管〜1600个是审计).请记住,如果您有一个像样的模型,索引等,SQL Server可以扩展到数TB的数据.
如果您关心仓库的性能,可以将服务器充满RAM和硬盘.要正确利用硬盘驱动器,您需要考虑利用多个文件/文件组并适当地对表格进行分析.
拆分到不同的数据库通常是为了传播I/O负载.在SQL Server中,如果要在多个磁盘组/磁盘之间传播I/O,则可以在数据库本身中拥有不同的文件组.在仓储方案中,您经常处理数据库存储的SAN解决方案,并且根据您的方案,这些方法不会真正关注性能方面,而其他方式可能会在正确计划时为您提供额外的性能.
您还可以使用表分区来查看不断增长的数据库,但在我看来,只要确保您拥有足够的旧内存,它将比花费时间和精力来担心数据库和文件更有益于您.
我们在一个数据库文件中运行100gig数据库,性能非常出色.许多频繁访问的数据虽然驻留在内存中,但是通过良好的表结构和逻辑索引,您可以立即拥有响应式仓库.
| 归档时间: |
|
| 查看次数: |
2247 次 |
| 最近记录: |