开源分布式NewSQL数据库TiDB发布2.0版本
极客时间编辑部
讲述:杜力大小:1.37M时长:02:59
近日,开源分布式 NewSQL 数据库 TiDB 2.0 GA 版本正式发布。根据现有用户的情况、技术发展趋势以及社区的声音,2.0 版本主要聚焦在以下几点:
1. 保证 TiDB 的稳定性以及正确性
在 1.0 版本发布之后,TiDB 开始构建和完善自动化测试平台 Schrodinger,彻底告别了之前靠手工部署集群测试的方式。同时也新增了非常多的测试用例,做到从最底层 RocksDB,到 Raft,到 Transaction,再到 SQL 都能覆盖。
在 Chaos 测试上面,TiDB 引入了更多的错误注入工具,也在代码特定的业务的逻辑进行错误注入测试,充分保证 TiDB 在异常条件下面也能稳定运行。
在存储引擎方面,为了提升大规模集群的稳定性和性能,TiDB 优化了 Raft 的流程,引入 Region Merge、Raft Learner 等新特性;优化了热点调度机制,统计更多的信息,并根据这些信息做更合理的调度;优化了 RocksDB 的性能,提升空间回收效率,降低磁盘负载,以及更加平滑地使用磁盘资源等等。
2. 提升 TiDB 在大数据量下的查询性能
TiDB 2.0 版本重构了 SQL 优化器和执行引擎,希望能尽可能快的选择最优查询计划并且尽可能高效地执行查询计划。
1.0 版本已经从基于规则的查询优化器转向基于代价的查询优化器,但是还不够完善。在 2.0 版本中,开发团队一方面优化统计信息的精确度以及更新及时程度,另一方面持续提升 SQL 优化器的能力,对查询代价的估算更加精准、对复杂过滤条件的分析更加细致、对关联子查询的处理更加优雅、对物理算子的选择更加灵活准确。
在这一版本中,SQL 执行引擎引入新的内部数据表示方式“Chunk”,一个结构中保存一批数据而不仅是一行数据,同一列的数据在内存中连续存放,使得内存使用更紧凑,这样带来了诸多好处,如显著减小了内存消耗;批量分配内存,减小了 GC 开销;算子之间可以对数据进行批量传递,减小调用开销等。
3. 优化 TiDB 的易用性和可维护性
为了更容易被安装和使用,TiDB 2.0 在监控、运维、工具方面也做了诸多优化。
在监控方面,增加了过百个监控项,同时通过 HTTP 接口、SQL 语句等方式暴露出一些运行时信息,用于系统调优或者是定位系统中存在的问题。
在运维方面,运维工具做了优化,简化操作流程,降低操作复杂度及操作过程对于线上的影响。同时功能也更加丰富,包括支持自动部署 Binlog 组件、支持启用 TLS 等。
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
- 深入了解
- 翻译
- 解释
- 总结
该免费文章来自《极客视点》,如需阅读全部文章,
请先领取课程
请先领取课程
免费领取
© 版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。
登录 后留言
精选留言
由作者筛选后的优质留言将会公开显示,欢迎踊跃留言。
收起评论