【问题标题】:Is that possible to read/parse elasticsearch index file directly?可以直接读取/解析弹性搜索索引文件吗?
【发布时间】:2020-07-21 19:29:21
【问题描述】:

问题是我们遇到了一个场景,我们想直接读取/加载一个es索引文件的所有数据到内存中,而不是使用es api的滚动轮询查询方式。

我们这样做的原因是,通过这种方式,它不会降低我们的 es 实例被其他应用程序使用的性能。这对我们来说非常重要。

索引数据加载到内存后,我们可以直接解析传输到其他大数据应用,比如kafka、flink。

【问题讨论】:

    标签: elasticsearch apache-kafka lucene apache-flink


    【解决方案1】:

    如果要读取的记录超过 10000 条,最好的方法是使用 Scroll API。您可以使用此 API 获取所有数据,并在合适的情况下将所有内容存储在内存中。

    我很好奇

    它不会降低我们的 es 实例被其他应用程序使用的性能。

    为什么您认为使用标准 API 会很慢?

    【讨论】:

    • 非常感谢您的回复。我的同事维护Es实例,我需要将es0_data/nodes/0/indices/文件夹中的所有索引数据一一读取,例如DylzKdjSqweNU9ZWRhkm4w,不带查询条件,然后保存到kafka中。问题是索引文件是网络流日志,每个文件通常都有非常大的大小。因为 Es 实例支持非常重要的应用程序,我的同事认为如果我使用标准的 Es API,即滚动,可能会增加 Es 实例的负担,甚至可能导致 Es 实例崩溃。
    • 没有。 Scroll API 就是为此而设计的。
    猜你喜欢
    • 2013-03-12
    • 1970-01-01
    • 2014-09-02
    • 2015-12-18
    • 1970-01-01
    • 2012-01-25
    • 2016-10-24
    相关资源
    最近更新 更多