您好,欢迎访问一九零五行业门户网

Redis存储系统Pika架构设计的方法是什么

pika 是 360 基础架构团队和 dba 团队联合研发的一款高效、稳定、简单可依赖的开源的 nosql 数据库产品。完全兼容 redis 协议,支持 5 种数据结构(string,hash,list,set,zset),数据持久化到 rocksdb,相比于 redis 内存的存储方式,能极大减少服务器资源的占用,增强了数据的可靠性。可以采用单机和集群两种模式部署。pika 项目 2015 年启动,随后在 github 上开源,现有 3700 stars,35个 contributors,社区有大量的线上业务使 pika。
对比 redis存储容量: redis 存储到内存,硬件成本高,宕机恢复延迟高;pika 借用 rocksdb 存储到磁盘,单台服务器所容纳的数据量是 redis 的几十倍,宕机恢复速度快。
吞吐量: redis qps 更高,单台服务器百万级的 qps;pika qps 相对较低,单服务器几十万,redis 是 pika 的 3~5 倍。
访问延迟: redis 应该在 1ms 以内;pika 延迟稍高,3ms 以内。
运维部署: redis 支持单机主从和集群两种方式; pika 也支持两种方式部署。
适用场景如果业务场景数据量比较大(> 50gb),数据可靠性要求高,那么 pika 可以解决您的问题。
场景1:大规模数据处理系统的中间结果存储
场景2:使用 redis/redis cluster 做持久化存储的业务系统
场景3:大型分布式系统的元数据存储
架构设计pika 可以通过配置文件中的 instance-mode 配置项,设置为 classic 和 sharding,来选择运行经典模式(classic)还是分布式模式(sharding)的 pika。
经典模式架构
经典模式(classic): 即1主n从同步模式,1 个主实例存储所有的数据,n 个从实例完全镜像同步主实例的数据,每个实例支持多个 dbs。pika 的配置项 databases 允许您设置可以创建的最大 db 数量,默认从 0 开始。db 在 pika 上的物理存在形式是一个文件目录。
分布式模式架构
分布式模式(sharding): sharding 模式下,将用户存储的数据集合称为 table,每个 table 切分成多个分片,每个分片称为 slot,对于某一个 key 的数据由哈希算法计算决定属于哪个 slot。将所有 slots 及其副本按照一定策略分散到所有的 pika 实例中,每个 pika 实例有一部分主 slot 和一部分从 slot。在 sharding 模式下,slot 被用来分主从,而不再使用 pika 实例。slot 在 pika 上的物理存在形式是一个文件目录。
以上就是redis存储系统pika架构设计的方法是什么的详细内容。
其它类似信息

推荐信息