python - Elasticsearch:对索引数据应用小写

标签 python elasticsearch lucene

我在我的Elasticsearch中已为文档建立索引。示例文档如下所示:

{
    "_index": "processed_tweets",
    "_type": "processed",
    "_id": "830403820580663296",
    "_score": 1,
    "_source": {
      "at": [
        "@LouisDasch"
      ],
      "original_tweet_id": "830398288352403457",
      "id_str": "830403820580663296",
      "trigrams": [
        "blessed lourdes lady",
        "lourdes lady feast",
        "lady feast day",
        "feast day wishing"
      ],
      "hashtags": [
        "#Catholic"
      ],
      "id_tweet_creator": "487735029",
      "tokens": [
        "blessed",
        "lourdes",
        "lady",
        "feast",
        "day",
        "wishing"
      ],
      "bigrams": [
        "blessed lourdes",
        "lourdes lady",
        "lady feast",
        "feast day",
        "day wishing"
      ],
      "retweeted": true
    }
  }

我想将我已建立索引的所有文档的“hashtags”字段中存在的所有hashtags小写。
例如,我将有:
“hashtags”:[“#Catholic”]->“hashtags”:[“#catholic”]
将每个关键字更新为等同于小写字母的最佳方法(节省时间)是什么(保留“#”)?

最佳答案

如果您使用的是ES 5.0及更高版本,则会引入一种称为“无痛”的脚本语言。这可以帮助您更新字段。它的处理速度非常快。

检查下面的链接以获取更多信息。

https://www.elastic.co/guide/en/elasticsearch/reference/5.0/modules-scripting-painless.html

关于python - Elasticsearch:对索引数据应用小写,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43476165/

相关文章:

elasticsearch - 无法让 Elasticsearch 7 工作的 index.max_result_window

elasticsearch - 在 ElasticSearch 中以百分比调整模糊级别

java - 如何使用查询语法在 Lucene 中跨多个字段进行搜索?

elasticsearch - Elasticsearch查询时间提升产生的结果顺序不足

公司Python包命名策略

python - djangorestframework user_id 违反非空约束

python - Django 社区是否广泛使用基于类的 View ?

Python拆分但保留拆分字符串

elasticsearch - 过滤文档的所有数组值均符合Elasticsearch中的某些条件

mysql - HTTP ERROR 500 prbm accessing/solr/dataimport 无法配置 solr