如何使用 Distributed Query API like Criteria API 或 Distributed Sql Query 与除 IMap 之外的任何数据结构?

How to use Distributed Query API like Criteria API or Distributed Sql Query with any data structures other than IMap?

我想使用分布式查询,创建谓词并使用该谓词从列表中过滤数据。如何将谓词与 IList 一起使用?

我已经阅读了 Hazelcast IMDG 3.12 文档,但它只显示了 IMAP 的用法。谁能告诉我分布式查询是只适用于 IMAP 还是也适用于其他数据结构?

一个 IMap is a collection of objects. An IList一个集合的单个对象

搜索匹配项目前仅针对前者实现。 因此,要查找匹配项,您必须自己执行此操作。

您可以像对待标准 Java 列表一样遍历列表,但这意味着将完整列表检索给调用者。整个列表从它所在的位置复制到调用者,如果列表与所需的匹配相比很大,则网络传输效率可能低下。

您可以提交一个在主机上应用列表迭代器和列表的可调用对象,运行 过滤而不通过网络移动整个列表,只返回匹配项。

此外,Jet 可以将列表视为源(请参阅 here),因此如果您愿意,可以构建自己的过滤器以应用于它所在的数据。临时请求可能工作量太大,但还有一个选择。