Voldemort 是一个采用 Java 语言开发的分布式的Key-Value存储系统。

Voldemort is a distributed key-value storage system

主要特性:

1)Data is automatically replicated over multiple servers.

2)Data is automatically partitioned so each server contains only a subset of the total data

3)Server failure is handled transparently

4)Pluggable serialization is supported to allow rich keys and values including lists and tuples with named fields, as well as to integrate with common serialization frameworks like Protocol Buffers, Thrift, and Java Serialization

5)Data items are versioned to maximize data integrity in failure scenarios without compromising availability of the system

6)Each node is independent of other nodes with no central point of failure or coordination

7)Good single node performance: you can expect 10-20k operations per second depending on the machines, the network, and the replication factor

8)Support for pluggable data placement strategies to support things like distribution across data centers that are geographical far apart.

缓存数据可以自动在各个服务器节点之间同步复制。

每一个服务器的缓存数据被横向分割,因此是总缓存的一个子集。

严格保持缓存的一致性。

提供服务器宕机快速恢复方案。

可配置的数据存储引擎。

可配置的数据序列化方式。

每一个数据项都有版本标识,用来保证数据的完整性和可用性。

每一个缓存节点都是独立的,因此任何一个节点的故障都不会影响系统的正常运行。

Comparison to relational databases

Voldemort is not a relational database, it does not attempt to satisfy arbitrary relations while satisfying ACID properties. Nor is it an object database that attempts to transparently map object reference graphs. Nor does it introduce a new abstraction such as document-orientation. It is basically just a big, distributed, persistent, fault-tolerant hash table. For applications that can use an O/R mapper like active-record or hibernate this will provide horizontal scalability and much higher availability but at great loss of convenience. For large applications under internet-type scalability pressure, a system may likely consist of a number of functionally partitioned services or APIs, which may manage storage resources across multiple data centers using storage systems which may themselves be horizontally partitioned. For applications in this space, arbitrary in-database joins are already impossible since all the data is not available in any single database. A typical pattern is to introduce a caching layer which will require hashtable semantics anyway. For these applications Voldemort offers a number of advantages:

1)Voldemort combines in memory caching with the storage system so that a separate caching tier is not required (instead the storage system itself is just fast)

2)Unlike MySQL replication, both reads and writes scale horizontally

3)Data portioning is transparent, and allows for cluster expansion without rebalancing all data

4)Data replication and placement is decided by a simple API to be able to accommodate a wide range of application specific strategies

5)The storage layer is completely mockable so development and unit testing can be done against a throw-away in-memory storage system without needing a real cluster (or even a real storage system) for simple testing

原创不易,欢迎打赏,请认准正确地址,谨防假冒

【分布式缓存之Voldemort 介绍】相关推荐

  1. mysql 与gemfire的同步_(转)分布式缓存GemFire架构介绍

    1什么是GemFire GemFire是一个位于应用集群和后端数据源之间的高性能.分布式的操作数据(operational data)管理基础架构.它提供了低延迟.高吞吐量的数据共享和事件分发.Gem ...

  2. 分布式缓存GemFire架构介绍

    1什么是GemFire GemFire是一个位于应用集群和后端数据源之间的高性能.分布式的操作数据(operational data)管理基础架构.它提供了低延迟.高吞吐量的数据共享和事件分发.Gem ...

  3. 技术领导力: 深度访谈《深入分布式缓存》

    于君泽,蚂蚁金服支付核算技术部负责人.互联网金融业务近8年,电信业务8年经验.兴趣在高可用分布式架构应用,研发管理,内建质量等.维护公众号:技术琐话.<深入分布式缓存>一书联合作者,总策划 ...

  4. 分布式缓存Redis介绍

    分布式缓存Redis介绍      简介:讲解为什么要用缓存和介绍什么是Redis,新手练习工具          1.redis官网 https://redis.io/download        ...

  5. 深入分布式缓存_HTTP缓存的深入介绍:探索风景

    深入分布式缓存 可以缓存我 (Cache Me If You Can) About 2 years ago, I remember witnessing a reunion that had a pr ...

  6. 必备redis6教程-分布式缓存Redis6.X+高可用集群课程介绍-小滴课堂

    第五章 新版SpringBoot2.x整合Redis6客户端实战 第1集 分布式缓存Redis客户端讲解 简介:分布式缓存Redis客户端讲解 自带客户端 redis-cli 可视化工具 语言客户端: ...

  7. 本地缓存、服务器缓存、分布式缓存介绍

    缓存的意义 缓存存在的意义: 1.减轻数据库压力 2.提升接口的性能 3.缓解服务器压力(不用每次去请求资源): 4.提升性能(打开本地资源速度当然比请求回来再打开要快得多): 5.减少带宽消耗 例如 ...

  8. 分布式缓存开源框架Flasher介绍

    写在前面 今天给大家推荐款国内某一线电商平台Redis分布式缓存框架. 推荐理由: 日均访问量100亿.QPS:157W.包含57项业务. 也是工作3-5年以上的程序员必看的源码资料,千万别错过. F ...

  9. java 分布式缓存 开源_分布式缓存开源框架Flasher介绍-Go语言中文社区

    写在前面 今天给大家推荐款国内某一线电商平台Redis分布式缓存框架. 推荐理由: 日均访问量100亿.QPS:157W.包含57项业务. 也是工作3-5年以上的程序员必看的源码资料,千万别错过. F ...

  10. 分布式缓存灵魂十连,你能坚持几个?

    点击上方蓝色"方志朋",选择"设为星标" 回复"666"获取独家整理的学习资料! 目录 前言 目前工作中用到的分布式缓存技术有redis和m ...

最新文章

  1. php的declare命令
  2. httpclient base64 文件上传_文件上传下载
  3. PS图片后期之超简易造光调色方法
  4. 潜流式湿地计算_人工湿地计算书
  5. 爱立信将携手DOCOMO和英特尔构建5G测试环境
  6. python函数传值还是地址_python中给函数传参是传值还是传引用
  7. 地面指示标志_消防应急照明和疏散指示标志设置要求,图文详解
  8. Centos7:dubbo监控中心安装,配置和使用
  9. 内存溢出的危害_漏洞练习之网络编程与堆栈溢出技术
  10. 基于51单片机简易计算器LCD1602显示
  11. hive:窗口函数/开窗函数 OVER()(笔记)
  12. kaldi教程_赠书 | 全球稀缺的Kaldi学习资料,《Kaldi语音识别实战》给补上了
  13. 什么是云原生架构?云原生和应用上云不是一码事!
  14. 仿携程oracle课程设计,一个不错的仿携程自定义数据下拉选择select
  15. C#调用不同.cs文件下数据的方法
  16. 中国科学技术大学2021计算机考研分数线,【中国科学技术大学】2021考研复试分数线3月13日已公布!速看!...
  17. Android App 链式唤醒分析
  18. Typecho重大漏洞
  19. 南京软世通科技11-19笔试题
  20. 命令rpm -qa | grep xxxx

热门文章

  1. 852955-00-1,Cyclo(D-Trp-Tyr),大环化合物
  2. 云e办学习笔记(二十七)邮件自动发送功能实现
  3. cascading基本概念
  4. istio系列:第六章-Telemetry遥测配置
  5. Idear部署web项目过程
  6. 服务器的远程无法断开,远程桌面客户端断开连接且无法重新连接到同一会话
  7. 曜石科技宣布获得千万级天使轮投资,全方面布局电竞产业链...
  8. 【2021】IOS证书(.p12)和描述文件(.mobileprovision)申请
  9. pyhton前景之个人愚见
  10. php phalcon 中文手册,基础教程 · Phalcon 3.4中文手册 · 看云