Kibana 上Es常用语句

Kibana 上Es常用小干货

1、新建索引

PUT account_20211130_1717
{
  "settings": {
      "index": {
        "number_of_shards": "4",
        "max_result_window": "1000000",
        "analysis": {
          "filter": {
            "shingle_filter": {
              "max_shingle_size": "20",
              "min_shingle_size": "2",
              "output_unigrams": "true",
              "type": "shingle"
            },
            "ngram_limit_filter": {
              "type": "limit",
              "max_token_count": "512"
            }
          },
          "char_filter": {
            "t2s": {
              "type": "mapping",
              "mappings_path": "t2s.dic"
            },
            "my_stopword": {
              "type": "mapping",
              "mappings": [
                "\\u0020 => ",
                "  => "
              ]
            }
          },
          "analyzer": {
            "whitespace_analyzer": {
              "filter": [
                "standard",
                "lowercase"
              ],
              "char_filter": [
                "t2s"
              ],
              "tokenizer": "whitespace"
            },
            "ngram_analyzer": {
              "filter": [
                "standard",
                "lowercase",
                "ngram_limit_filter"
              ],
              "char_filter": [
                "my_stopword",
                "t2s"
              ],
              "tokenizer": "ngram_tokenizer"
            },
            "keyword_analyzer": {
              "filter": [
                "lowercase"
              ],
              "tokenizer": "keyword_tokenizer"
            },
            "wordbreaker_max_analyzer": {
              "filter": [
                "standard"
              ],
              "char_filter": [
                "t2s"
              ],
              "tokenizer": "ik_max_word"
            },
            "pinyin_analyzer": {
              "filter": [
                "standard",
                "lowercase",
                "word_delimiter",
                "shingle_filter"
              ],
              "tokenizer": "pinyin_tokenizer"
            },
            "wordbreaker_smart_analyzer": {
              "filter": [
                "standard"
              ],
              "char_filter": [
                "t2s"
              ],
              "tokenizer": "ik_smart"
            }
          },
          "tokenizer": {
            "keyword_tokenizer": {
              "type": "keyword",
              "buffer_size": "1024"
            },
            "pinyin_tokenizer": {
              "padding_char": " ",
              "type": "pinyin",
              "first_letter": "none"
            },
            "ngram_tokenizer": {
              "type": "nGram",
              "min_gram": "1",
              "max_gram": "100"
            }
          }
        },
        "number_of_replicas": "1"
      }
    },
  "mappings": {
      "main": {
        "dynamic": "false",
        "properties": {
          
          "account_id": {
            "type": "integer"
          }
        }
      }
    }
}

2、es数据复制reindex

POST _reindex
{
  "source": {
    "index": "account_20210322_1000"
  },
  "dest": {
    "index": "account_20211130_1717"
  }
}

3、es索引别名操作aliases

POST _aliases
{
  "actions": [
    {
      "add": {
        "index": "account_20211130_1717",
        "alias": "account"
      }
    },
    {
      "remove": {
        "index": "account_20210322_1000",
        "alias": "account"
      }
    }
  ]
}

4、删除索引

DELETE account_20210322_1000

5、给索引增加字段

PUT item_export/main/_mapping
{
  "properties": {
    "trinity_gross_profit_ratio":{
      "type": "float"
    }
  }
}

6、删除By查询条件delete_by_query

POST account/_delete_by_query
{
  "size": 210, 
  "query": {
    "bool": {
      "must_not": [
        {
          "bool": {
            "filter": {
              "exists": {
                "field": "is_deleted"
              }
            }
          }
        }
      ],
      "filter": [
        
        {"exists": {
          "field": "business_deviser_id"
        }}
      ],
      "adjust_pure_negative": true,
      "boost": 1
    }
  }
}

7、判断nested结构参数不为空

#nested结构判断不为空
GET item_export/_search
{
  "_source": ["order_brand_list","account_id"], 
  "query": {
    "nested": {
      "path": "order_brand_list",
      "query": {
        "bool": {
          "must": {
            "exists": {
              "field": "order_brand_list"
            }
          }
        }
      }
    }
  }
}

8、更新By查询update_by_query


POST account/_update_by_query
{
  "script": {
    "source": "ctx._source.a_on_shelf_status=params.a_on_shelf_status",
    "lang": "painless",
    "params": {
      "a_on_shelf_status": 4
    }
  },
  "query": {
    "term": {
      "account_id": "3"
    }
  }
}
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
禁用不必要的分词器可以提高Elasticsearch性能和查询效率。以下是一些常见的禁用不必要的分词器的方法: 1. 删除不必要的分词器插件:Elasticsearch默认启用了多个分词器插件,包括英语、法语、德语、西班牙语等多种语言的分词器。如果您的索引只包含一种语言的数据,可以删除其他语言的分词器插件以提高性能。 2. 禁用动态映射:Elasticsearch默认启用动态映射,它可以自动检测和添加新的字段到索引中。但是,如果您的索引结构较为稳定,可以禁用动态映射来避免不必要的分词器的使用。 3. 禁用不必要的分析器:Elasticsearch默认启用多种分析器,包括标准分析器、简单分析器、语言分析器等。如果您的索引只需要使用一种分析器,可以禁用其他不必要的分析器。 4. 指定字段的分析器:在索引数据时,可以指定每个字段使用的分析器。如果某个字段不需要分析器,可以将其设置为“不分析”或使用“空”的分析器。 5. 禁用停用词过滤器:停用词过滤器用于从文本中删除常见单词,如“the”、“a”、“an”等。如果您的数据中没有太多常见单词,可以禁用停用词过滤器以提高性能。 总之,禁用不必要的分词器可以提高Elasticsearch的性能和查询效率。建议您根据自己的需求,选择合适的分词器和分析器,并禁用不必要的分词器,以提高Elasticsearch的性能。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值