python - 如何将ES中的每个数据设置为未分析?

标签 python json elasticsearch

我在SQS队列中存储了很多json形式的json数据。我有一个python脚本,它基本上从SQS中提取数据,然后将其索引到ES。该代码段如下所示:

doc = {
      "settings" : {
      "number_of_shards" : 1
       },
    "mappings" : {
             "_default_":{
                      "_timestamp" : {
                      "enabled" : 'true',
                      "store" : 'true'
                            }
                        }
              }
            }
es = Elasticsearch()
h = { "Content-type":"application/json" }
res = requests.request("POST","http://localhost:9200/"+index_name+"/",headers=h,data=json.dumps(doc))
post = es.index(index=index_name , doc_type='server' , id =1 , body=json.dumps(new_list))

所以基本上我的搜索不是很有效,并且我了解了https://www.elastic.co/guide/en/elasticsearch/guide/current/aggregations-and-analysis.html,我基本上想确保ES不会将我的数据对象分成较小的块。我如何/如何解决此问题?

最佳答案

如果您希望索引中的每个string字段都变成not analyzed字符串,则需要使用Dynamic templates

 PUT index_name
 {
 "mappings": {
  "type_name": {
     "dynamic_templates": [
        {
           "strings": {
               "match_mapping_type": "string",
              "mapping": {
                 "type": "string",
                 "index": "not_analyzed"
              }
           }
        }
       ]
    }
   }
 }

关于python - 如何将ES中的每个数据设置为未分析?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36052841/

相关文章:

python - python 与 PYTHONPATH 哪个

python - 如何同时运行两个线程?

Python 使用 if 语句从 sys.stdin.readline() 获取数据

javascript - 使用 JavaScript 格式化 JSON 日期

java - JsonMappingException(原为 java.lang.NullPointerException)

elasticsearch - 短语提示与ngrams

elasticsearch - 如何在Spring Data Elasticsearch中的IndexQuery上设置OpType

python - 将 beautifulsoup 输出转换为矩阵

c# - 为什么从 mvc 返回 json 时 IgnoreDataMember 属性不起作用?

elasticsearch - Kafka JDBC连接器加载所有数据,然后增量