当前位置: 首页 > 知识库问答 >
问题:

谓词大小导致Hazelcast

漆雕欣德
2023-03-14

在hazelcast IMap中查找谓词结果大小的最佳方法是什么?

MapProxyImpl中不支持直接大小。java和size()将根据返回的集合进行计算,在这种情况下,这是不需要的。

你有什么建议吗?

谢谢

共有2个答案

越朗
2023-03-14

票上有答案

从3.8开始,您可以使用map。聚合(Aggregators.count());

我还没有测试

何兴学
2023-03-14

您可能正在寻找一个IMap::大小(谓词)重载,它还不可用,无论如何,它听起来像是一个不错的功能。你想为此创建一个功能请求吗?

为了解决目前的问题,我想最好的解决方法是使用EntryProcessor,针对所有键运行,基本上执行谓词,并为每个键返回1或0,然后在调用者上对结果求和。很抱歉没有更好的解决方案,但也许其他人有一个惊人的想法:)

 类似资料:
  • 我一直在尝试使用聚合框架按对报告进行计数。尝试1: 这导致聚合框架抛出: 然后更改为使用而不是进行尝试#2: 最后,我在尝试#3中使用了lambda来实现接口: 这一尝试终于奏效了。 问题1:这是Hazelcast的一个bug吗?似乎聚合框架应该支持由或构建的?如果不是,那么应该创建一个新的类型(例如,)来避免这种混淆。 问题2(与问题1相关):使用lambda会导致我创建的索引未被使用。相反,映

  • 谓词是指用方括号写的XPath表达式。 它指的是为某些条件限制节点集中的选定节点。 例如, 序号 序号 描述 1 选择第一个元素,它是元素的子元素。 2 选择最后一个元素,它是元素的子元素。 3 使用选择元素。 4 选择大于的元素。 示例 此示例通过迭代每个学生创建一个包含其详细信息的元素。 它计算节点的位置,然后打印学生的详细信息以及序列号。 文件:students.xml - 文件:stude

  • 谓词 Clojure 提供了很多函数来充当谓词的功能 — 测试条件是否成立。它们的返回值是 true或者false。在Clojure里面 false 以及 nil 被解释成false. true 以及任何其他值都被解释成true, 包括0。谓词函数的名字一般以问号结尾。 反射是一种获取一个对象的特性,而不是它的值的过程。比如说对象的类型。有很多谓词函数进行反射。 测试一个对象的类型的谓词包括 cl

  • Predicates是评估条件并提供true或false值的函数。 我们在数字章节的例子中看到了谓词函数。 我们看过像'even?'这样的功能 用来测试一个数字是否是偶数,或'neg?' 用于测试数字是否大于零。 所有这些函数都返回true或false值。 以下是Clojure中谓词的示例。 (ns clojure.examples.example (:gen-class)) ;; This

  • 谓词是针对某些特定条件测试其参数的函数,如果条件为假则返回nil,或者某些非零值是条件为真。 下表显示了一些最常用的谓词 - Sr.No. 谓词和描述 1 atom 它接受一个参数,如果参数是原子则返回t,否则返回nil。 2 equal 它需要两个参数,如果它们在结构上相等则返回t否则返回nil 。 3 eq 它需要两个参数,如果它们是相同的相同对象,则返回t ,共享相同的内存位置,否则返回ni

  • 我正在我的spring boot应用程序中使用hazelcast缓存。。 如果我和IMap一起去 但是如何在Spring boot应用程序中传递HazelCast SQl查询。。 是否有用于传递查询的注释? 如果有意味着如何通过特定的方法?