【问题标题】:Get a row in Cassandra by key without using CQL在不使用 CQL 的情况下在 Cassandra 中按键获取一行
【发布时间】:2016-06-30 01:52:30
【问题描述】:

我曾使用过其他支持通过主键“获取”而不是“选择”概念的 NoSQL 数据库。

“get”的优势在于无需解析或处理 SQL/CQL/OQL/任何内容,因此速度要快得多。

Cassandra API 中是否有类似的东西,我可以通过主键简单地“获取”一整行,而 Cassandra 不必解析 CQL? (还是 CQL 解析如此简单快速以至于没有可衡量的差异?)

【问题讨论】:

  • "...所以它要快得多。"你能分享你的支持指标吗?
  • 不适合 Cassandra,但适合其他 NoSQL 数据库。例如,像 GemFire 一样,是一个超快的内存网格,所以一个“get”大约需要 0.1ms,但如果你传递一个 OQL 查询,则需要 1 或 2ms。这仍然很快,但比“获取”慢一个数量级,并且对于某些可能很关键的工作负载。
  • 这可能很关键。但是对于 CQL 是否也存在同样的差异?必须测量才能知道。

标签: cassandra


【解决方案1】:

CQL 解析速度快,开销低,不用担心。如果它困扰您,您可以准备语句并预先解析它们,但网络和磁盘延迟将胜过它几个数量级。

如果你真的想要一个“get”功能,有一个 Thrift 接口。它现在已弃用,在最近的版本中 CQL 更快。

【讨论】:

    猜你喜欢
    • 2016-04-05
    • 1970-01-01
    • 1970-01-01
    • 2011-07-02
    • 1970-01-01
    • 1970-01-01
    • 2013-07-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多