Elasticsearch插入新记录而不覆盖

时间:2017-05-19 15:43:08

标签: c# elasticsearch elasticsearch-net

我将Elasticsearch Bulk方法用于我需要索引多个文档的场景,并确保该记录是否已经存在于弹性中,它将被忽略并且不会被覆盖。

我正在为非批量方案寻找类似的方法。我目前有这种方法来索引数据但它总是覆盖以前的记录,如果它已经存在。任何人都可以帮我找出如何索引一条记录,如果记录已经存在则不要覆盖。

public IIndexResponse Index<T>(T data, string indexName, string typeName) where T : class
    {
        if (indexName == null)
        {
            throw new ArgumentNullException("Index name is null. Please provide index name to insert the data.");
        }

        return Client.Index<T>(data, i => i
            .Index(indexName)
            .Type(typeName)
            .OpType(Elasticsearch.Net.OpType.Create));
    }

0 个答案:

没有答案