首页
学习
活动
专区
工具
TVP
发布

腾讯数据库技术

专栏作者
105
文章
215563
阅读量
399
订阅数
MySQL 8.0 Atomic DDL
背景 MySQL 8.0 DDL 是一个复杂的过程,涉及比较多的模块,例如:MDL 锁,表定义缓存,行格式,Row Log,DDL Log,online 属性,表空间物理文件操作等。本文主要通过与5.
腾讯数据库技术
2023-01-30
1.1K0
TDSQL-C 并行查询探索 | DTCC 2022
按:本文是 DTCC 2022 云原生专场《TDSQL-C 并行查询探索》文字稿整理。在演示稿中有一些资料引用,这里单独抽出来便于参考。 TDSQL-C 产品介绍  https://cloud.ten
腾讯数据库技术
2022-12-20
7720
原创 | InnoDB 的 Change Buffer
介绍 change buffer(在 MySQL 5.6 之前叫 insert buffer,简称 ibuf )是 InnoDB 5.5 引入的一种优化策略,若二级索引页不在 buffer pool 中,则将针对二级索引页的操作暂时缓存起来,等到该页从磁盘读到 buffer pool 中时再批量的(batch)apply 这些操作,从而达到减少磁盘 I/O 的目的。具体一点就是: 事务 1 执行写操作(e.g update),但针对的二级索引页 P1 并不在 buffer pool 中 于是 client
腾讯数据库技术
2022-11-28
4470
原创|MySQL performance_schema之内存监控
提示:公众号展示代码会自动折行,建议横屏阅读 背景 无论从使用、研发还是运维的角度,内存监控一直是MySQL的重点之一。完善的内存监控手段有很多作用,包括但不限于: 发现内存泄漏,避免MySQL实例内存耗尽 对实例的运行状态进行定量分析 资源管控和优化 但内存监控想要“完善”并不是那么简单的事。 PFS内存监控介绍 在PFS中,一共有五张内存相关的监控表,每张表会从不同维度收集和聚合内存事件。 memory_summary_by_account_by_event_name: 从用户和连接host的角度统
腾讯数据库技术
2022-10-08
1.5K0
原创|MySQL binlog时间异常分析
提示:公众号展示代码会自动折行,建议横屏阅读 「第一部分 引言」 在日常运维MySQL的过程中,不知大家是否有留意到,有时会发现binlog中的时间并不是有序的,如果对这种情况感到疑惑,那么本文将能解答你的问题。 「第二部分 时间来源」 每一个event实例都继承自Log_event类,在Log_event的构造函数中会设置event头部的时间: Log_event::Log_event(THD *thd_arg, uint16 flags_arg,
腾讯数据库技术
2022-08-26
1.1K0
原创|如何在Innodb层维护GTID?
提示:公众号展示代码会自动折行,建议横屏阅读 「第一部分 背景」 在之前的公众号文章《GTID实践和分析》中介绍了GTID的基本原理,MySQL主要通过Server引擎的binlog文件和Innodb的mysql.gtid_executed表来持久化GTID集合信息。在提交时会将分配给事务的GTID刷到binlog文件中,在事务成功提交后会将GTID加入内存的executed_gtids集合中,并周期性持久化到mysql.gtid_executed表中。在实例恢复时可以从mysql.gtid_execute
腾讯数据库技术
2022-08-26
5630
原创|这个死锁你会解吗?
提示:公众号展示代码会自动折行,建议横屏阅读 「第一部分 背景」 最近我们发现在Read Committed隔离级别下出现了S类型的Gap锁参与的死锁告警。 本身RC隔离级别上出现Gap锁就很诡异了,更诡异的是两条看起来完全不相干的SQL发生了死锁。让我们一起来分析一下吧。 1.1 事务逻辑 简化来看是一个文件移动功能,目的是将文件从source目录移动到dest目录,逻辑如下: 1)查询 source 的父目录(select lock in share mode) 2)查询 dest 的父目录(selec
腾讯数据库技术
2022-06-08
6800
原创|X侦探所事件簿|内存到哪里去了
提示:公众号展示代码会自动折行,建议横屏阅读 「第一部分 前言」 我们都知道,程序的运行离不开内存。很多人都有这种直接朴素的想法,内存越大程序的运行速度越快。对于数据库来说,如果数据都能加载到内存中,不需要从磁盘读取,那速度肯定是杠杠的。但是,对于现在的应用来说,几十GB乃至TB级别的数据,都是常见的情况,但内存多是十几GB。所以,内存就是就是珍贵的资源,要精打细算的使用,那么这次我们就探究一下和内存相关的知识。这些知识将从两个方面着手,一是操作系统方面,从该方面我们讲述内存在这个层面是怎么分布的;二是M
腾讯数据库技术
2022-03-30
5230
原创|slave crash unsafe常见问题分析·续
提示:公众号展示代码会自动折行,建议横屏阅读 「第一部分 背景」 在之前的公众号文章《 slave crash unsafe常见问题分析》中提到slave的master_info_repository和relay_log_info_repository参数的某些配置可能导致crash unsafe,同时在该文章的末尾提到设置relay_log_recovery = on可以避免slave crash unsafe,参考文献[1]、参考文献[2]、参考文献[3]。 因此本文继续之前的思路,首先着重分析GTID
腾讯数据库技术
2022-02-23
5170
原创|GTID实践和分析
提示:公众号展示代码会自动折行,建议横屏阅读 「第一部分 GTID简介」 在MySQL5.6引入了GTID(Global Transaction Identifier)特性,它可以在集群中唯一标识一个事务,在MySQL主从复制时,从节点可以使用GTID来确定复制位点,用于取代使用binlog文件偏移量的传统方式,在发生主备切换时从节点可以自动在新主上找到正确的复制位置,大大简化了复杂复制拓扑下集群的维护,也减少了人为设置复制位点发生误操作的风险,另外,基于GTID的复制可以跳过已经执行过的事务,减少了数据发
腾讯数据库技术
2022-01-25
1.4K0
腾讯云原生数据库 TDSQL-C异地容灾核心能力构建
以下文章来源于鹅厂架构师 ,作者TDSQL-C 云原生数据库TDSQL-C作为腾讯云架构平台部核心数据库产品之一,致力于为云上ToB用户和公司自研业务提供集高性能、低成本、大存储、低延迟、秒级扩缩容、极速回档、Serverless化七大特性于一体的企业级数据库服务。本文将给大家分享《TDSQL-C (原CynosDB)容灾的实践和探索》,主要内容有以下三个方面: 1 云原生数据库和传统数据库的架构对比 2 MySQL数据库的容灾部署模型 3 TDSQL-C 异地容灾系统的实践 云原生数据库和传统数据
腾讯数据库技术
2022-01-04
1.8K0
MySQL Hash Join实现分析
提示:公众号展示代码会自动折行,建议横屏阅读 「前言」 连接操作是一种数据库中最基本的操作,连接算法的执行效率直接影响到整个数据库的效率、吞吐和资源。通常商业数据库系统一般有三种主流的连接实现:Nested Loop Join、Hash Join和Sort Merge Join。本文概述目前主流的Hash Join实现方式,以及分析MySQL中Hash Join的实现方式。 MySQL 8.0.18 版本增加了对Hash Join算法的支持,在此之前,连接算法仅支持嵌套循环连接 Nested Loop J
腾讯数据库技术
2021-12-30
2K1
张青林:云原生数据库TDSQL-C在关键技术的多维突破
// 2021年11月4日,云原生开源生态专场,由腾讯云数据技术总监张青林分别从海量存储、弹性缩扩容、秒级快速备份与回档和支持serverless4个维度分享腾讯云原生数据库TDSQL-C的显著特性,以及在不同业务应用场景中的内核技术优化实践。 (以下是通过张青林现场演讲全文整理) 传统数据库架构瓶颈 在自研云原生数据库TDSQL—C之前,我们也做多年其他的云数据库产品,越到后面越发现传统数据架构存在着几方面问题:一、数据本地存储,随着业务的增长,单机存储量可能会大于单机磁盘容量限制,需要对业务进行迁
腾讯数据库技术
2021-11-15
1K0
程彬:云原生时代的腾讯数据库技术实践
// 11月3/4日,以“数实融合,绽放新机”为主题,聚焦产业趋势与技术前沿,打造产业互联网顶级盛会的2021腾讯数字生态大会在武汉举办,腾讯云数据库技术负责人程彬进行了《云原生时代的数据库技术实践》的主题演讲,分别从云原生时代数据库技术何去何从,新时代下如何构建TDSQL-C数据库产品和TDSQL-C在云上实践经验等三个方面进行分享。 (以下是通过程彬现场演讲全文整理) 时来云转 :云时代的数据库应云而生、依云而建 当云计算这个词还热度未减时,云原生的时代却已悄然而至,也因此用户使用云的方式发生了极
腾讯数据库技术
2021-11-12
1.1K0
原创|MySQL WriteSet并行复制分析
提示:公众号展示代码会自动折行,建议横屏阅读 「第一部分 背景」  在mysql支持基于LOGICAL CLOCK的复制后,主从延迟得到了很大的改善,但是LOGICAL CLOCK一定程度上会受到master的并发度的影响。当master的并发度较低,每次组提交的事务数较少的时候,binlog在slave上的回放的并发度也会因此而降低,即使这些事务之间并没有任何冲突。示例: Trx1 -----L----C---------------------------------->Trx2 ----
腾讯数据库技术
2021-09-15
1.6K0
视频|腾讯云企业级MySQL(CDB)-动态线程池功能
本文以视频+文字放送,为你带来腾讯云企业级MySQL-动态线程池功能 【背景】 MySQL两种常用工作模式 MySQL比较常用的工作模式有两种,one-thread-per-connection 和 threadpool 模式。 one-thread-per-connection 是MySQL自带的工作模式,采用每个用户连接对应一个 handle_connection 线程的方式处理用户请求。Threadpool 最早由 percona 支持,CDB对其进行了改进。Thread_pool 采用相对固定数量
腾讯数据库技术
2021-09-09
6050
腾讯云企业级MySQL(CDB)-列压缩特性
本文以视频+文字放送,为你带来腾讯云企业级MySQL-列压缩特性 【需求背景】 当前MySQL有针对行格式级别以及数据库页面级别的压缩,这两种压缩方式在处理一个表,同时有大字段和其它很多小字段,并且针对小字段的读写访问频繁,对大字段的访问不频繁的场景中,它的读写访问都会压缩和解压数据,这造成许多不必要的计算资源浪费。 腾讯云企业级MySQL(CDB)运用列压缩功能来压缩访问不频繁的大字段,同时能够减少整行字段的存储空间,进而提高整体读写访问的效率。 例如一张员工表,前面三个字段分别表示员工 id、年龄以及
腾讯数据库技术
2021-08-19
8080
MySQL resource group详解
提示:公众号展示代码会自动折行,建议横屏阅读 「第一部分 资源组简介」 MySQL-8.0中新增了resource group资源组的功能。MySQL资源组的想法来源很简单:每个资源组是一个资源独立的单位,每个资源组能够容纳一个或者多个MySQL线程。拥有设置资源组权限的DBA们能够创建、配置资源组以及指定、切换MySQL线程从属的资源组,从而更加精准地管控MySQL。 每个MySQL资源组的属性包括: Name:资源组名 CPU affinity:可以使用的VCPU编号,系统可用的VCPU编号可以通
腾讯数据库技术
2021-08-04
8100
青胜于蓝丨腾讯MongoDB百万库表探索之路
文章出处: 鹅厂架构师 导读 腾讯 MongoDB 百万库场景下的性能优化成果汇报 腾讯 MongoDB目前广泛应用于游戏、电商、ugc、物联网等场景,很多客户在使用过程中库表数量会大量增长,甚至达到百万级别,导致性能急剧下降,严重影响客户业务。腾讯数据库研发中心CMongo团队在进行深入性能分析之后,改造底层引擎为共享表空间架构,新架构在百万级库表的场景下,相比原生版本读写性能提升 1-2 个数量级,内存消耗显著降低,启动时间从原先小时级缩短到一分钟内。 探索之路正式开始,文章很长但干货满满,建议收藏品
腾讯数据库技术
2021-07-29
8570
腾讯云企业级MySQL(CDB)-Returning语法使用
本文以视频+文字放送,为你带来腾讯云企业级MySQL-Returning语法使用 【需求背景】 在一些数据库场景中,用户会在使用insert语句之后希望返回刚才所插入的数据行。一种实现方式是,将insert语句和select放到一个事务中执行。 腾讯云企业级MySQL(CDB)支持一种更简单的实现方式,就是使用returning语法,在insert语句后面,增加returning关键字,从而直接返回刚才所插入的数据行。 【操作演示】 可在哔哩哔哩【腾讯架构师】频道观看视频演示。下面以图文形式给大家简单展
腾讯数据库技术
2021-07-20
1.1K0
点击加载更多
社区活动
腾讯技术创作狂欢月
“码”上创作 21 天,分 10000 元奖品池!
Python精品学习库
代码在线跑,知识轻松学
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
技术创作特训营·精选知识专栏
往期视频·千货材料·成员作品 最新动态
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档