相关疑难解决方法(0)

将最多100,000条记录插入DocumentDB的最快方法

正如标题所示,我需要以编程方式将100,000多条记录插入到DocumentDb集合中.这些数据将在稍后用于创建报告.我正在使用Azure Documents SDK和用于批量插入文档的存储过程(请参阅使用存储过程查询Azure documentdb批量插入).

以下控制台应用程序显示了我如何插入文档.

InsertDocuments生成500个测试文档以传递给存储过程.main函数调用InsertDocuments 10次,整体插入5,000个文档.运行此应用程序会导致每隔几秒钟插入500个文档.如果我增加每次通话的文件数量,我就会开始收到错误并丢失文件.

任何人都可以推荐更快的方式来插入文件?

static void Main(string[] args)
{
    Console.WriteLine("Starting...");

    MainAsync().Wait();
}

static async Task MainAsync()
{
    int campaignId = 1001,
        count = 500;

    for (int i = 0; i < 10; i++)
    {
        await InsertDocuments(campaignId, (count * i) + 1, (count * i) + count);
    }
}

static async Task InsertDocuments(int campaignId, int startId, int endId)
{
    using (DocumentClient client = new DocumentClient(new Uri(documentDbUrl), documentDbKey))
    {
        List<dynamic> items = new List<dynamic>(); …
Run Code Online (Sandbox Code Playgroud)

c# azure azure-cosmosdb

18
推荐指数
1
解决办法
2万
查看次数

如何在文档数据库中上载多个文档(批量)

我有文件列表(对象)该对象有多个文件,即Json记录存在,但我尝试上传文件串(记录)它不上传文档数据库,但我上传单文档记录,它成功上传.

  List<MyModelClass> listObj = new List<MyModelClass>();
  Document doc = await DocumentClient.CreateDocumentAsync("dbs/" + DocumentDatabase.Id + "/colls/" + DocumentCollection.Id, listObj);
Run Code Online (Sandbox Code Playgroud)

上面的代码不工作.....

   foreach (var item in listObj )
    {
      Document doc = await Client.CreateDocumentAsync("dbs/" + DocumentDatabase.Id + "/colls/" + DocumentCollection.Id, item);
    }
Run Code Online (Sandbox Code Playgroud)

这段代码对我有用.....

 Syntax : CreateDocumentAsync(String,?Object,?RequestOptions,?Boolean)
 Object :- Document object // I Know it as per syntax it need to be "Document Type".
Run Code Online (Sandbox Code Playgroud)

我想要任何其他方式一次上传所有文档....

azure azure-cosmosdb

10
推荐指数
1
解决办法
7736
查看次数

如何从excel导入documentDB中的批量数据?

我已经浏览了一天关于如何从excel文件中插入documentDB中的批量数据,但我没有得到任何信息.

我可以从excel文件中读取数据并在documentDB中逐个插入

Service service = new Service();
    foreach(data in exceldata) //exceldata contains set of rows
    {
    var student = new Student();
    student.id= "";
    student.name = data.name;
    student.age = data.age;
    student.class = data.class;
    student.id = service.savetoDocumentDB(collectionLink,student); //collectionlink is a string stored in web.config
    students.add(student);
    }

Class Service
{
 public async Task<string> AddDocument(string collectionLink, Student data)
        {
            this.DeserializePayload(data);
            var result = await Client.CreateDocumentAsync(collectionLink, data);
            return result.Resource.Id;
        }
}
Run Code Online (Sandbox Code Playgroud)

我可以在一个实例中插入所有记录吗?

任何帮助都会非常明显.

c# excel bulkinsert insert azure-cosmosdb

2
推荐指数
1
解决办法
2412
查看次数

标签 统计

azure-cosmosdb ×3

azure ×2

c# ×2

bulkinsert ×1

excel ×1

insert ×1