Twitter开源的通用性数据切分中间件Gizzard

十二月 6, 2011 by · Leave a Comment 

Gizzard是Twitter在11年4月份新推出的一个通用数据切分中间件,在Twitter的架构中占用重要的作用。

从图中看到Gizzard主要用于在MYSQL之上,作用是实现数据切分。但目前据说 Gizzard最主要的作用在用于在memcache和redis上。众所周知,memcache和redis本身缺少(或者实现较弱)主从同步机制。在 这里Gizzard的作用就不仅仅是数据切分,还有备份多写、异常队列等多项功能。

官方介绍如下:

Gizzard: a library for creating distributed datastores

按照官方翻译是:一个用于创建分布式存储数据的库。但从功能上来说,Gizzard更适合叫做一个通用的数据切分中间库。如下图所示:

Gizzard的主要功能如下:
1、支持不同的底层数据存储。Redis/Memcache/Mysql等都支持,原则上只要写操作幂等(也就是写操作与顺序无关)则都可以支持。
2、通用数据拆分支持。支持一致性hash、主键mod、自定义拆分函数等多种方式。
3、通过replication tree实现不同节点数据的备份机制。
4、容错机制。在一台机器出问题后,会自动保存更新延迟队列,在恢复后重新执行,从而保证一致性。
5、快速的迁移。

开源地址:https://github.com/twitter/gizzard

原文转自:http://www.xiuwz.com/site/tech-ope-gizzard/

原创文章,转载请注明: 文章地址Twitter开源的通用性数据切分中间件Gizzard

本文标题:Twitter开源的通用性数据切分中间件Gizzard
本文链接:http://www.mysqlops.com/2011/12/06/twitter-gizzard.html
订阅本站:http://feed.mysqlops.com   转载请注明来源,如果喜欢本站可以Feed 订阅本站。

About Eugene
心态: 数据库领域专心吃草,耕地和挤奶的牛! 格言: Don't always complain,remember this:No pains,No gains! 毅力: 坚持梦想的方向终身不改变,永生为此奋斗!

Speak Your Mind

Tell us what you're thinking...
and oh, if you want a pic to show with your comment, go get a gravatar!

知识共享许可协议
作品采用知识共享署名 2.5 中国大陆许可协议进行许可。