【问题标题】:Optimize cassandra query优化 cassandra 查询
【发布时间】:2012-07-11 16:46:37
【问题描述】:
我正在尝试优化一些我使用行键作为条件的 cassandra 查询。
所以我的疑问是,考虑到在 cassandra 中比较行键的过程,最好的“key_validation_class”是什么?
UTF8Type 的性能是否比 Int32Type 差?
目前,我正在使用一些连接值来将我的行键创建为 UTF8Type,但我担心这是一种不好的方法。
提前致谢。
【问题讨论】:
标签:
cassandra
database-performance
hector
【解决方案1】:
key_validation_class 只是对cassandra 的一个方便提示,用于对密钥强制执行验证标准。将其视为约束。 Cassandra 仅在内部使用字节。这不太可能导致任何性能问题。
“键名”的大小通常不是问题,只要它在合理的范围内(比如说 64-128 字节是绝对正常的)。
决定是使用 UTF 还是 Int32 更好,主要取决于对数据进行分区和执行范围切片的需要。
Cassandra 的主要优势是通过键查找 - 所以不要担心开头的键名。花更多时间设计能够获得正确设计决策的专栏。