0

我们目前正在将应用程序数据库中的数据引入 Azure SQL 数据库。现在大小约为 600 GB(主要分布到仅 3 个事实表,其余表是非常小的主数据),它在 40 个 vCore 上运行(我们经常使用它进行报告,因此需要大量vCore 数)。

我目前面临的一些困难:

  1. 从源到接收器的数据复制通常需要很长时间。我们使用的方法是把这个月的delete所有记录,然后copy这个月的数据从application db 过来。写入接收器通常也需要很多时间(由于我相信事实表上的索引)。

  2. 每当有人拉出大查询时,就会出现高数据 I/O。

在这里希望有人可以阐明如何使设置更快地工作。

谢谢!

4

1 回答 1

0

虽然我需要更多信息,但我想我可以分享一些指针。当您提到大查询需要更多时间时,您是否检查过查询并确保索引在所需列上并且它们定期更新?看起来您有 3 个包含大量数据的表,查询是否很慢对所有三个?(如果我是你,我会尝试将问题分成更小的问题并逐个调查)

在复制部分,在复制之前,您必须选择数据,因此我们必须提高我上面提到的查询性能。你是如何复制数据的?由于我看到 ADF 标签,我假设它是 ADF 。您是否按顺序复制数据?我的意思是复制数据到 BigTable1 然后复制 BigTable2 然后 BigTable 3 ?您可以探索并行复制数据的可能性。我不知道你是如何在 ADF 中实现逻辑的,但是三个副本 avtivity 一个低于另一个就可以解决问题。

在每个复制活动中,您都可以选择设置并行度和批次计数,我建议您看一下。

除非您可以访问数据,否则性能问题很难帮助解决:) 让我知道它是如何进行的。

https://docs.microsoft.com/en-us/azure/data-factory/copy-activity-performance-features#parallel-copy

谢谢

喜满洲

于 2020-08-26T16:36:17.717 回答