作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我们正在使用 Elasticsearch 。本质上,我需要插入一条记录,然后查询数据并可靠地返回最近插入的行。 (这是一个导入分层数据的导入工具,当实体插入到ES中时,该工具需要检查新节点引用的现有节点)。
我尝试了一些方法。
首先,如果我在每次插入时删除并重建索引,它就会起作用(显然在现实世界中无法做到这一点)。
其次,我尝试将refresh_interval设置为-1:
settings_map.put("index.refresh_interval", "-1");
org.elasticsearch.common.settings.Settings settings = ImmutableSettings.settingsBuilder().put(settings_map)
.build();
UpdateSettingsRequestBuilder usrb = es.admin().indices()
.prepareUpdateSettings();
usrb.setIndices("pm");
usrb.setSettings(settings);
usrb.execute().actionGet();
第三,我尝试将线程选项设置为 false:
tc.prepareUpdate(domain, type, id)).setListenerThreaded(false)...
我还看到了 setOperationThreaded
设置,但在prepareUpdate() 上似乎不可用。
这些似乎都没有达到预期的效果。
期望的效果是:将记录插入 ElasticSearch 后,立即运行应返回该记录的查询时,可靠地将记录包含在结果中。
最佳答案
将refresh_interval
设置为-1
实际上禁用了自动刷新。
您可以通过将刷新参数设置为 true 来达到所需的效果,如下所示:
client.prepareUpdate(...).setRefresh(true).execute().actionGet();
这样,更新操作将在您更新后立即执行,并且可以根据您的意愿搜索更新后的文档。
注意:刷新操作成本高昂,不应在对大量文档建立索引时执行。
关于java - ElasticSearch:更新后紧跟查询(Java API),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26006391/
如何将 UIButton 放置在动态 UILabel 的末尾? 这是我要实现的目标的屏幕截图: 最佳答案 您在使用自动版式吗?如果是,则在标签和按钮之间添加水平间距约束和基线对齐约束。还要确保标签的行
我是一名优秀的程序员,十分优秀!