首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    TiDB初探

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

    19810

    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

    96400

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

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

    2K110

    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

    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问答

    42910

    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为啥要自己实现一个。

    42020

    TiDB测试小结

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

    1.3K20

    The Overview of TiDB 4.0

    一分钟部署 TiDB 集群 「在单机部署一个 TiDB 集群要多久?」 之前,我们其实很难回答这个问题,但现在可以很自豪的说「一分钟」。为什么会这么快?...上面只是单机测试的情况,真的要生产环境上线了,我们如何部署 TiDB 集群呢?假设我们现在有十台机器,部署一个 TiDB 集群要多久?...Serverless TiDB 我们一直希望,让用户无感知的使用 TiDB,他只需要关注自己的业务就可以了。TiDB 对于用户来说就是一种数据库资源,他可以按需去使用。...现在,用户只需要使用最小规模集群部署 TiDB 集群,然后 TiDB 会根据用户自身的业务负载,自动做一些事情,包括: 弹性的扩缩容,当业务高峰来临,TiDB 会自动增加实例,满足业务请求,反之也能自动收缩实例...另外,这里放上一个简单的跑分,让大家快速感受一下 TiDB 4.0 的性能提升: TPC-C (注:测试使用 TiDB DBaaS(AWS) 高配置集群,其中 TiDB 使用 2 台 16核 32G 的

    71531

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

    本文基于 TiDB release-5.1进行分析,需要用到 Go 1.16以后的版本 博客地址:https://www.luozhiyun.com/archives/589 启动与调试 其实 TiDB...的调试非常的简单,我这里用的是 TiDB release-5.1,那么需要将 Go 的版本更新到 1.16 之后。...如果想要对自己的代码进行调试,只需要: 安装 mysql 客户端;yum install mysql 启动 TiDB tidb-server 包里面 main 函数; 启动 mysql 客户端;...之后,下面看看 TiDB 的 main 函数执行逻辑,它是在 tidb-server 包下面: func main() { ... // 注册store registerStores() //...对于 TiDB 的启动环节我们还可以参照前几次写的文章:《一文说透 Go 语言 HTTP 标准库》一起看看同样是服务端,TiDB为啥要自己实现一个。

    45020

    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 的集群。

    28740

    TiDB学习笔记(二)

    本文是《极客时间》-《TiDb极简入门》的学习笔记。...传送门:https://time.geekbang.org/opencourse/videointro/100089601 这部分讲解了Tidb的整体概述。...在云计算场景下,弹性的颗粒度是机器,不能做到真正资源的弹性 TiDB高度分层架构 弹性是整个架构设计的核心考量点,计算与存储分离 从逻辑上TiDb主要分为3层 1.TiDB-Server: 支持标准SQL...的分配 调度中心 二 如何构建一个分布式存储系统 我们需要一个什么样的存储引擎 1.更细粒度的弹性扩缩容 2.高并发读写 3.数据不丢不错 4.多副本保障一致性及高可用性 5.支持完整的分布式事务 TiDb...里需要进行合理的匹配计算 分布式sql引擎主要优化策略 最大程度让数据在分布式存储层尽快的完成过滤以及预计算(最大下推策略 push down) 关键算子分布式化 如何构建一个Online DDL 1.tidb

    86151
    领券