微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

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

这篇“Redis存储系统pika架构设计的方法是什么”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“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 相对较低,单服务器几十万,Redispika 的 3~5 倍。

访问延迟: Redis 应该在 1ms 以内;pika 延迟稍高,3ms 以内。

运维部署: Redis 支持单机主从和集群两种方式; pika支持两种方式部署。

适用场景

如果业务场景数据量比较大(> 50GB),数据可靠性要求高,那么 pika 可以解决您的问题。

场景1:大规模数据处理系统的中间结果存储

场景2:使用 Redis/Redis Cluster 做持久化存储的业务系统

场景3:大型分布式系统的元数据存储

架构设计

pika 可以通过配置文件中的 instance-mode 配置项,设置为 classic 和 sharding,来选择运行经典模式(Classic)还是分布式模式(Sharding)的 pika

  • 经典模式架构

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

经典模式(Classic): 即1主N从同步模式,1 个主实例存储所有的数据,N 个从实例完全镜像同步主实例的数据,每个实例支持多个 DBs。DB 认从 0 开始,pika 的配置项 databases 可以设置最大 DB 数量。DB 在 pika 上的物理存在形式是一个文件目录。

  • 分布式模式架构

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

分布式模式(Sharding): Sharding 模式下,将用户存储的数据集合称为 Table,每个 Table 切分成多个分片,每个分片称为 Slot,对于某一个 KEY 的数据由哈希算法计算决定属于哪个 Slot。将所有 Slots 及其副本按照一定策略分散到所有的 pika 实例中,每个 pika 实例有一部分主 Slot 和一部分从 Slot。在 Sharding 模式下,分主从的是 Slot 而不再是 pika 实例。Slot 在 pika 上的物理存在形式是一个文件目录。

以上就是关于“Redis存储系统pika架构设计的方法是什么”这篇文章内容,相信大家都有了一定的了解,希望小编分享内容对大家有帮助,若想了解更多相关的知识内容,请关注编程之家行业资讯频道。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐