上周,我刚经历过Cassandra的速成类,从Thrift API到CQL,再到 super 列,后来我了解到我不应该使用它们,而应该使用用户复合键。
我现在正在尝试CQL3,似乎无法再插入未在架构中定义的列,或者无法在select *
中查看这些列
我是否缺少在CQL3中启用此功能的选项,还是期望我定义架构中的每一列(这违背了宽而灵活的行的目的,恕我直言)。
最佳答案
是的,CQL3确实要求在使用前声明列。
但是,您可以根据需要执行任意多个ALTER,而不会导致锁定或性能下降。
也就是说,C * 1.2中的Map可以更好地为您在早期C *版本中使用“动态列”的大多数地方提供服务。
关于cassandra - CQL3现在是否需要Cassandra的架构?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12792040/