-
Notifications
You must be signed in to change notification settings - Fork 1.2k
pika 介绍
pika 是DBA和基础架构组联合开发的类Redis 存储系统,所以完全支持Redis协议,用户不需要修改任何代码,就可以将服务迁移至pika。 同时DBA团队还提供了迁移工具, 所以户不会感知这个迁移的过程,迁移是平滑的。
pika相对于redis,最大的不同就是pika是持久化存储,数据存在磁盘上,而redis是内存存储,由此不同也给pika带来了相对于redis的优势和劣势
容量大:Pika没有Redis的内存限制, 最大使用空间等于磁盘空间的大小 加载db速度快:Pika 在写入的时候, 数据是落盘的, 所以即使节点挂了, 不需要rbd或者oplog,pika 重启不用加载所有数据到内存就能恢复之前的数据, 不需要进行回放数据操作。 备份速度快:Pika备份的速度大致等同于cp的速度(拷贝数据文件后还有一个快照的恢复过程,会花费一些时间),这样在对于百G大库的备份是快捷的,更快的备份速度更好的解决了主从的全同步问题
由于Pika是基于内存和文件来存放数据, 所以性能肯定比Redis低一些, 但是我们一般使用SSD盘来存放数据, 尽可能跟上Redis的性能。
从以上的对比可以看出, 如果你的业务场景的数据比较大,Redis 很难支撑, 比如大于50G,或者你的数据很重要,不允许断电丢失,那么使用Pika 就可以解决你的问题。 而在实际使用中,pika的性能大约是Redis的50%。
目前pika在线上部署并运行了20多个巨型(承载数据与redis相比)集群 粗略的统计如下: 当前每天承载的总请求量超过100亿 当前承载的数据总量约3 TB
开发需要做的: 开发不需要做任何事,不用改代码、不用替换driver(pika使用原生redis的driver),什么都不用动,看dba干活就好 dba需要做的:
- dba迁移redis数据到pika
- dba将redis的数据实时同步到pika,确保redis与pika的数据始终一致
- dba切换lvs后端ip,由pika替换redis
然而不会
那当然
- 安装使用
- 支持的语言和客户端
- 当前支持的Redis接口以及兼容情况
- 配置文件说明
- 数据目录说明
- info信息说明
- 部分管理指令说明
- 差异化命令
- Pika Sharding Tutorials
- Pika订阅
- 配合sentinel(哨兵)实现pika自动容灾
- 如何升级到Pika3.0
- 如何升级到Pika3.1或3.2
- Pika多库版命令、参数变化参考
- Pika分片版本命令
- 副本一致性使用说明
- Pika内存使用
- Pika最佳实践
- 整体架构
- 线程模型
- 全同步
- 增量同步
- 副本一致性
- 快照式备份
- 锁的应用
- nemo存储引擎数据格式
- blackwidow存储引擎数据格式
- Pika源码学习--pika的通信和线程模型
- Pika源码学习--pika的PubSub机制
- Pika源码学习--pika的命令执行框架
- Pika源码学习--pika和rocksdb的对接
- pika-NoSQL原理概述
- pika在codis中的探索
- Pika 笔记
- pika 主从同步原理