Apache Cassandra 2.1.17存储路径

Apache Cassandra 2.1.17存储路径,cassandra,cassandra-2.1,Cassandra,Cassandra 2.1,正在安装新的cassandra 2.1.17群集,当我创建我的应用程序KS时,我看到创建的路径如下: <data directory>/<KS>/<CF>-<some-large-key> 埃塔。我们当前的2.1.15集群(w/KS在v.2.0.x下创建)只使用了: <data directory>/<KS>/<CF> // 想知道为什么会有差异吗?这是来自版本3文档,但原则也适用于2.1(无法真正获得go

正在安装新的cassandra 2.1.17群集,当我创建我的应用程序KS时,我看到创建的路径如下:

<data directory>/<KS>/<CF>-<some-large-key>
埃塔。我们当前的2.1.15集群(w/KS在v.2.0.x下创建)只使用了:

<data directory>/<KS>/<CF>
//

想知道为什么会有差异吗?

这是来自版本3文档,但原则也适用于2.1(无法真正获得google存储的2.1版本。因为datastax设置了一个robots文件):

让我们把它分解一下:

/data/data/ks1/cf1-5be396077b811e3a3ab9dc4b9ac088d/la-1-big-Data.db 
表示数据文件

ks1表示用于区分流式数据或批量加载数据的键空间的键空间名称

在本例中,将十六进制字符串5be396077b811e3a3ab9dc4b9ac088d追加到表名中,以表示唯一的表ID

为什么要使用唯一的表ID

当一个表(列族)的模式有更新时,节点首先必须同意一个新表的模式,他们使用这个uuid来知道模式表存储在哪个版本。您可以使用以下查询交叉检查cf名称中的UUID:

select keyspace_name, table_name, id from system_schema.tables;

谢谢你的解释!
select keyspace_name, table_name, id from system_schema.tables;