如果在特定列族上我稍后在列上添加索引,它是否也会索引历史数据或添加索引后现在出现的数据。
在此中,Cassandra DB 在将列更新为二级索引后何时索引数据 接受的答案说它将仅索引创建索引后插入的数据。
我尝试在列上创建带有索引的 CF。(我使用的是 Cassandra 1.0.7)
使用比较器=UTF8Type 和 column_metadata=[{column_name: full_name, validation_class: UTF8Type}, {column_name:birth_date, validation_class: LongType, index_type: KEYS}, {column_name: state, validation_class: UTF8Type, index_type: KEYS}] 创建列族用户;
添加了一些数据,然后做了
通过删除索引 users.birth_date 删除索引,然后通过更新 CF 将其添加回来
使用比较器 = UTF8Type 和 column_metadata = [{column_name:full_name,validation_class:UTF8Type},{column_name:birth_date,validation_class:LongType,index_type:KEYS},{column_name:state,validation_class:UTF8Type,index_type:KEYS}] 更新列族用户;
然后再次添加一些数据
但是当我查询birth_data 时,我也得到了历史数据吗?
有人可以解决我对此的困惑吗?是否有两种方法可以创建索引,一种使用历史数据,一种没有?