快讯!TiDB v8 发版!超硬核 v8 引擎!

news2024/11/27 12:48:04

TiDB 是 PingCAP 公司自主设计、研发的开源分布式关系型数据库,是一款同时支持在线事务处理与在线分析处理 (Hybrid Transactional and Analytical Processing, HTAP) 的融合型分布式数据库产品。

具备水平扩容或者缩容、金融级高可用、实时 HTAP、云原生的分布式数据库、兼容 MySQL 协议和 MySQL 生态等重要特性,支持在本地和云上部署。

目前,TiDB 在 DB-Engines 的全球数据库流行度排行榜,进入总榜前一百(排名 75),关系型数据库榜单排名 41。

在墨天轮中国数据库流行度排行榜,长期位于前三甲。

alt

TiDB 8.0.0

TiDB 8.0.0 于 2024 年 3 月 28 日正式发版。

TiDB 8.0.0 版本的发布带来了一系列重要的特性和改进,以下是该版本的重要变更内容:

1. 可扩展性与性能

  1. 支持拆分 PD(Placement Driver)为微服务,提高集群的可扩展性。(实验特性)
  2. 批量 DML 执行方式:引入新的 DML 类型,用于高效处理大批量 DML 任务。(实验特性)
  3. 提升 BR 快照恢复速度:通过充分利用集群规模优势,显著提升大规模集群中大数据集的恢复速度。
  4. 增强在有大量表时缓存 schema 信息的稳定性:引入新的 schema 缓存系统和优先队列配置,提高多租户应用的稳定性。

2. 数据库管理与可观测性

  1. 支持观测索引使用情况:通过新引入的系统表和视图记录索引的使用情况,帮助用户优化索引设计。
  2. 支持在 TiDB 建表时使用更多的表达式设置列的默认值。(实验特性)
  3. 自动统计信息收集功能引入了优先级队列的概念,优先收集健康度较低的表。

3. 数据迁移

  1. TiCDC 支持 Simple 协议和 Debezium 协议,实现对 schema 信息的动态追踪。

4. 高可用

  1. TiProxy 代理组件 GA,并已集成到 TiUP 中。

5. SQL 功能

  1. 支持系统变量 div_precision_increment,用于指定除法运算结果增加的小数位数。
  2. PITR 支持 Amazon S3 对象锁定,提升数据安全性和完整性。
  3. 支持会话级别使用不可见索引,而不影响其他会话。
  4. 支持 general 日志写入独立文件,并支持将历史日志以 gzip 格式压缩。

6. 安全

  1. TiKV 静态加密支持 Google Cloud KMS。(实验特性)
  2. 增强 TiDB 日志脱敏能力,支持在不同场景下安全使用 TiDB 日志。
  3. DM 支持使用用户提供的密钥对源数据库和目标数据库的密码进行加密和解密。

7. 改进提升和错误修复

功能改进 50 余项,修复问题 110 余项,提升了整体的用户体验和系统可靠性。

示例

一键启动 TiDB 8.0.0:

tiup playground v8.0.0 --tag v8 \
--pd.mode ms --pd.api 1 --pd.tso 1 --pd.scheduling 1 
[root@shawnyan ~ 14:57:25]$ mysql -uroot -P4000 -h127.1 -e 'select version()'
+--------------------+
| version()          |
+--------------------+
| 8.0.11-TiDB-v8.0.0 |
+--------------------+
alt

更多详细内容请参考官方文档: https://docs.pingcap.com/zh/tidb/v8.0

-- END --

alt

觉得好看,请点这里 ↓↓↓

本文由 mdnice 多平台发布

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1558434.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【Docker】Windows中打包dockerfile镜像导入到Linux

【Docker】Windows中打包dockerfile镜像导入到Linux 大家好 我是寸铁👊 总结了一篇【Docker】Windows中打包dockerfile镜像导入到Linux✨ 喜欢的小伙伴可以点点关注 💝 前言 今天遇到一个新需求,如何将Windows中打包好的dockerfile镜像给迁移…

【Linux】进程程序替换 做一个简易的shell

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 目录 文章目录 前言 进程程序替换 替换原理 先看代码和现象 替换函数 第一个execl(): 第二个execv(): 第三个execvp(): 第四个execvpe()&a…

android WMS服务

android WMS服务 WMS的定义 窗口的分类 WMS的启动 WindowManager Activity、Window、DecorView、ViewRootImpl 之间的关系 WindowToken WMS的定义 WMS是WindowManagerService的简称,它是android系统的核心服务之一,它在android的显示功能中扮演着…

YOLOv9改进策略 :卷积魔改 | 感受野注意力卷积运算(RFAConv)

💡💡💡本文改进内容:感受野注意力卷积运算(RFAConv),解决卷积块注意力模块(CBAM)和协调注意力模块(CA)只关注空间特征,不能完全解决卷积核参数共享的问题 💡💡💡使用方法:代替YOLOv9中的卷积,使得更加关注感受野注意力,提升性能 💡💡💡RFAConv…

vue3:通过【自定义指令】实现自定义的不同样式的tooltip

一、效果展示 vue3自定义不同样式的tooltip 二、实现思路 1.ts文件 在ts文件中创建一个全局容器 import一个容器组件,用于存放自定义的各式组件 创建一个指令并获取到指令传递的数据,并为容器组件传值 2.容器组件 用于存放自定义Tooltip样式的组件…

最新2024年增强现实(AR)营销指南(完整版)

AR营销是新的最好的东西,就像元宇宙和VR营销一样。利用AR技术开展营销活动可以带来广泛的利润优势。更不用说,客户也喜欢AR营销! 如果企业使用AR,71%的买家会更多地购物。40%的购物者准备在他们可以在AR定制的产品上花更多的钱。…

详解Java线程的状态

一、观察线程的所有状态 线程的状态是⼀个枚举类型 Thread.State public class ThreadState {public static void main(String[] args) {for (Thread.State state : Thread.State.values()) {System.out.println(state);}} } NEW: 安排了⼯作, 还未开始⾏动 RUNNABLE: 可⼯…

JavaSE day16笔记 - string

第十六天课堂笔记 学习任务 Comparable接口★★★★ 接口 : 功能的封装 > 一组操作规范 一个抽象方法 -> 某一个功能的封装多个抽象方法 -> 一组操作规范 接口与抽象类的区别 1本质不同 接口是功能的封装 , 具有什么功能 > 对象能干什么抽象类是事物本质的抽象 &…

MYSQL——索引概念索引结构

索引 索引是帮助数据库高效获取数据的排好序的数据结构。 有无索引时,查询的区别 主要区别在于查询速度和系统资源的消耗。 查询速度: 在没有索引的情况下,数据库需要对表中的所有记录进行扫描,以找到符合查询条件的记录&#…

《深入理解计算机系统》学习(9):链接和执行

目录 一、链接1.1 编译器驱动程序1.2 链接任务 二、目标文件2.1 目标文件三种形式2.2 可重定位目标文件 三、符号3.1 符号表3.2 符号解析3.3 链接器解析多重定义的全局符号 四、重定位4.1 重定位条目4.2 重定位符号引用 五、可执行目标文件5.1 可执行文件结构5.2 加载可执行目标…

设置asp.net core WebApi函数请求参数可空的两种方式

以下面定义的asp.net core WebApi函数为例,客户端发送申请时,默认三个参数均为必填项,不填会报错,如下图所示: [HttpGet] public string GetSpecifyValue(string param1,string param2,string param3) {return $"…

C++格式化输入和输出

格式化输入与输出 除了条件状态外,每个iostream对象还维护一个格式状态来控制IO如何格式化的细节。 格式状态控制格式化的某些方面,如整型值是几进制、浮点值的精度、一个输出元素的宽度等。 标准库定义了一组操纵符来修改流的格式状态。 一个操纵符…

【进程IO】详细讲解文件描述符fd

文章目录 前言什么叫文件描述符FILE与fd的关系 再次理解文件为什么要有文件的方法列表呢? 进程和struct file的关系再次理解open操作 前言 C语言的关于文件操作的各种函数实际上是对系统调用的封装。那么从进程的角度看,一个文件到底是如何被描述的呢&a…

Postwoman 安装

Postwoman作为Postman的女朋友,具有免费开源、轻量级、快速且美观等特性,是一款非常好用的API调试工具。能帮助程序员节省时间,提升工作效率。 Github地址:GitHub - hoppscotch/hoppscotch: 👽 Open source API devel…

Qt/QML编程之路:画线及倒车影响(48)

前言: 倒车影像中有一个属性比较实用,那就是倒车线,这条线很明显会在视频图像上叠加显示,或者说在视频上面一个图层画的线。这里有一个画线的Qt示例,用于在一个scene上画一个对角线: #include "mainwindow.h" #include <QApplication> #include <QtW…

ES6 学习(一)-- 基础知识

文章目录 1. 初识 ES62. let 声明变量3. const 声明常量4. 解构赋值 1. 初识 ES6 ECMAScript6.0(以下简称ES6)是JavaScript语言的下一代标准&#xff0c;已经在2015年6月正式发布了。它的目标&#xff0c;是使得」JavaScript语言可以用来编写复杂的大型应用程序&#xff0c;成为…

关系网络c++

题目&#xff1a; 代码&#xff1a; #include<bits/stdc.h>using namespace std;int n,x,y;struct node{int num;//编号 int t;//步数 node(){}node(int sum,int tt){numsum;ttt;} }; int mp[101][101];//图 bool flag[101];//标记 queue<node> q; void bfs() {q…

FLASH的读取与写入

FLASH的写入 结合HAL库所给参数&#xff1a; 查阅具体使用芯片的参考手册。 就不在详细解释&#xff0c;英文自行翻译。具体代码如下&#xff1a; /*FLASH写入程序*/ void WriteFlashTest(uint32_t L, uint32_t addr, uint32_t *Data,int Page) {int i0;/* 1/4解锁FLASH*/HAL…

【Anaconda】Linux下Anaconda安装和虚拟环境配置

Linux下Anaconda安装和虚拟环境配置 一、安装anaconda二、conda虚拟环境管理三、jupyter相关启动部署四、遇到问题 下面介绍整体流程&#xff0c;遇到问题优先看“遇到问题章节”&#xff01; 一、安装anaconda 1.下载anaconda安装包 &#xff08;1&#xff09;可以选择在官网…

文件名目录名或卷标语法不正确:数据恢复策略与预防措施

一、文件名目录名或卷标语法不正确的现象 在日常使用电脑或移动设备时&#xff0c;我们经常会遇到“文件名目录名或卷标语法不正确”的错误提示。这种错误通常发生在尝试访问、修改或删除文件、目录或卷标时&#xff0c;系统会提示无法完成操作&#xff0c;因为文件名、目录名…