【问题标题】:COUNT(*) vs. COUNT(1) performance in CassandraCassandra 中的 COUNT(*) 与 COUNT(1) 性能
【发布时间】:2018-03-12 13:54:06
【问题描述】:

根据docs

使用 COUNT(*) 的 SELECT 表达式返回匹配查询的行数。或者,您可以使用 COUNT(1) 来获得相同的结果。

使用后一种方法是否有任何性能优势(如在 RDBMS 中)?

【问题讨论】:

    标签: cassandra database-performance query-performance cassandra-3.0


    【解决方案1】:

    COUNT(*) 和 COUNT(1) 之间没有区别。 COUNT(1) 只是为了向后兼容我认为与一些旧的东西。无论内容如何,​​selectCountClause 都会返回空的 RawSelector 列表,但如果它是一个数字而不是 1 或不是 '*',则会引发异常。

    如果担心性能,您可能希望避免一般计数。而是使用计数器或将计数保持在更高级别。

    【讨论】:

    • 嗨,克里斯,您能详细说明第二段吗?我在 Cassandra 有一张超过 10 亿张的桌子,我正在为此苦苦挣扎 ;-)
    猜你喜欢
    • 2020-11-21
    • 2018-09-18
    • 2011-12-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-08-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多