Nosql Cassandra文件结构-如何使用文件?
在使用Cassandra进行实验时,我观察到Cassandra会写入以下文件:Nosql Cassandra文件结构-如何使用文件?,nosql,cassandra,Nosql,Cassandra,在使用Cassandra进行实验时,我观察到Cassandra会写入以下文件: /.../cassandra/commitlog/CommitLog-<id>.log /.../cassandra/data/Keyspace1/Standard1-1-Data.db /.../cassandra/data/Keyspace1/Standard1-1-Filter.db /.../cassandra/data/Keyspace1/Standard1-1-Index.db /.../ca
/.../cassandra/commitlog/CommitLog-<id>.log
/.../cassandra/data/Keyspace1/Standard1-1-Data.db
/.../cassandra/data/Keyspace1/Standard1-1-Filter.db
/.../cassandra/data/Keyspace1/Standard1-1-Index.db
/.../cassandra/data/system/LocationInfo-1-Data.db
/.../cassandra/data/system/LocationInfo-1-Filter.db
/.../cassandra/data/system/LocationInfo-1-Index.db
/.../cassandra/data/system/LocationInfo-2-Data.db
/.../cassandra/data/system/LocationInfo-2-Filter.db
/.../cassandra/data/system/LocationInfo-2-Index.db
/.../cassandra/data/system/LocationInfo-3-Data.db
/.../cassandra/data/system/LocationInfo-3-Filter.db
/.../cassandra/data/system/LocationInfo-3-Index.db
/.../cassandra/system.log
什么是Cassandra文件结构?更具体地说,如何使用
数据
,提交日志
目录,以及数据
目录(数据
/过滤器
/索引
)中文件的结构是什么?对Cassandra节点的写入首先点击提交日志(顺序)。(然后Cassandra将值存储到特定于列族的内存数据结构(称为Memtables)。每当超过一个可配置阈值时,Memtables就会刷新到磁盘上。(1,memtable中的数据大小。2,对象数量达到一定限制,3,memtable的生存期到期。)
数据文件夹包含每个键空间的子文件夹。每个子文件夹包含三种文件:
- 数据文件:SSTable(命名法 从谷歌借来的)代表 排序字符串表,是一个 键值字符串对(按 钥匙)
- 索引文件:(键,偏移量)对(指向数据文件)
- :数据文件中的所有键
ColumnFamilyName-version-#-Data.db
ColumnFamilyName-version-#-Index.db
ColumnFamilyName-version-#-Filter.db
谢谢。如果您想更深入地了解/描述CassandraWay中使用的术语和命名法,深入了解并了解Cassandra的幕后活动,那么Cassandra wiki是一个很好的起点!
ColumnFamilyName-version-#-Data.db
ColumnFamilyName-version-#-Index.db
ColumnFamilyName-version-#-Filter.db