在python中将数据发送到文档db

时间:2017-06-22 09:54:27

标签: python azure azure-cosmosdb

我目前正在尝试将数据发送到python上的azure文档db集合(使用pydocumentdb lib)。 实际上我必须在这个系列上发送大约10万份文件,这需要很长时间(约2小时)。

我使用以下方法逐个发送每个文档:

for document in documents :
    client.CreateDocument(collection_link, document)

我做错了,是否有另一种更快的方法可以做到这一点,或者它需要这么长时间才是正常的。

谢谢!

1 个答案:

答案 0 :(得分:1)

在Azure上,有许多方法可以帮助将数据导入CosmosDB的速度比使用PyDocumentDB API更快,后者通过HTTP包含相关的REST API。

首先,准备一个json文件包含10,000个文件进行导入,然后你可以按照下面的文件导入数据。

  1. 请参阅文档How to import data into Azure Cosmos DB for the DocumentDB API?以通过DocumentDB数据迁移工具导入json数据文件。
  2. 请参阅文档Azure Cosmos DB: How to import MongoDB data?以通过MongoDB的mongoimport工具导入json数据文件。
  3. 将json数据文件上传到Azure Blob存储,然后使用Azure数据工厂从Blob存储复制数据到CosmosDB,请参阅Example: Copy data from Azure Blob to Azure Cosmos DB部分以了解更多详细信息。
  4. 如果您只想在编程中导入数据,可以尝试使用Python MongoDB driver连接Azure CosmosDB以通过MongoDB有线协议导入数据,请参阅文档Introduction to Azure Cosmos DB: API for MongoDB

    希望它有所帮助。