首页
学习
活动
专区
圈层
工具
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

TiDB初探

翻了一下TiDB的文档,对TiDB有了个大概的了解。简单说,TiDB的实现架构是:底层是分布式KV引擎TiKV,上层是SQL引擎TiDB Servers。...在TiKV之上实现SQL引擎就简化了很多,因此TiDB Servers是无状态的。...简化的抽象架构分层: TiDB官方文档里的架构图: 可以看出,TiDB的基础工作和最突出的创新在TiKV,理论上有了这个KV,可以把单机版的SQl引擎实现方式搬过来,就有了一个可扩展的分布式数据库。...按照TiDB的文档,TiDB 实现的 snapshot 隔离级别,该隔离级别不会出现幻读,但是会出现写偏斜。...从文档看,TiDB利用了成熟的开源项目,自己实现了分布式事务、分布式存储和SQL引擎,整体方案诱人,至于软件成熟程度,还需要经过实际的使用测试。

21110
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    TiFlink:使用 TiKV 和 Flink 实现强一致的物化视图丨TiDB Hackathon 项目分享

    编者按: 本文为 TiDB Hackathon 2020 比赛中 TiFlink 项目最新进展的介绍,使用 TiKV 和 Flink 实现了强一致的物化视图的功能。...在本年初的 TiDB Hackathon 上,我和一众队友尝试使用 Flink 为 TiDB 添加物化视图功能,并摘得了 “最佳人气奖”。可以说,物化视图在这届比赛中可谓是一个热点。...TiKV 和 Flink 尽管这是一个 TiDB Hackthon 项目,因此必然会选择 TiDB/TiKV 相关的组件,但是在我看来 TiKV 作为物化视图系统的中间存储方案具备很多突出的优势: TiKV...同时 TiDB 本身作为一个 HTAP 系统,正好为物化视图这个需求提供了一个 Playground。...在 TiDB 这样支持事务的分布式数据库上实现强一致的物化视图,最简单的思路就是使用一个接一个的事务来更新视图。

    88350

    TiDB Lab 诞生记 | TiDB Hackathon 优秀项目分享

    [1240] 项目简介 简介 TiDB Lab,全称 TiDB Laboratory,是一个集 TiDB 集群状态的在线实时可视化与交互式教学的平台。...通过 TiDB Lab 这种对操作进行可视化反馈的交互模式,用户可以快速且生动地理解 TiDB 内部原理。 功能 实时动态展示 TiDB、TiKV 节点的新增、启动与关闭。...我们希望能实现 TiDB Lab + TiDB 生态组件的沙盒,从而在 TiDB Lab 在线平台上直接提供命令执行与 SQL 执行功能。...事件:TiDB 启动 TiDB 事件:TiDB 关闭 TiDB 事件:TiDB 收到一条 SQL TiKV 事件:TiKV 启动 TiKV 事件:TiKV 关闭 TiKV 事件:TiKV 收到一条 KvGet...事件:TiDB 启动,若首次启动认为是新部署 TiDB 事件:TiDB 关闭 TiDB 事件:TiDB 收到 SQL 并发起 KvGet 读请求 TiDB 事件:TiDB 收到 SQL 并发起 PreWrite

    97000

    TiDB 源码阅读系列文章(二)初识 TiDB 源码

    本文为 TiDB 源码阅读系列文章的第二篇,第一篇文章介绍了 TiDB 整体的架构,知道 TiDB 有哪些模块,分别是做什么的,从哪里入手比较好,哪些可以忽略,哪些需要仔细阅读。...TiDB 架构 [1240] 本次 TiDB 源码之旅从这幅简单的架构图开始,这幅图很多人都看过,我们可以用一句话来描述这个图:『TiDB 是一个支持 MySQL 协议,以某种支持事务的分布式 KV 存储引擎为底层存储的...本篇文章会先介绍一些 TiDB 有哪些模块及其功能简要介绍,然后以这三点为线索,将这些模块串联起来。 代码简介 TiDB 源码完全托管在 Github 上,从项目主页可以看到所有信息。...是 TiDB 1.1 版本引入的一种数据表示结构。...如果是相对源码有全面的了解,那么可以从 tidb-server/main.go 入手,看 tidb-server 是如何启动,如何等待并处理用户请求。再跟着代码一直走,看 SQL 的具体执行过程。

    2.1K110

    TiDB初感

    来源公众号|SQL和数据库技术(ID:SQLplusDB) 浏览了一天PingCAP(TiDB)--官方公众号文章、官方网站文档、TUG(TiDB用户组)、Github等各种互联网上能找到各种资源。...TiDB相关的各种资源 以下TiDB相关的各种资源。 官网地址 了解一个产品当然要从官网开始。...https://pingcap.com/ 以下是官网对TiDB的定位: TiDB 开源分布式关系型数据库TiDB 是一款定位于在线事务处理/在线分析处理( HTAP: Hybrid Transactional...https://docs.pingcap.com/zh/tidb/stable 重视实操的TiDB工具书 https://book.tidb.io/ 《TiDB in Action》是一本重视实操的书工具的介绍和使用部分会深入浅出...TiDB_PingCAP 的博客 官方博客用于最新 TiDB 技术解析、案例分享 https://blog.csdn.net/TiDB_PingCAP 微信公众号 ID:pingcap2015 TUG问答

    43310

    TiDB测试小结

    最近调研了下TiDB,总体对这门基于关系型的分布式方案做了一些相对全面的测试。...首先,让我感兴趣的不是TiDB的NewSQL角色,而是对TiDB的发展过程,TiDB的架构演进对于理解TiDB技术还是很有帮助的,也对我们的工作和实践具有一定的借鉴。...TiDB 0.5版本的架构如下: ③ 存储引擎引入HBase 初期的TiDB是没有存储引擎的,数据都是在内存层面,接入HBase,也是一个战略选型,主要是为了初步验证SQL层的实现是否稳定。...技术架构层面,TiDB和Oracle中的RAC其实很像(组件和功能),当然最大的不同就是一个是分布式,弹性扩缩容,另外一个是集成共享式。 我测试的时候使用了如下的部署架构。...12 故障自动恢复 13 产品定制能力强,定制了将近30个参数,针对TiDB的使用需求 还有一些细节的小错误或者问题,后续和朋友对接集中反馈下。

    1.4K20

    2.深入TiDB:入口代码分析及调试 TiDB

    本文基于 TiDB release-5.1进行分析,需要用到 Go 1.16以后的版本 ; 转载请声明出处哦~,本篇文章发布于luozhiyun的博客: https://www.luozhiyun.com.../archives/592 启动与调试 其实 TiDB 的调试非常的简单,我这里用的是 TiDB release-5.1,那么需要将 Go 的版本更新到 1.16 之后。...main 函数是在 tidb-server 包里面,直接运行就好了。为了保证环境的统一,我用的是 Linux 的环境。...如果想要对自己的代码进行调试,只需要: 从 main 函数开始 学会了如何调试 TiDB 之后,下面看看 TiDB 的 main 函数执行逻辑,它是在 tidb-server 包下面: func main...对于 TiDB 的启动环节我们还可以参照前几次写的文章:《一文说透 Go 语言 HTTP 标准库》一起看看同样是服务端,TiDB为啥要自己实现一个。

    42920

    TIDB 初级课程体验 5 ( 搭建一个TIDB)

    这样一个TIDB 的测试环节就安装完毕了. TIUP 是TIDB4.0引入的集群运维的工具,通过TIUP来进行tidb的日常运维,以及部署,启动关闭,销毁和弹性扩展的工具....通过TIUP 来进行组件的展示,与安装 tiup install tidb tiup list --installed 这里TIDB 部署的硬件需求如下: TIDB 的最低生产配置....这里通过拓扑文件来让管理节点来好安排相关的集群的设置, 这里通过拓扑文件可以分析出, 我们的管理数据库的用户为 tidb, 并且部署的软件放置在/tidb-deploy /tidb-data 存放数据文件...TIDB 的启动顺序是 PD TIKV TIDB TIFLASH TIUP 是从TIDB 4.0 出现的 TIDB PD TIKV 都是通过TIUP来进行部署的, TIUP在执行时,命令和组件是要同时出现的...TIDB 的启动顺序是 PD ,TIKV ,TIDB TIFLASH 总结TIUP是一个非常棒的工具,通过TIUP工具可以轻松的部署和创建一个TIDB 的集群。

    28940

    ASP.NET Core 5.0 MVC中的视图分类及使用——布局视图、启动视图、导入视图、详细视图、分部视图

    创建MVC应用程序   创建后的项目 启动视图 _ViewStart.cshtml 顾名思义,就是在View开始执行之前执行,而且是每一个View, 它的预设内容是 @{ Layout =..."_Layout"; } 我们可以在这个页面,添加一些全局性的内容,比如全局变量等,然后在具体View页面使用这些变量值 导入视图_ViewImports.cshtml, 它的作用是放一些要引用的命名空间...布局视图_Layout.cshtml 它的作用是让所有的视图页保持一致的外观,比如说 统一的 左侧目录、统一的头部导航、头部轮廓图、统一底部官网链接等。它的预设内容是 <!...ViewStart.cshtml页面  _Layout.cshtml页面  _ViewImport.cshtml页面  Index.cshtml页面 在index.cshtml上 F5,运行 分部视图...在Index相同的目录下新建视图页_PartialIndex,并加入一些数据   2.

    40310

    TiDB Best Practice

    本文档用于总结在使用 TiDB 时候的一些最佳实践,主要涉及 SQL 使用、OLAP/OLTP 优化技巧,特别是一些 TiDB 专有的优化开关。...如果利用好二级索引,对业务非常重要,很多 MySQL 上的经验在 TiDB 这里依然适用,不过 TiDB 还有一些自己的特点,需要注意,这一节主要讨论在 TiDB 上使用二级索引的一些注意事项。...部署 在部署之前请务必阅读 TiDB 部署建议以及对硬件的需求。 推荐通过 TiDB-Ansible 部署 TiDB 集群,这个工具可以部署、停止、销毁、升级整个集群,非常方便易用。...除了文档之外,还有很多不错的文章介绍 TiDB 的各项技术细节内幕,大家可以关注下面这些文章发布渠道: 公众号:微信搜索 PingCAP 知乎专栏:TiDB 的后花园 官方博客 TiDB 的最佳适用场景...TiDB 源码地址:https://github.com/pingcap/tidb

    2.7K10
    领券