我试图将我的cassandra数据从一个集群转储到另一个集群,因为我正在使用sstableloader。
除了为我的二级索引列创建的数据文件之外,转储过程中的一切都很顺利。当我尝试转储它时,它会因“COLUMN FAMILY DOES NOT EXISTS”而失败。
我已经从源群集创建了架构。
我知道.db文件的格式为 keyspace-columnfamily-generation-number-Data.db ,但我的索引CF的.db文件将包含 keyspace-columnfamily- INDEX_NAME发生编号-Data.db 即可。因此,它正在搜索CF名称包括index_name。
如何使用sstableloader转储这些文件?
答案 0 :(得分:2)
您不应转储索引文件。如果目标集群中的模式定义与源集群相同,则目标集群将在加载SSTable后重现二级索引。您看到该消息的原因是因为引擎盖下的二级索引被定义为本地列族。
因此,转储“Data.db”文件,在目标集群中定义架构,加载sstables并重新启动。剩下的应该照顾你。