我们正在尝试在Bulk描述符中添加对象,当描述符计数达到500时,我们将数据推送到ES。但数据正在崩溃。例如。正确推送第一文档数据,而不是按下第二文档数据插入第一文档数据。我们正在为每个文档创建唯一ID,但仍然存在错误。我们正在为并发调用创建锁定对象。 任何帮助将不胜感激。提前谢谢。
代码:
public static void ESSupplierStatsDataUpload(SupplierStats ObjSupplierStats)
{
try
{
if (ElasticSearchCredentials.EnableElasticSearch)
{
lock (_object)
{
//Checks the count in descriptor and doing bulk upload
descriptor.Index(op => op.Index("mystiflysupplierstats")
.Document(ObjSupplierStats));
var count = (descriptor as IBulkRequest).Operations.Count;
if (count == 500)
{
var result = client.Bulk(descriptor );
descriptor = new BulkDescriptor();
}
}
}
}
catch (Exception e)
{
//Logging exception
throw;
}
}