ElasticSearch 多滚动 Java API

2024-05-04

我想从索引中获取所有数据。由于项目数量对于内存来说太大,我使用滚动(很好的功能):

client.prepareSearch(index)
    .setTypes(myType).setSearchType(SearchType.SCAN)
    .setScroll(new TimeValue(60000))
    .setSize(amountPerCall)
    .setQuery(MatchAll())
    .execute().actionGet();

调用时效果很好:

client.prepareSearchScroll(scrollId)
    .setScroll(new TimeValue(600000))
    .execute().actionGet()

但是,当我多次调用前一个方法时,我得到了相同的结果scrollId多次,因此我无法并行滚动多次。

I found http://elasticsearch-users.115913.n3.nabble.com/Multiple-scrolls-simultanious-td4024191.html http://elasticsearch-users.115913.n3.nabble.com/Multiple-scrolls-simultanious-td4024191.html其中指出这是可能的 - 尽管我不知道他与 ES 的隶属关系。

难道我做错了什么?


经过更多搜索后,我的印象是这(相同scrollId)是设计使然。超时到期后(每次调用后都会重置)Elasticsearch 扫描和滚动 - 添加到新索引 https://stackoverflow.com/questions/28844530/elasticsearch-scan-and-scroll-add-to-new-index).

因此,每个索引只能获得一个打开的卷轴。

https://www.elastic.co/guide/en/elasticsearch/reference/current/search-request-scroll.html https://www.elastic.co/guide/en/elasticsearch/reference/current/search-request-scroll.html states:

滚动并不是为了实时用户请求,而是为了 处理大量数据,例如为了重新索引 将一个索引的内容转换为具有不同配置的新索引。

所以看来我想要的不是一个选项,故意的 - 可能是因为优化。

Update
如前所述,无法创建多个滚动,但这仅当您用于滚动的查询相同时才是正确的。如果你scroll例如,对于另一个type, index,或者只是另一个query,你可以有多个scrolls

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

ElasticSearch 多滚动 Java API 的相关文章

随机推荐

  • 启动时系统托盘图标不出现

    我在 FormCreate 事件处理程序中使用以下代码来创建系统托盘图标 当我运行程序时 系统托盘图标显示正常 我将应用程序设置为在 Windows 启动时自动启动 当我重新启动计算机时 我的应用程序进程已启动 但系统托盘图标从未出现 我认
  • 在不同窗口的上下文中执行函数?

    假设顶部窗口中有一个功能 例如 function z alert window name 我们还假设该文档中有一个 iframe 同源 顶部窗口中的函数是否可以在另一个窗口的上下文中执行此函数 以便它显示 iframe 的名称而不是顶部窗口
  • 验证使用 BER/DER 编码的 ASN.1 格式的 C# 中的 DSA 签名

    如何在 C 中验证 DSA 签名 Given 消息文本 签名摘要 通常为 ASN 1 DER 格式 公钥 采用签名的 X 509 证书 PEM 或 DER 格式 我尝试了多种方法 但都没有成功 OpenSSL NET http openss
  • 如何使用 ASP.Net 中的 PageMethods 将多维数组从 Javascript 传递到服务器

    我有一些 li 我的 HTML 页面中的项目如下 li li class ui state default Item 2 li li class ui state default Item 3 li li class ui state de
  • 完全替换 ASP.Net 的会话

    ASP Net 会话对于传统的 WebForms 应用程序来说似乎很完美 但它们所做的一些事情对于现代 AJAX 和 MVC 应用程序来说是一个严重的问题 具体来说 访问 ASP Net 提供程序只有 3 种方法 锁定读和写 默认 会话被锁
  • 像 Gmail 应用程序一样处理 Android WebView 中的外部链接

    我是一名网络开发人员 我目前正在 Android Studio 上使用 WebView 开发 Android 应用程序 该 WebView 将我的网站作为 Android 应用程序访问 我的一个网页包含许多外部链接 我的目标是让 Andro
  • 对于确实存在的字典,pdb 下“NameError:未定义全局名称”

    我遇到了一个范围问题lambda功能 我可以成功地将 foo 输出到标准输出 但在使用时出现错误max 包括一个lambda 请参阅下面的简化代码 总而言之 我正在尝试找到嵌套键的最大值budget在未知数量的一阶密钥内 Pdb foo s
  • 将参数传递给 SQL Server 中的 IN 子句[重复]

    这个问题在这里已经有答案了 可能的重复 参数化 SQL IN 子句 https stackoverflow com questions 337704 parameterizing a sql in clause SQL Server 带有声
  • Windows 通用应用程序串行端口无法打开,SerialDevice.FromIdAsync 始终为 null

    我正在尝试在 Windows 通用应用程序中使用串行端口 我一直在使用微软的串行示例应用程序作为模板 但是我遇到了一个相当奇怪的问题 var dis await DeviceInformation FindAllAsync SerialDe
  • 来自无符号字符缓冲区的 QImage(jpg 格式)

    我有类型的缓冲区unsigned char 我用JPG图像填充 我想使用此缓冲区将图像绘制到 QLabel 中的应用程序屏幕上 我已经这样做了 但图像不正确 谁能告诉我最好的方法是什么 QPixmap pix QPixmap fromIma
  • 观察者不触发

    我正在使用带有选项 API 的 Vue 3 如下面发布的代码所示 在watch对象 我监视发生的变化isToggleBtnLabelDigitizePolygon 在方法中onDigitizePolygon我改变的值isToggleBtnL
  • /usr/bin/env: 'python3\r': Windows 中没有抛出此类文件或目录错误

    我正在尝试从下面的存储库在我的 Windows 本地计算机中部署 hyperledger sawtooth https github com hyperledger education https github com hyperledge
  • 在 Linux 集群上安装 R `forecast` 包:编译器问题?

    我正在寻找测试性能R 更具体地说是一些例程forecast封装在具有 Intel Xeon Phi 协处理器的 HPC 集群上 据我所知 系统管理员已经建立了R 3 2 5按照英特尔网站上的说明从来源获取 https software in
  • 在 SQL 表中的文本字符串中查找换行符?

    我试图在 SQL 表的列中查找换行符和回车符 但我不确定语法 I tried SELECT foo FROM test WHERE foo LIKE CHAR 10 尽管我知道该表应该返回结果 但我没有得到任何结果 我究竟做错了什么 SEL
  • 如何让NSManagedObject不出错?

    我目前正在调试另一个开发人员编写的一个大项目 该项目使用CoreData我对此很陌生 我遇到了崩溃 这是由于某些NSManagedObject是一个错误 我对什么是错误不太了解 我想将对象转换为 非错误 看看它是否有帮助 阅读文档让我想到t
  • 我无法让 jQuery 工作 [关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 你好 我正在尝试一些 jQuery
  • 在 Vapor 应用程序中使用 Fluent 进行连接

    我正在努力弄清楚如何使用 Fluent 将两个表连接在一起 本质上我想运行这个 SQL 命令 SELECT p name o amount o amount p amount total FROM OrderPoints o INNER J
  • Angular.js 性能问题

    性能选项卡上的 Batarang 显示在应用程序的根目录上 Angular 正在调用如下所示的函数 function a var e f i a eval h m hc i 根据 batarang 的说法 它的速度慢得令人痛苦 当我在应用程
  • 如何创建 3D 高度图

    我有一个 2D 数组 Z 存储该元素位置的高度 除了使用方法之外here http matplotlib org mpl toolkits mplot3d tutorial html surface plots其中我需要创建与 Z 大小相同
  • ElasticSearch 多滚动 Java API

    我想从索引中获取所有数据 由于项目数量对于内存来说太大 我使用滚动 很好的功能 client prepareSearch index setTypes myType setSearchType SearchType SCAN setScro