Kibana 作为json的ElasticSearch数据转储

e3bfsja2  于 2022-12-09  发布在  Kibana
关注(0)|答案(1)|浏览(205)

我们有一个包含50k记录的ES 2.4集群。我想转储为csv或json的特定字段。如何处理大小字段,因为它只允许10k记录。
注意:我们有一个新的8.x群集正在从源重新接收数据。我们正在寻找一种方法来检查新群集中是否存在所有数据。

{
  "from": 0,
  "size": 30,
  "fields":["code","version","locales"],
  "aggs": {
    "code_version_count": {
      "cardinality": {
        "script": "doc['code'].value + ' ' + doc['version'].value"
      }
    }
  }
}
uinbv5nw

uinbv5nw1#

可以使用fromsize迭代:
https://www.elastic.co/guide/en/elasticsearch/reference/2.4/search-request-from-size.html

{
    "from" : 0, "size" : 10,
    "query" : {
        "term" : { "user" : "kimchy" }
    }
}

或使用Scroll API:
https://www.elastic.co/guide/en/elasticsearch/reference/2.4/search-request-scroll.html

curl -XGET 'localhost:9200/twitter/tweet/_search?scroll=1m' -d '
{
    "query": {
        "match" : {
            "title" : "elasticsearch"
        }
    }
}
'

scroll参数将返回一个scroll_id,您必须使用它来获取下一批结果:

curl -XGET 'localhost:9200/_search/scroll' -d' 
{
    "scroll" : "1m", 
    "scroll_id" : "c2Nhbjs2OzM0NDg1ODpzRlBLc0FXNlNyNm5JWUc1" 
}
'

要转储CSV或JSON,您必须开发自己的脚本,或者您也可以使用一个工具,如elasticsearch-dump:
https://github.com/elasticsearch-dump/elasticsearch-dump

相关问题