其他
Redis 的各项功能解决了哪些问题?(1024程序员节快乐)
Redis 是一个基于 BSD 开源的项目,是一个把结构化的数据放在内存中的一个存储系统,你可以把它作为数据库,缓存和消息中间件来使用。同时支持 strings,lists,hashes,sets,sorted sets,bitmaps,hyperloglogs 和 geospatial indexes 等数据类型。它还内建了复制,lua 脚本,LRU,事务等功能,通过redis sentinel 实现高可用,通过 redis cluster 实现了自动分片。以及事务,发布/订阅,自动故障转移等等。
1. 从零开始
2. 基于本机内存的缓存
3. 服务端的 Redis
3.1 持久化(Persistence)
虽然可以把 Redis 服务器重新上线,但是由于内存的数据丢失,造成了缓存雪崩,API 服务器和数据库的压力还是一下子就上来了。所以这个时候 Redis 的持久化功能就派上用场了,可以缓解一下缓存雪崩带来的影响。
3.2 哨兵(Sentinel)和复制(Replication)
3.3 集群(Cluster)
4. 客户端的 Redis
4.1 数据类型
string:最基本的数据类型,二进制安全的字符串,最大512M。
list:按照添加顺序保持顺序的字符串列表。
set:无序的字符串集合,不存在重复的元素。
sorted set:已排序的字符串集合。
hash:key-value 对的一种集合。
bitmap:更细化的一种操作,以 bit 为单位。
hyperloglog:基于概率的数据结构。
4.2 事务
4.3 Lua 脚本
4.4 管道
4.5 分布式锁
SET resource_name my_random_value NX PX 30000
if redis.call("get",KEYS[1]) == ARGV[1] then
return redis.call("del",KEYS[1])
else
return 0
end
总结
参考
作者:blackheart 地址:cnblogs.com/linianhui/p/7792512.html
深入理解HBase Memstore
Hadoop 数据迁移用法详解
Hbase修复工具Hbck
数仓建模分层理论
一文搞懂Hive的数据存储与压缩
大数据组件重点学习这几个