最近想深入研究一下Cassandra,而Cassandra没有中文文档,仅有的一些参考书都是0.7/0.6版本的.因此有个计划,一边学习文档(地址:http://www.datastax.com/documentation/cassandra/1.2/webhelp/index.html),一边有选择的翻译部分内容并且加上自己的解读.英语一直是我的弱项,因此,也希望借此机会锻炼一下自己的英语.因为一直在网上找不到很好的Cassandra教程,所以希望能有所贡献.出错难免,请大家帮忙指正~也借此机…
三.集合列 CQL 3 引入了一下集合类型: •set •list •map 在关系型数据库中,允许用户拥有多个email地址,你可以创建一个email_addresses表与users表存在一个多对一关系.CQL 3能够处理经典的多个电子邮件地址的使用情况,其他使用的情况下可以通过定义的列达到集合的效果.利用集合来解决多个邮件地址的问题是方便和直观的. 集合类型的另一个用途被证明可以使用音乐服务作为例子. 四.往表中增加一个集合 上面说的音乐服务的例子包括给歌曲标记标签.从一个关系的角度看,你…
参考文档:http://www.datastax.com/documentation/cql/3.0/webhelp/index.html#cql/ddl/ddl_anatomy_table_c.html#concept_ds_qqw_1dy_zj 在一个层次上来说,Cassandra中的表.行和列可以认为和关系型数据库是相同的.在SQL和CQL中你可以定义表(包含已经定义好的行和与之相关的数据类型),你可以创建索引去增加查询效率. 然而,一个重要的不同是因为Cassandra是被设计来分组成为…
参考文档:http://www.datastax.com/documentation/cql/3.0/webhelp/index.html#cql/ddl/ddl_primary_index_c.html#concept_ds_vk2_dyz_zj 索引提供了一种手段通过属性来获取 Cassandra中数据而不是分区键.好处是提供了快速的.高效的按照指定条件找出数据的查询. 列的值的索引在一个与值分开的.隐藏的表中.Cassandra有很多技术用来防止出现不良的情况——数据可能检索不正确,查询的…
参考文档:http://www.datastax.com/documentation/cassandra/1.2/webhelp/index.html#cassandra/dml/dml_config_consistency_c.html 一致性指的是怎样更新到最新并且在所有副本节点上同步Cassandra的一行数据.Cassandra通过提供可以调节的数据一致性扩充了最终一致性的观点,对于任何读取或写入操作,客户端决定请求数据的一致性. 除了可配置的一致性以外,Cassandra通过很多的bu…
参考文档:http://www.datastax.com/documentation/cassandra/1.2/webhelp/index.html#cassandra/architecture/architectureIntro_c.html Cassandra是一个Nosql数据库,是用来通过多节点来处理大数据的,并且没有单点故障.也就说,即使一个节点坏了整个系统仍然能够正常运行.Cassandra架构的前提或者说在设计架构的时候就考虑到系统故障和者硬件故障是可能发生的.为了处理这个问题,…
参考文档:http://www.datastax.com/documentation/cassandra/1.2/webhelp/index.html#cassandra/dml/dml_schema_changes_c.html#concept_ds_rdc_lvr_gk 在Cassandra1.2及之后,大量的模式变化可以同时发生在一个集群中,而节点之间没有任何模式的分歧.例如,如果一个客户端设置一个列为integer而另一个客户端设置为text,一个或另一个动作会立马生效.哪一个动作会生效…
参考文档:http://www.datastax.com/documentation/cassandra/1.2/webhelp/index.html#cassandra/dml/dml_about_reads_c.html#concept_ds_vrp_4qx_zj 不像大部分数据库.Cassandra从固态硬盘中平行随机读取数据性能很好,具有极低的延迟.不推荐使用常见的硬盘.Cassandra读和写一样,数据是被key分隔开,去除了很多关系型数据库需要用到的复杂查询. 首先,Cassandr…
参考文档:http://www.datastax.com/documentation/cassandra/1.2/webhelp/index.html#cassandra/architecture/architecturePartitionerAbout_c.html#concept_ds_dwv_npf_fk 一个分区器决定了数据是怎样分布在集群中的节点上的.通常,一个分区器就是一个hash函数去计算每一行键值的hash值——token.每一行数据通过一个键值唯一标识并且在集群中按token分…
参考文档:http://www.datastax.com/documentation/cassandra/1.2/webhelp/index.html#cassandra/dml/dml_about_transactions_c.html#concept_ds_j1p_m5x_zj Cassandra不提供完整的符合ACID特性的事务,ACID事务是关系型数据库系统的标准事务行为: •原子性 在事务中每一个步要么成功或者回滚整个事务. •一致性 一个事务不能使数据库处于不一致的状态. •隔离性…