Cassandra是否支持分片? [英] Does Cassandra support sharding?

查看:631
本文介绍了Cassandra是否支持分片?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

Apache Cassandra 是否支持分片?

歉意此问题必须似乎微不足道,但我似乎找不到答案。我已经读过Cassandra在GAE的大桌子之后被部分建模了,它大规模拆分。但是我目前在Cassandra上发现的大多数文档似乎暗示Cassandra不会在多个机器上水平分区数据,而是支持许多重复的机器。这意味着Cassandra是一个很好的高可用性读取,但如果写入量变得非常高,最终会崩溃。

Apologize that this question must seem trivial, but I cannot seem to find the answer. I have read that Cassandra was partially modeled after GAE's Big Table which shards on a massive scale. But most of the documentation I'm currently finding on Cassandra seems to imply that Cassandra does not partition data horizontally across multiple machines, but rather supports many many duplicate machines. This would imply that Cassandra is a good fit high availability reads, but would eventually break down if the write volume became very very high.

推荐答案

Cassandra在节点之间进行分区(因为如果你不能拆分它,你不能扩展它)。 Cassandra集群的所有数据被划分到环上,并且环上的每个节点负责一个或多个键范围。您可以控制分区器(例如,随机,有序)以及根据您的要求,应该复制一个键/列的环上有多少个节点。

Cassandra does partition across nodes (because if you can't split it you can't scale it). All of the data for a Cassandra cluster is divided up onto "the ring" and each node on the ring is responsible for one or more key ranges. You have control over the Partitioner (e.g. Random, Ordered) and how many nodes on the ring a key/column should be replicated to based on your requirements.

相当不错的概述。 基本架构

另外,我强烈推荐阅读Dynamo白皮书。虽然Cassandra在很多方面与Dynamo不同,但在概念上,他们来自同一根。查看: Dynamo白皮书

Also, I highly recommend reading the Dynamo white paper. While Cassandra is different than Dynamo in many ways, conceptually they stem from the same roots. Check it out: Dynamo White Paper

这篇关于Cassandra是否支持分片?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆