首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用ScalarDB在Cassandra中找到分区的大小

如何使用ScalarDB在Cassandra中找到分区的大小
EN

Stack Overflow用户
提问于 2020-07-24 06:46:47
回答 1查看 37关注 0票数 1

我使用的是Scalar库,它在Cassandra中添加了ACID支持。如何使用Scalar获得分区的大小?

在Cassandra驱动程序中,我会调用类似于下面的命令来获得大小。

代码语言:javascript
复制
val resultSet = session.execute(partitionSizeQuery)
      val resultSetSize = resultSet.all.size 

什么是ScalarDB的等价物。

当我打电话的时候我得到了Optional[Result]

代码语言:javascript
复制
val result = transaction.get(getQuestion)

然后,如果有一个值,则调用.get来获取结果的值(在检查result.isPresent之后)。

代码语言:javascript
复制
val resultGet = result.get
    logger.trace(s"result is ${resultGet}")

我想以上这些只会给我一排。

我既考虑使用Scan,也考虑使用List[Result],但从文档中还不清楚我是否会得到所有的结果,还是某种系统/可配置的限制。

我如何获得分区的大小,即使我不能一次得到所有的问题?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-07-25 04:09:47

您需要执行scan并获得List<Result>。它从数据库中检索所有结果,但是如果分区的大小很大,则不建议这样做。

您可以使用withStartwithEnd Scan API限制扫描范围。https://scalar-labs.github.io/scalardb/javadoc/com/scalar/db/api/Scan.html

如果它只检索指定的范围,那么它可以依赖于下划线实现,但它只能检索Cassandra大小写中指定的范围。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63068247

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档