java - Logstash 使用 ruby 过滤器,ElasticSearch id 如何控制?
问题描述
我使用 Java ElasticSearch api。
一次搜索,平均搜索结果 17,000,000 条数据因此我 ElasticSearch api 使用了滚动的方法。
需要一次 ElasticSearch 数据更新。并更新使用需要'_id'。但是,搜索结果源不包含“_id”。
我想到了一个办法!
“我想使用 Logstash 过滤器在 ElasticSearch 源中包含 '_id'。”
但是,我不知道 ElasticSearch 源包括 '_id' 的方式 :( ...
帮我 !
如果有其他方式,请告诉我。
解决方案
您可以_id
在 Java API 中使用SearchHit.getId()
:https ://static.javadoc.io/org.elasticsearch/elasticsearch/6.0.0/org/elasticsearch/search/SearchHit.html#getId-- 。
推荐阅读
- node.js - express-useragent 结果全部为假?
- php - 致命错误:无法声明类 wtemailcc,因为该名称已在第 34 行的 /...../wtemailcc.php 中使用
- node.js - 如何在同时运行的笑话测试中生成从 postgres sql 获取的唯一编号
- python - LSTM 模型中的错误:ValueError:无法找到可以处理输入的数据适配器
- c++ - 即使 std::cout 用于给定代码中的每个字符/在给定代码中的每个字符之后,如何在按下 ENTER 之后显示字符串?
- php - TYPO3 无法在自定义内容元素的模板中使用 dataProcessing 获取数据
- node.js - 如何在 formData 对象中附加文件而不在 Node.js 中物理保存文件?
- react-native - 不知道这个 React-native 组件的名称
- apache-spark - pyspark 无法停止将空字符串读取为 null (spark 3.0)
- selenium - 我想抓取数据,但这一行显示语法错误。我将如何消除此错误?