[新手]关于Cassandra的个人备忘录
对于卡桑德拉的个人备忘录
首先
关于Cassandra
Facebook为了管理自己的大规模数据库而开发了这个系统。现在它是一个由Apache Foundation管理的开源NoSQL数据库。
Digg选择Cassandra的原因。
每个系统都有各自的优点和缺点,但Cassandra集合了一切的优势。它提供基于列的数据存储,因此相比普通的键值存储,它具有更多的结构。它在分布式、高度可用的对等集群中运行。
为了理解Cassandra,最重要的是什么。
集群中的节点采用了环形结构(一致性哈希算法),并分配了令牌。
入门资料
「Cassandra简介」(这是2010年6月17日在帕洛阿尔托举办的硅谷云计算团体的活动中使用的资料)
「Cassandra Wiki」不仅包含Cassandra官方文档的翻译,还集合了指向主要资源的链接。
卡桑德拉相关术语
为实现结果的整合性而建立的机制
八卦协议
通过节点之间的信息交换,使聚类内的所有节点都能了解到最终节点的状态的算法。
通过判断数据的新鲜度,并逐渐通过邻近节点传播到拥有比自身更新信息的地方。
读修复
当读取的数据不一致时,需要对数据进行修正。
暗示的手递
当原本应保持数据的节点未响应时,托管数据至其他节点。
一致性级别
根据不同的水平,可以选择以速度为优先还是以一致性为优先。
分片
将数据分散存储在多个数据库中进行操作。
种子
设置用于执行集群交互的服务器。
复制放置策略和复制放置因素
…战略即为其名。…因素指定了副本数量。
命令
用中文原生方式转述以下内容,只提供一个选项:
Cassandra-cli指令
nodetool命令
数据库重配置、服务器监控、备份/恢复
负载均衡命令
数据展开,将数据移动到其他节点。
相关的普通知识(术语)
非SQL
产品
例如,MongoDB、亚马逊的DynamoDB、谷歌的Bigtable、Apache Hadoop、雅虎的HBase、Facebook的Cassandra、LinkedIn的Voldemort等等。
特点
通过省略RDB所配备的功能,并将使用目的和范围限制在一定程度,以确保其具备与节点数量直接成比例的性能、与节点数量无关的运营成本、灵活伸缩和强大的容错能力。
键值对型(数据模型)
将用于识别每个组的信息称为“键”(Key),并将另一种信息称为“值”(Value)。键值数据库是用于存储这种“键”和“值”的组合的数据库。
行指向和列指向
最近热门的“列式数据库”是一种怎样的数据库结构?