首页
学习
活动
专区
圈层
工具
发布

SSIS
EN

Stack Overflow用户
提问于 2020-05-06 13:47:46
回答 1查看 28关注 0票数 0

我需要使用SSIS编写报告,将数据从SQL数据库提取到CSV文件中。

数据是本周的销售额和去年同期的销售额。

我编写了一个包含两个数据流任务的SSIS包,一个任务将数据加载到持久化表中,另一个任务将数据提取到CSV中。

问题是性能真的很差。本周,我们将看到大约1000份销售记录,但去年同期的销售记录超过150万份。

同样的表在本周和去年保存,因此它几乎是相同的查询,但具有不同的日期参数。

到目前为止,我已经尝试过:

  1. 一个查询与两个CTE的连接。性能为45分钟(
  2. ),只为今年的数据插入到表中,并单独更新以添加去年的数据。操作花了20分钟。
  3. 两个SQL源,它们具有NOLOCK提示,然后排序并与合并联接连接。我原希望两人都能并行运行,但45分钟后我就停止了。

即使有选项2在20分钟,它将是大约4倍比任何其他SSIS软件包在房地产。

我的问题是,请两次从同一张表中获取数据的最佳设计实践是什么?

EN

回答 1

Stack Overflow用户

发布于 2020-05-14 16:22:53

我调查过工会的所有想法,但都没成功。我需要今年和去年在同一排,并没有看到如何使它工作。

通过移除一些列并在它们上执行SSIS查找,我将其缩短到不到10分钟,这使性能提高到了一个可接受的水平。

谢谢您一直鼓励我。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61636849

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档