http://pycassa.github.io/pycassa/tutorial.html 这个是tutorial
Cassandra使用了GoogleBigTable的数据模型,与面向行的传统的关系型数据库不同,这是一种面向列的数据库,列被组织成为列族(Column Family),在数据库中增加一列非常方便。对于搜索和一般的结构化数据存储,这个结构足够丰富和有效。
提到Keyspace,可以把keyspace 想像成RDBMS中的database,而database 的层次应该是database>table>columns,当然keyspace也有相对应的层次结构keyspace>columnfamily>column, super column,所以在设计keyspace就像在设计database一样.
一个keyspace 就是一个数据库名称
Key value 模式 而不是关系模式一行存在一起。
Pycassa python + cassandra
(1) 链接keyspace
Pool =ConnectionPool('<keyspace_name>')
(2) 链接 一个列族(意思就是一张表 只不过这里是列的集合)
Col_fam = ColumnFamily(pool,'<ColumnFamily_name>')
(3) Insert
Col_fam.insert('<<key_name>,{'<col_name-A>': '<col_val-B'>}) key 对应A中的B值key主键名
Batch_insert() 多插入
(4) Get
Col_fam.get('key') return {col_name,col_val};
返回的是字典。<name, val> 对
A | B |
| | | |
A_val | B_val |
Aval - Bval 这个 key val对
服务器里面把所有的 Col_fam 都列出来的直接用就可以了