我在OLTP DB中有一个巨大的表,每天有大约20M的新行。 我想从这个表中导入数据并尽可能接近实时。 我想在表上创建一些逻辑分区,并在SSIS包中使用几个DFT导入它们。我认为这些DFT应该并行运行,以便我可以使用尽可能多的资源。 我试着在网上查找一篇文章或类似的案例研究,但无法找到。 也许我错过了它是最糟糕的我在错误的方向,没有人使用这个解决方案在这种情况下导入数据。 你会怎么做?如果您认为我的解决方案很好,我应该如何创建分区?关键?日期?
答案 0 :(得分:1)
我认为您应该考虑在SSIS和数据库引擎之间共享处理。因此,只使用SSIS进行ETL过程,在SQL Server上创建多个表,并仅从包中重定向数据。对于其余部分,即组合来自所有表的数据并创建分区,您可以利用SQL Server的强大功能。在某些情况下,SSIS确实是资源密集型的,但DB Engine可以用更少的资源实现(如果可能)。
有时候它取决于您使用的源/目标组件。 This是一篇非常好的文章,作者通过在不同类型的源和目的地上设置一些基准来做一些测试。
以下是少数资源,您可以快速了解一下。