Tendis 正在参加 2021 年度 OSC 中国开源项目评选,请投票支持!
Tendis 在 2021 年度 OSC 中国开源项目评选 中已获得 {{ projectVoteCount }} 票,请投票支持!
2021 年度 OSC 中国开源项目评选 正在火热进行中,快来投票支持你喜欢的开源项目!
2021 年度 OSC 中国开源项目评选 >>> 中场回顾
Tendis 获得 2021 年度 OSC 中国开源项目评选「最佳人气项目」 !
授权协议 GPL
开发语言 C/C++
操作系统 跨平台
软件类型 开源软件
开源组织 腾讯
地区 国产
投 递 者 白开水不加糖
适用人群 未知
收录时间 2020-12-21

软件简介

Tendis 是腾讯互娱 CROS DBA 团队 & 腾讯云数据库团队自主设计和研发的分布式高性能 KV 存储数据库,兼容 Redis 核心数据结构与接口,可提供大容量、低成本、强持久化的数据库能力,适用于兼容 Redis 协议、需要大容量且较高访问性能的温冷数据存储场景。Tendis 目前已经被应用到腾讯内、外部大型项目中。

集群架构

Tendis 使用去中心化集群架构,每个数据节点都拥有全部的路由信息,用户可以访问集群中的任意节点,并且通过 redis 的 move协议,最终路由到正确的节点。

每个 Tendis 节点维护各自的 slot 数据,任意两个 master 节点之间的 slot 不重复,master 节点之间支持基于 slot 的数据搬迁,主备节点之间通过 binlog 实现数据复制。

所有节点之间通过gossip协议进行通讯,类似于redis cluster的分布式实现,所有节点通过gossip协议通讯,可指定hashtag来控制数据分布和访问,使用和运维成本极低。

适用场景

  • 兼容Redis协议,需要大容量且较高访问性能的温冷数据存储场景

  • 适合成本为主要考虑因素,业务数据有高持久化要求的业务场景

  • 解决原生Redis固有的fork问题而预留部分内存问题

主要特性

  • 兼容Redis协议。完全兼容redis协议,支持redis主要数据结构和接口,兼容大部分原生Redis命令。
  • 持久化存储。使用rocksdb作为存储引擎,所有数据以特定格式存储在rocksdb中,最大支持PB级存储。
  • 去中心化架构。类似于redis cluster的分布式实现,所有节点通过gossip协议通讯,可指定hashtag来控制数据分布和访问,使用和运维成本极低。
  • 水平扩展。集群支持增删节点,并且数据可以按照slot在任意两节点之间迁移,扩容和缩容过程中对应用运维人员透明,支持扩展至1000个节点。
  • 故障自动切换。自动检测故障节点,当故障发生后,slave会自动提升为master继续对外提供服务。
  • Tendis冷热混合存储关键组件。得益于Tendis存版的设计和内部优化,Redis和Tendis存储版可以一起工作成为Tendis冷热混合存储。混合存储区非常适用于KV存储场景,并平衡了性能和成本。对于redis占用大量存储空间的冷数据降冷后可以最多减少80%的成本,同时保证了热数据在redis的访问性能。

项目规划

  • 持续完善对Redis的兼容性,包括支持LUA等命令

  • 进一步提升Tendis的性能,减少rocksdb本身的性能抖动问题。

  • 探索更多软硬结合方案,基于新硬件特性,发挥更大的数据库性能。

  • 支持异构数据互通能力,降低异构数据库的迁移成本

  • 运维管理能力全面提升,PASS能力持续增强

展开阅读全文

代码

的 Gitee 指数为
超过 的项目

评论

点击加入讨论🔥(10) 发布并加入讨论🔥
发表于开发技能专区
2020/12/22 09:07

腾讯开源分布式存储系统 Tendis,可完全兼容 Redis

近日,腾讯宣布开源一个与 Redis 协议完全兼容的高性能分布式存储系统 Tendis。 据悉,Tendis 是腾讯互娱 CROS DBA 团队 & 腾讯云数据库团队自主设计和研发的分布式高性能 KV 存储数据库,兼容 Redis 核心数据结构与接口,可提供大容量、低成本、强持久化的数据库能力,适用于兼容 Redis 协议、需要大容量且较高访问性能的温冷数据存储场景。Tendis 目前已经被应用到腾讯内、外部大型项目中。 据项目官方文档介绍,Tendis 的主要...

16
31
没有更多内容
加载失败,请刷新页面
点击加载更多
加载中
下一页
发表了博客
{{o.pubDate | formatDate}}

{{formatAllHtml(o.title)}}

{{parseInt(o.replyCount) | bigNumberTransform}}
{{parseInt(o.viewCount) | bigNumberTransform}}
没有更多内容
暂无内容
发表了问答
{{o.pubDate | formatDate}}

{{formatAllHtml(o.title)}}

{{parseInt(o.replyCount) | bigNumberTransform}}
{{parseInt(o.viewCount) | bigNumberTransform}}
没有更多内容
暂无内容
暂无内容
10 评论
57 收藏
分享
OSCHINA
登录后可查看更多优质内容
返回顶部
顶部