如何加速从Azure Data Lake到Cosmos DB的复制

时间:2017-08-09 14:06:51

标签: azure azure-cosmosdb azure-data-factory azure-data-lake

我正在使用Azure Data Factory将数据从Azure Data Lake Store复制到Cosmos DB中的集合。我们将在数据湖中有几千个JSON文件,每个JSON文件大约是。 3 GB。我正在使用数据工厂的复制活动,在初始运行中,一个文件需要3.5小时才能加载,集合设置为10000 RU / s,数据工厂使用默认设置。现在我将其扩展到50000 RU / s,将cloudDataMovementUnits设置为32并将writeBatchSize设置为10以查看它是否提高了速度,同一文件现在需要2.5小时才能加载。加载数千个文件的时间仍然需要很长时间。

有没有办法以更好的方式做到这一点?

1 个答案:

答案 0 :(得分:0)

最重要的是,尝试复制数百万个Json文件需要时间。如果它是有组织的GB数据,你可以通过更短的时间批量传输而不是数百万个不同的文件来逃避。

我不知道你是否打算经常从Data Lake转移这种类型的文件,但一个好的策略可能是写一个专门用来做这件事的应用程序。使用Microsoft.Azure.DocumentDB客户端库,您可以轻松创建管理传输的C#Web应用程序。

通过这种方式,您可以自动执行这些转移,限制它们,安排它们等。您还可以在虚拟机或应用服务上托管此应用,而不必考虑它。