数据库随笔2-Redis概述
2016-10-11 14:09
155 查看
存储这块,各有专长:
关系代数的RDB,发展了很多年,很多成熟的产品和技术;K-V的redis,现在到了3.x,支持lua脚本、订阅、集群等;图形的neo4j,还有支持分布式的titan;文档数据库mongodb,换装wt引擎后更强劲;
还有hbase、cassandra等列式数据库,在大数据方向蛮火;最后,别忘了文件系统,nfs、fastdfs、gridfs等,好多东东,整吧,你已经上了贼船。
来张redis的图:
![](http://img.blog.csdn.net/20161011152136364?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
其实redis的核心就是内存存储、以及大量应用了map这种数据结构,虽说达不到O(1),但内存会肯快,相比网络IO;
数据结构方面,相比memcache丰富得多,链表、rehash的Map、集合、还有压缩列表,好处是现在内存更便宜 了;
对外功能方面,支持RDB、AOF日志持久化,注意redis的日志不保证事务;主从复制,感觉类似mysql的binlog复制;哨兵sentinel,那个选举就是paxos的简化版;还支持无中心集群,据说用twemproxy的不少也;发布订阅、lua脚本, 功能很全的说;
有一点得强调,有说redis支持事务,但你muti的命令,执行出错也不会回滚,日志也不一定是及时写入,个人感觉没必要当RDB来看;
最后,redis支持watch,乐观并发那种锁,其实redis、mongodb虽然不严格支持RDB那种事务,但是也提供一些原子性的操作,别说你没用过。
详见redis设计与实现。
关系代数的RDB,发展了很多年,很多成熟的产品和技术;K-V的redis,现在到了3.x,支持lua脚本、订阅、集群等;图形的neo4j,还有支持分布式的titan;文档数据库mongodb,换装wt引擎后更强劲;
还有hbase、cassandra等列式数据库,在大数据方向蛮火;最后,别忘了文件系统,nfs、fastdfs、gridfs等,好多东东,整吧,你已经上了贼船。
来张redis的图:
其实redis的核心就是内存存储、以及大量应用了map这种数据结构,虽说达不到O(1),但内存会肯快,相比网络IO;
数据结构方面,相比memcache丰富得多,链表、rehash的Map、集合、还有压缩列表,好处是现在内存更便宜 了;
对外功能方面,支持RDB、AOF日志持久化,注意redis的日志不保证事务;主从复制,感觉类似mysql的binlog复制;哨兵sentinel,那个选举就是paxos的简化版;还支持无中心集群,据说用twemproxy的不少也;发布订阅、lua脚本, 功能很全的说;
有一点得强调,有说redis支持事务,但你muti的命令,执行出错也不会回滚,日志也不一定是及时写入,个人感觉没必要当RDB来看;
最后,redis支持watch,乐观并发那种锁,其实redis、mongodb虽然不严格支持RDB那种事务,但是也提供一些原子性的操作,别说你没用过。
详见redis设计与实现。
相关文章推荐
- 超轻型的数据库sqlite
- 推荐一个企业级跨数据库平台的数据库管理工具
- 运用工具优化数据库设计(Database Engine Tuning Advisor)
- java数据库设计中的14个技巧
- 解决韩文存入数据库之后取出乱码的问题
- 能drag和resize的DIV,目的是做一个类似于数据库视图设计器
- 使用表格显示数据库中的数据
- 用 Navicat for Oracle 管理 Oracle10g/11g 数据库
- 数据库历史记录的处理。
- mssql 数据库与日志的备份 与还原
- 1.有关ADO.NET和数据库操作浅谈
- 数据库故障总结【一】ORA-12638、ORA-12154、ORA-12514的解决方法
- android 升级数据库 修改表结构
- 数据库
- PowerDesigner生成数据库建表sql脚本
- 解决没有安装Qt 的mysql sql驱动插件情况下不能连接数据库的问题
- Mysql备份还原数据库之mysqldump实例及参数详细说明
- 用srvctl 命令停止RAC 数据库某个实例
- 一步步学习SPD2010--第六章节--处理数据源(7)--连接数据库
- MySQL学习笔记之四 有关数据库操作