所有,我必须创建一个具有基本架构的数据库。该数据库将变大(100GB以上),并将用作数据仓库。现在,这个数据库的创建目前正在通过C#代码在“一击”中执行;从许多不同来源提取数据。由于数据量庞大,这种创建导致了一些问题。已决定不是一次创建单个数据库;到
我的问题是双重的。
1。合并多个数据库(具有相同的模式/表结构)的最佳方法是什么?
2。有没有更好的方法来创建这个数据仓库(超大型数据库)?
感谢您的时间。
答案 0 :(得分:7)
对于你的第一个问题:你提到了相同的模式和表结构,在这种情况下,它只是简单地将数据从一个DB表(即较小的DB)移动到另一个DB表(即较大的DB)。为此必须确保
1)数据没有重复(至少在PK领域)
2)将数据从一个db移动到另一个db for sql server refer
答案 1 :(得分:6)
SQL-Hub(http://sql-hub.com)允许您将具有相同模式的多个数据库合并到一个数据库中。有一个免费许可证允许您从UI执行此操作,但如果您希望安排该过程自动运行,则可能需要为许可证付费。但是,如果数据量非常大,可能会对您想要实现的目标有点慢 - 您可以尝试一下。
还有一些文章here会针对这些问题查看其他一些选项。
答案 2 :(得分:4)
索拉的答案很好,也会奏效。这是另一种选择:根本不要合并。在导入创建的多个基表之上创建union-all视图。这可以节省大量的数据移动。这种观点称为partitioned view。