使用C#NEST增加弹性的场限制

时间:2017-04-30 23:06:08

标签: elasticsearch nest elasticsearch-plugin

我在C#上弹性批量上传时收到错误 - 说超出了1000的字段限制。

Limit of total fields [1000] in index

如何在c#中使用NEST增加字段限制?

谢谢, 丹尼尔

3 个答案:

答案 0 :(得分:0)

您可以通过更改特定于索引的设置来更新它,如下所示:

curl -XPUT '{elasticsearch_url}:9200/{index-name}/_settings' -d '
{
    "index.mapping.total_fields.limit": 3000
}'

将上述占位符替换为您的群集信息。

答案 1 :(得分:0)

在ElasticSearch.net 6.4版中,我是通过这种方式完成的

var settings =  new { index = new { mapping = new  { total_fields = new { limit = 100000 } } } };

            List<object> listOfSettings = new List<object>() { settings };

var setResp = _es.IndicesPutSettings<StringResponse>({Your Index name here}, PostData.MultiJson(listOfSettings));

答案 2 :(得分:0)

以下是@MaurizioChionetti's answer的ElasticSearch 7版本:

function AntiSqlValid(oField ){re= /select|update|delete|exec|count|'|"|=|;|>|<|%/i;if( re.test(oField.value) ){//alert("pls don't input sql strings"); oField.value = ";oField.className="errInfo";oField.focus();return false;}

(这里client.LowLevel.Indices.UpdateSettings<StringResponse>( indexNameResolver.Resolve(typeof(Product)), PostData.Serializable(new { index = new { mapping = new { total_fields = new { limit = 100000 } } } }) ); client