tikv专题

NoSQL-Tidis支持分布式事务,兼容redis协议,使用tikv存储引擎,可水平扩展

项目repo地址 GitHub - yongman/tidis: Distributed transactional NoSQL database, Redis protocol compatible using tikv as backend Tidis是分布式数据库,支持redis协议,多种数据结构支持,编写语言为golang。 Tidis工作角色类似于TIDB,提供协议转换和数据结构

TiKV 源码分析之 PointGet

作者:来自 vivo 互联网存储研发团队-Guo Xiang 本文介绍了TiDB中最基本的PointGet算子在存储层TiKV中的执行流程。 一、背景介绍 TiDB是一款具有HTAP能力(同时支持在线事务处理与在线分析处理 )的融合型分布式数据库产品,具备水平扩容或者缩容等重要特性。TiDB 采用多副本+Multi-Raft 算法的方式将数据调度到不同的机器节点上,具备较高的可靠性和容

TiDB存储引擎TiKV揭秘

目录 一、TiKV 介绍 二、RocksDB 三、TiKV 与 RocksDB 架构         3.1 用户数据保存         3.2 TiKV 中 Region 一、TiKV 介绍         TiKV 是一个分布式事务型的键值数据库,提供了满足 ACID 约束的分布式事务接口,并且通过 Raft 协议保证了多副本数据一致性以及高可用。TiKV 作为 TiD

三十分钟成为 Contributor | 为 TiKV 添加 built-in 函数

作者:吴雪莲 背景知识 SQL 语句发送到 TiDB 后经过 parser 生成 AST(抽象语法树),再经过 Query Optimizer 生成执行计划,执行计划切分成很多子任务,这些子任务以表达式的方式最后下推到底层的各个 TiKV 来执行。 图 1 如图 1,当 TiDB 收到来自客户端的查询请求 select count(*) from t where a

TiKV 源码解析系列文章(四)Prometheus(下)

作者: Breezewish 本文为 TiKV 源码解析系列的第四篇,接上篇继续为大家介绍 rust-prometheus。上篇 主要介绍了基础知识以及最基本的几个指标的内部工作机制,本篇会进一步介绍更多高级功能的实现原理。 与上篇一样,以下内部实现都基于本文发布时最新的 rust-prometheus 0.5 版本代码,目前我们正在开发 1.0 版本,API 设计上会进行一些简化,实现

想玩转分布式存储引擎?快来加入 TiKV 团队吧 | PingCAP 招聘季

上周我们推送了 TiDB 团队职位解读文章,当天就有很多简历砸来,我们深深感受到了小伙伴们的热情~ 趁热打铁,今天我司首席架构师唐刘老师将带大家了解一下传说中「面试通过率最低、难度最高」的研发团队——TiKV 团队。 Team 简介 我们 Team 主要负责 TiKV 的研发工作,下图是我们产品的架构图,大家可以看到,无论是 TiDB 还是 TiSpark,都是从 TiKV 存取数据的,

TiKV 源码解析系列文章(三)Prometheus(上)

作者:Breezewish 本文为 TiKV 源码解析系列的第三篇,继续为大家介绍 TiKV 依赖的周边库 rust-prometheus,本篇主要介绍基础知识以及最基本的几个指标的内部工作机制,下篇会介绍一些高级功能的实现原理。 rust-prometheus 是监控系统 Prometheus 的 Rust 客户端库,由 TiKV 团队实现。TiKV 使用 rust-prometheus 收

创造了不起丨TiKV Committer 的最快养成方法

一月末,一位大三的少年登上了知乎热榜,有数百万人浏览了迟先生的“凡尔赛”语录:“即使一周实习 3 天,我依然拿到了上海交通大学计算机学院第一的绩点。”迟先生是上海交通大学的计算机系学生,同时,他也有着另外一个身份:CNCF TiKV 项目有史以来最快晋升为 Committer 的开发者。在一个风和日丽的下午,他接受了我们的专访。 —— TiKV 优秀 Committer 迟先生(Alex Chi

【一场由TiCDC异常引发的GC不干活导致的Tikv硬盘使用问题】

当大家看到这个标题时,就已经知道了下面几点: (1)出了撒子问题?ok,集群所有KV节点存储硬盘使用80%以上,凌晨触发频繁报警,搞DB的兄弟们还能不能愉快的睡觉? (2)谁搞的?ok,GC不干活。 (3)真正导致问题的原因是啥?OK,TiCDC背锅。 完了,看到这里本篇文章就基本介绍完了,会不会被劝退?但是老铁千万别走,且听我将细节娓娓道来,后面有“干货”,我会说明我到底做了啥子操作降低

TiKV 源码解析系列文章(十八)Raft Propose 的 Commit 和 Apply 情景分析

在学习了 前面的文章 之后,相信大家已经对 TiKV 使用的 Raft 核心库 raft-rs 有了基本的了解。raft-rs 实现了 Raft Leader election 和 Log replication 等核心功能,而消息的发送、接收、应用到状态机等操作则需要使用者自行实现,本文将要介绍的就是 TiKV 中这些部分的处理过程。 Raft Ready 在开始正题之前,我们先简单回顾一下

【TiDB理论知识 05】TiKV-Raft协议

目录 一 概念 二 raft共识算法对于TiKV的几个重要功能 1 Raft日志复制 1 Raft日志复制流程 2 名词解释 分层次理解TIKV 2 Raft Leader选举 集群初始状态时Leader选举流程 数据正在复制时Leader选举流程 初始化时的特殊情况 raft 参数与Tidb 参数对应关系 一 概念 leader  :数据在TiKV中是以re

Tedis:基于 TiKV 构建的 NoSQL 数据库

作者介绍: 陈东明,饿了么北京技术中心架构组负责人,负责饿了么的产品线架构设计以及饿了么基础架构研发工作。曾任百度架构师,负责百度即时通讯产品的架构设计。具有丰富的大规模系统构 建和基础架构的研发经验,善于复杂业务需求下的大并发、分布式系统设计和持续优化。个人微信公众号 dongming_cdm。 Tedis(https://github.com/eleme/tedis)是基于开源 TiK

TiDB集群恢复之TiKV集群不可用

作者:代晓磊 原文来源: https://tidb.net/blog/2d3dd565 引入数学概率问题:之前上学时都学过,把几组小球放几个盒子,然后计算概率的问题,那么我有10组小球(每组3个),放5个盒子里(每个盒子不能空着),会有多大的概率在2个盒子损坏的情况下,保证每组小球至少保留1个? Tikv可用性图 下面对上图简单解释下: (1)以上都是在regi

TiKV 源码阅读三部曲(一)重要模块

作者简介:谭新宇,清华大学软件学院研三在读,Apache IoTDB committer,Talent Plan Community mentor。 TiKV 是一个支持事务的分布式 Key-Value 数据库,目前已经是 CNCF 基金会 的顶级项目。 作为一个新同学,需要一定的前期准备才能够有能力参与 TiKV 社区的代码开发,包括但不限于学习 Rust 语言,理解 TiKV 的原理和在前

TiKV源码略读-Config

版权声明:本文由神州数码云基地团队整理撰写,若转载请注明出处。 以TiKvConfig struct为起始点,从TiKvConfig内部的字段开始,分析每个模块的作用和配置检查逻辑所做的事情。 TiKV 是一个分布式事务型的键值数据库,是TiDB的存储层,提供了满足 ACID 约束的分布式事务接口,并且通过 Raft 协议保证了多副本数据一致性以及高可用。关于TiDB、TiKV的详细介绍

TiKV 源码略读 - Server Start

作者:alexshen 原文来源: https://tidb.net/blog/97577fd5 这篇文章是上篇文章的继续,上篇文章其实是整个server启动过程中非常小的一部分,文章最后有一个整体流程图,感兴趣的话可以点开进行查看。 TiKV源码略读-Config - 技术文章 / 原理解读 - AskTUG 这次我们的代码略读会基于v4.0.8这个分支开展阅读工