我正在寻找具有以下(首选)属性的键值数据存储
我正在尝试构建一个分布式任务队列,我想知道是否有任何数据存储具有以下部分或全部属性。我希望拥有一个完全分散的、多节点/多主自复制数据存储集群,以避免任何单点故障。
Essential
- 支持 Python pickled 对象作为 Value。
- 执着的。
更多,更好,按重要性降序排列(我不期望任何数据存储满足所有标准。:-))
- 分布式。
- 支持跨多个节点的同步复制。
- 在多主配置中运行/可以在多个节点上运行。
- 数据存储集群公开为单个服务器。
- 循环访问/选择节点以进行读/写操作。
- 不错的Python客户端。
- 支持 get/put 和复制中的原子性。
- 自动故障转移
- 体面的文档和/或活跃/有帮助的社区
- 非常成熟
- 体面的读/写性能
任何建议将不胜感激。
I am trying to build a distributed task queue, and I am wondering if there is any data store, which has some or all of the following properties. I am looking to have a completely decentralized, multinode/multi-master self replicating datastore cluster to avoid any single point of failure.
Essential
- Supports Python pickled object as Value.
- Persistent.
More, the better, In decreasing order of importance (I do not expect any datastore to meet all the criteria. :-))
- Distributed.
- Synchronous Replication across multiple nodes supported.
- Runs/Can run on multiple nodes, in multi-master configuration.
- Datastore cluster exposed as a single server.
- Round-robin access to/selection of a node for read/write action.
- Decent python client.
- Support for Atomicity in get/put and replication.
- Automatic failover
- Decent documentation and/or Active/helpful community
- Significantly mature
- Decent read/write performance
Any suggestions would be much appreciated.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
Cassandra(由 facebook 开源)几乎拥有所有这些属性。有多个 Python 客户端,包括 pycassa。
编辑添加:
Cassandra 是完全分布式、多节点 P2P,具有可调的一致性级别(即您的复制可以是同步或异步或两者的混合)。客户端可以连接到任何服务器。故障转移是自动的,并且可以动态添加新服务器以实现负载平衡。 Cassandra 已被 Facebook 等公司用于生产环境。有一本奥莱利的书。写入性能极高,读取性能也很高。
Cassandra (open-sourced by facebook) has pretty much all of these properties. There are several Python clients, including pycassa.
Edited to add:
Cassandra is fully distributed, multi-node P2P, with tunable consistency levels (i.e. your replication can be synchronous or asynchronous or a mixture of both). Clients can connect to any server. Failover is automatic, and new servers can be added on-the-fly for load balancing. Cassandra is in production use by companies such as Facebook. There is an O'Reilly book. Write performance is extremely high, read performance is also high.