我正在尝试优化一些使用行键作为条件的cassandra查询。 所以我的疑问是,考虑到在cassandra中比较行键的过程,对它来说最好的'key_validation_class'是什么?
UTF8Type的性能是否比Int32Type差? 现在,我正在使用一些连接值来创建我的行键为UTF8Type,但我很害怕这是一个糟糕的方法。
提前致谢。
答案 0 :(得分:4)
key_validation_class 只是cassandra对密钥强制执行验证条件的便捷提示。把它想象成约束。 Cassandra仅在内部使用字节。这不太可能导致任何性能问题。
“密钥名称”的大小通常不是问题,只要它在合理的范围内(假设64-128字节是绝对正常的)。
决定使用UTF或Int32是否更好主要是需要分区数据和执行范围切片。
Cassandra的主要优势在于通过键查找 - 所以不必担心开头的关键名称。花更多时间设计合适的设计决策将会得到回报的专栏。