Redis基础入门-redis-1

什么是 Redis

Redis(Remote Dictionary Server),即远程字典服务,是一个开源的使用C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API

Redis 实践

Redis 安装

yum install redis -y
systemctl start redis
systemctl enable redis

在线安装后直接使用systemctl启动。

Redis 配置

修改/etc/redis.conf 即可。

Redis 启动(离线)

进程方式(二进制)

nohup redis-server > redis.log 2>&1 &

守护进程方式(二进制)

修改/etc/redis.conf 中的 daemonize 为 yes 后,以 redis-server 方式启动。

Redis 的数据类型和基础操作

类型 添加 查询 删除 最大容量 备注
String set k v get k del k 一个键最大能存储 512MB 重复添加会覆盖历史数据
Hash hmset k f1 v1 f2 v2 hmget k f1 del k 每个 hash 可以存储 2^32-1 个键值对(大约 43 亿) 重复添加会覆盖历史数据
List lpush k v1 v2 lrange k 0 10 del k 每个 List 可以存储 2^32-1 个元素(大约 43 亿) 列表内数据可重复,按照插入顺序排序
Set sadd k v1 v2 smembers k del k 每个 Set 可以存储 2^32-1 个元素(大约 43 亿) 无序(通常按照插入顺序排序),集合内数据不可重复,重复添加无效,集合基于 Hash 实现,增删查复杂度为 O(1)
Zset zadd k s1 v1 s2 v2 zrangebyscore k 0 10(仅展示 0 到 10 分的值)zrange k 0 10(仅展示前 10 个 del k 每个 Zset 可以存储 2^32-1 个元素(大约 43 亿) 按照分数顺序排序(分数约小越靠前),其余属性类 Set

Redis-cli 中怎么展示中文

redis-cli --raw 以这种方式启动即可

连接远程 Redis 服务

redis-cli -h host -p port -a password

HyperLoglog&使用场景

HyperLoglog 是用来做基数统计的算法(非 redis 独有),其得益于优秀的算法可以以很小的内存计算出大数据的基数。对于相同的元素会去重,计算出的结果为近似结果,在大数据场景下我们可以接受这个误差,因为其拥有良好的性能。

pfadd 添加

# pfadd添加

以上,1 2 1 3 4 4 这几个元素中,去重后就剩下 4 个唯一的元素,所以在对其进行基数统计的时候,结果为 4

pfmerge 合并

对于两个 HLL 对象,我们可以将其合并,结果会取他们的并集。

# pfmerge合并

以上,qq 经过 HLL 算法后有 3 个元素,和 kk 的 4 个基数元素合并后将会有 7 个基数元素,经实践,结果无误。

使用场景

通常 HLL 用于全球注册用户统计,页面实时 UV,在线用户数等等。

版权声明:除特殊说明,博客文章均为phyger原创,依据CC BY-SA 4.0许可证进行授权,转载请附上出处链接及本声明。来自:https://u1s1.vip/archives/184
暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇