前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >TiDB 3.0 GA Release Notes

TiDB 3.0 GA Release Notes

原创
作者头像
PingCAP
修改2019-07-01 10:29:48
8570
修改2019-07-01 10:29:48
举报
文章被收录于专栏:PingCAP的专栏

Overview

2019 年 6 月 28 日,TiDB 发布 3.0 GA 版本,对应的 TiDB Ansible 版本为 3.0.0。

相比于 V2.1,V3.0.0 版本在以下方面有重要改进:

  • 稳定性方面,显著提升了大规模集群的稳定性,集群支持 150+ 存储节点,300+ TB 存储容量长期稳定运行。
  • 易用性方面有显著的提升,降低用户运维成本,例如:标准化慢查询日志,制定日志文件输出规范,新增 EXPLAIN ANALYZE,SQL Trace 功能方便排查问题等。
  • 性能方面,与 2.1 相比,TPC-C 性能提升约 4.5 倍,Sysbench 性能提升 50%+。 因支持 View,TPC-H 50G Q15 可正常运行。
  • 新功能方面增加了窗口函数、视图(实验特性)、分区表、插件系统、悲观锁(实验特性)、SQL Plan Management 等特性。

TiDB

  • 新功能
代码语言:txt
复制
- 新增 Window Function,支持所有 MySQL 8.0 中的窗口函数,包括 `NTILE`,`LEAD`,`LAG`、`PERCENT_RANK`、`NTH_VALUE`、`CUME_DIST`、`FIRST_VALUE`、`LAST_VALUE`、`RANK`、`DENSE_RANK`、`ROW_NUMBER` 函数
- 新增 View 功能(**实验特性**)
- 完善  Table Partition 功能:
    - Range Partition
    - Hash Partition
- 新增插件系统,官方提供 IP 白名单(**企业版特性**),审记日志(**企业版特性**)等插件
- 新增 `SQL Plan Management` 功能,通过绑定 SQL 执行计划确保查询的稳定性(**实验特性**)SQL 优化器优化

PD

  • 新增从单个节点重建集群的功能
  • 将 Region 元信息从 etcd 移到 go-leveldb 存储引擎,解决大规模集群 etcd 存储瓶颈问题
  • API
    • 新增 remove-tombstone 接口,用于清理 Tombstone Store
    • 新增 ScanRegions 接口,用于批量查询 Region 信息
    • 新增 GetOperator 接口,用于查询运行中的 Operator
    • 优化 GetStores 接口的性能
  • 配置
    • 优化配置检查逻辑,防止配置项错误
    • 新增 enable-two-way-merge,用于控制 Region merge 的方向
    • 新增 hot-region-schedule-limit,用于控制热点 Region 调度速度
    • 新增 hot-region-cache-hits-threshold,连续命中阀值用于判断热点
    • 新增 store-balance-rate 配置,用于控制每分钟产生 balance Region Operator 数量的上限
  • 调度器优化
    • 添加 Store Limit 机制限制调度速度,使得速度限制适用于不同规模的集群
    • 添加 waitingOperator 队列,用于优化不同调度器之间资源竞争的问题
    • 支持调度限速功能,主动向 TiKV 下发调度操作,限制单节点同时执行调度任务的个数,提升调度速度
    • Region Scatter 调度不再受 limit 机制限制,提升调度的速度
    • 新增 shuffle-hot-region 调度器,解决稳定性测试易用性问题
  • 模拟器
    • 新增数据导入场景模拟
    • 新增为 Store 设置不同的心跳间隔的功能
  • 其他
    • 升级 etcd,解决输出日志格式不一致,prevote 时选举不出 Leader,Lease 死锁等问题
    • 制定日志格式规范,重构日志系统,方便工具收集分析
    • 新增调度参数,集群 Label 信息,PD 处理 TSO 请求的耗时,Store ID 与地址信息等监控指标

TiKV

  • 新增分布式 GC 以及并行 Resolve Lock 功能,提升 GC 的性能
  • 新增逆向 raw_scanraw_batch_scan 功能
  • 新增多线程 Raftstore 和 Apply 功能,提升单节点内可扩展性,提升单节点内并发处理能力,提升单节点的资源利用率,降低延时,同等压力情况下性能提升 70%
  • 新增批量接收和发送 Raft 消息功能,写入密集的场景 TPS 提升 7%
  • 新增 Apply snapshot 之前检查 RocksDB level 0 文件的优化,避免产生 Write stall
  • 新增 Titan 存储引擎插件,提升 Value 超过 1KiB 时系统的性能,一定程度上缓解写放大问题(实验特性
  • 新增悲观事务模型(实验特性
  • 新增通过 HTTP 方式获取监控信息功能
  • 修改 Insert 语义,仅在 Key 不存在的时候 Prewrite 才成功
  • 制定日志格式规范,重构日志系统,方便工具收集分析
  • 新增配置信息,Key 越界相关的性能监控指标
  • RawKV 使用 Local Reader,提升性能
  • Engine
    • 优化内存管理,减少 Iterator Key Bound Option 的内存分配和拷贝,提升性能
    • 支持多个 column family 共享 block cache,提升资源的利用率
  • Server
    • 优化 batch commands 的上下文切换开销,提升性能
    • 删除 txn scheduler
    • 新增 read index,GC worker 相关监控项
  • RaftStore
    • 新增 hibernate Regions 功能,优化 RaftStore CPU 的消耗(实验特性
    • 删除 local reader 线程
  • Coprocessor
    • 重构计算框架,实现向量化算子、向量化表达式计算、向量化聚合,提升性能
    • 支持为 TiDB EXPLAIN ANALYZE 语句提供算子执行详情
    • 改用 work-stealing 线程池模型,减少上下文切换

Tools

  • TiDB Lightning
代码语言:txt
复制
- 支持数据表重定向同步功能
- 新增导入 CSV 文件功能
- 提升 SQL 转 KV 对的性能
- 单表支持批量导入功能,提升单表导入的性能
- 支持将大表的数据和索引分别导入,提升 `TiKV-Importer` 导入数据性能
- 支持对新增文件中缺少 Column 数据时使用 row id 或者列的默认值填充缺少的 column 数据
- `TiKV-Importer` 支持对 upload SST 到 TiKV 限速功能TiDB BinlogDrainer 新增 

TiDB Ansible

  • 升级监控组件版本到安全的版本
    • Prometheus 从 2.2.1 升级到 2.8.1 版本
    • Pushgateway 从 0.4.0 升级到 0.7.0 版本
    • Node_exporter 从 0.15.2 升级到 0.17.0 版本
    • Alertmanager 从 0.14.0 升级到 0.17.0 版本
    • Grafana 从 4.6.3 升级到 6.1.6 版本
    • Ansible 从 2.5.14 升级到 2.7.11 版本
  • 新增 TiKV summary 监控面板,方便查看集群状态
  • 新增 TiKV trouble_shooting 监控面板,删除重复项,方便排查问题
  • 新增 TiKV details 监控面板,方便调试排查问题
  • 新增滚动升级并发检测版本是否一致功能,提升滚动升级性能
  • 新增 lightning 部署运维功能
  • 优化 table-regions.py 脚本,新增按表显示 leader 分布功能
  • 优化 TiDB 监控,新增以 SQL 类别显示延迟的监控项
  • 修改操作系统版本限制,仅支持 CentOS 7.0 及以上,Red Hat 7.0 及以上版本的操作系统
  • 新增预测集群最大 QPS 的监控项,默认隐藏

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Overview
  • TiDB
  • PD
  • TiKV
  • Tools
  • TiDB Ansible
相关产品与服务
数据库
云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档