高效缓存之王

好记忆不如烂笔头,能记下点东西,就记下点,有时间拿出来看看,也会发觉不一样的感受.

目录

横向比较

概括:

内存比较

性能对比


Redis 和 Couchbase 都是基于内存的数据存储系统。Couchbase 是高性能,高伸缩性和高可用的分布式缓存系统;Redis 是一个开源的内存数据结构存储系统。

横向比较

类别 COUCHBASE REDIS
类别 NoSQL NoSQL
网站 www.couchbase.com redis.IO
许可证 GFDLApache许可证2Couchbase公司企业许可协议:免费版Couchbase公司社区版许可协议 BSD的许可证
设计
数据库模型 键值无模式面向文档NoSQL的 键值无模式发布/订阅
数据存储 易失性存储器文件系统 易失性存储器文件系统
嵌入
产品特点
查询语言 memcached协议 API calls Lua
数据类型 JSON 数据结构
有条件的条目更新 是的 是的
MAP和REDUCE 是的
UNICODE 是的 是的
TTL 是的 是的
压缩 是的 是的
完整性
诚信示范 MVCC
原子 是的 是的
一致性 是的 是的
隔离 是的 是的
耐用性(数据存储) 是的 是的
交易 是的
参照完整性
版本控制 是的
锁定模式 乐观锁悲观锁 锁定Free模特儿
索引
二级索引 是的
组合键 是的
全文搜索 是的
地理空间索引 是的
图支持
分配
横向可扩展性 是的 是的
复制 是的 是的
复制模式 多主复制 主从复制
分片 是的
无共享架构 是的 是的
限制
值的大小最大。 20 MB 512 MB
系统要求
操作系统 Ubuntu

red hat

windows

Mac OS X

Linux

* NIX

windows

Mac OS X

本机驱动程序 Beanshell
PHP
Perl
C#
Ruby
Go
JavaScript
C++
Java
Python
Erlang
C
Actionscript 3.0
C#
C++
Clojure
Common Lisp
D Lang
Dart
Erlang
Fancy
Go
Haskell
Haxe
io
Java
JavaScript
Lua
Objective-C
Perl
PHP
Pure Data
Python
Ruby
Scala
Scheme
Smalltalk
Tcl
最低内存 2 MB
架构
程序设计语言 C
C++
Erlang
Ç
更多
描述 非常灵活的高性能key-value/document存储,但相当慢,支持索引。 在内存中的数据结构存储
多用户系统 是的 是的
软件分发 软件包管理系统 压缩包软件包管理系统
对象 – 关系映射(ORM) 是的 是的
文档级 ★★★★★ ★★★★★
REST风格
分布式计数器 是的
免费使用 有条件的 是的
活跃 是的 是的
数据库连接池 是的 是的
实时分析 是的 是的
社区主导型 基本的
WSDL
WEB界面 是的
在线备份 是的
基于功能的索引
密钥长度最大 250
登录 是的 是的
实施的灵活性 (67%的全球投票) (50%的全球投票)
下载 www.couchbase.com /download redis.IO /download
备份功能 基本的
查询缓存
易于使用 ★★★★☆ ★★★★★
就地更新 是的
免费用于商业用途 是的 是的
排序 是的 是的
皑皑的收藏 是的
可调的担忧写 是的 是的
阅读喜好 无✏
运算/秒 160 000
JSON 是的 是的
灵活的表(架构) 是的
重降低 是的
代码行 30 K时
事件驱动架构 是的
管道汇聚 是的
弹簧数据支持 是的
类型 COUCHBASE REDIS的

概括

       Redis 相比 Couchbase 来说,拥有更多的数据结构和并支持更丰富的数据操作,通常在 Couchbase 里,你需要将数据拿到客户端来进行类似的修改再 set 回去(你需要先先通过 get 方法从服务器读取数据文档,并将文档反序列化为 json 对象,之后修改 json 对象对应属性,再通过 set 方法将数据写入服务器,序列化后进行存储)。这大大增加了网络 IO 的次数和传输中的数据体积。在 Redis 中,这些复杂的操作通常和一般的 GET/SET 一样高效。

内存比较


使用简单的 key-value 存储的话,Couchbase 的内存利用率更高,而 Redis 采用 hash 结构来做 key-value 存储,由于其组合式的压缩,其内存利用率会高于 Couchbase。所以,如果需要缓存能够支持更复杂的数据结构和更频繁数据的部分更新操作,那么 Redis 会是不错的选择。

性能对比

由于 Redis 只使用单核,而 Couchbase 可以使用多核,所以平均每一个核上 Redis 在存储小数据时比 Couchbase 性能更高。而在 100k 以上的数据中,Couchbase 性能要高于 Redis,虽然 Redis 最近也在存储大数据的性能上进行优化,但是比起 Couchbase,还是稍有逊色。

至于其他(数据类型,效率,集群,分布式等的信息,可以去官网看),可去官网一探究竟!
redis: https://redis.io/     http://www.redis.cn/
couchbase : https://www.couchbase.com/ 

猜你喜欢

转载自blog.csdn.net/supingemail/article/details/112802688