- 一、什么是Optimizer TraceEXPLAIN命令可以帮助您查看语句的执行计划,包括是否进行了全表扫描还是索引扫描,以及表的连接顺序等。但是EXPLAIN仅展示结果,并没有真正告诉MySQL为什么这么做。尤其是在客户问题中,经常会遇到执行计划不是最优的情况,但仅根据EXPLAIN的结果,是没办法分析并说清楚为什么最终的执行计划是这样的。为了解决这个问题,MySQL提供了一项执行计划跟... 一、什么是Optimizer TraceEXPLAIN命令可以帮助您查看语句的执行计划,包括是否进行了全表扫描还是索引扫描,以及表的连接顺序等。但是EXPLAIN仅展示结果,并没有真正告诉MySQL为什么这么做。尤其是在客户问题中,经常会遇到执行计划不是最优的情况,但仅根据EXPLAIN的结果,是没办法分析并说清楚为什么最终的执行计划是这样的。为了解决这个问题,MySQL提供了一项执行计划跟...
- 1. 技术背景数据库压缩是一种数据管理技术,通过特定的压缩算法将数据库中的数据进行压缩,以减少存储空间占用,从而达到显著降低成本的效果。社区MySQL InnoDB的压缩功能主要针对长期存储的冷数据,对于频繁访问的热数据,由于可能带来高达50%的性能影响,因此在生产环境中应用较少。现有的压缩机制,如表压缩和页面压缩,难以在不影响业务正常运行的情况下,提供针对特定字段的自定义压缩方式的灵活性。... 1. 技术背景数据库压缩是一种数据管理技术,通过特定的压缩算法将数据库中的数据进行压缩,以减少存储空间占用,从而达到显著降低成本的效果。社区MySQL InnoDB的压缩功能主要针对长期存储的冷数据,对于频繁访问的热数据,由于可能带来高达50%的性能影响,因此在生产环境中应用较少。现有的压缩机制,如表压缩和页面压缩,难以在不影响业务正常运行的情况下,提供针对特定字段的自定义压缩方式的灵活性。...
- 1. 背景介绍用户在执行DDL(Data Definition Language,数据定义语言)操作的时候,如果目标表存在未提交的长事务或大查询,DDL将持续等待获取MDL-EXCLUSIVE(X)锁。在华为云TaurusDB中,由于MDL-X锁具有最高优先级,DDL在持续等待MDL-X锁的过程中,将阻塞目标表上所有的新事务,这将导致业务连接的堆积和阻塞,甚至可能会造成整个业务系统的崩溃。T... 1. 背景介绍用户在执行DDL(Data Definition Language,数据定义语言)操作的时候,如果目标表存在未提交的长事务或大查询,DDL将持续等待获取MDL-EXCLUSIVE(X)锁。在华为云TaurusDB中,由于MDL-X锁具有最高优先级,DDL在持续等待MDL-X锁的过程中,将阻塞目标表上所有的新事务,这将导致业务连接的堆积和阻塞,甚至可能会造成整个业务系统的崩溃。T...
- 1. 背景介绍为了满足数据库在高并发请求下的事务隔离性和一致性要求,TaurusDB使用MDL(metadata lock,元数据锁)机制来管理对数据库对象的并发访问。使用MDL可以避免以下几类问题的发生:1)读取结果的不一致性:在可重复读(Repeatable Read,简称RR)隔离级别下,一个事务中的第一次查询可能返回某些结果,但在第二次查询时,由于表被另一个事务删除,导致查询结果为空... 1. 背景介绍为了满足数据库在高并发请求下的事务隔离性和一致性要求,TaurusDB使用MDL(metadata lock,元数据锁)机制来管理对数据库对象的并发访问。使用MDL可以避免以下几类问题的发生:1)读取结果的不一致性:在可重复读(Repeatable Read,简称RR)隔离级别下,一个事务中的第一次查询可能返回某些结果,但在第二次查询时,由于表被另一个事务删除,导致查询结果为空...
- 1. 背景介绍在生产环境中,客户常对InnoDB表的物理文件管理机制存在疑惑,特别是关于表数据被大量删除时产生的碎片页问题。具体来说,当InnoDB表中的大量数据被删除时,原本连续存储的数据页之间会留下空闲页,这些空闲页就像碎片一样,使得表文件变得不再紧凑,我们称之为碎片页。那么,为什么InnoDB表数据被大量删除时会产生碎片页?碎片页能否被新插入的数据,或者被其他表复用呢?本文将通过深入剖... 1. 背景介绍在生产环境中,客户常对InnoDB表的物理文件管理机制存在疑惑,特别是关于表数据被大量删除时产生的碎片页问题。具体来说,当InnoDB表中的大量数据被删除时,原本连续存储的数据页之间会留下空闲页,这些空闲页就像碎片一样,使得表文件变得不再紧凑,我们称之为碎片页。那么,为什么InnoDB表数据被大量删除时会产生碎片页?碎片页能否被新插入的数据,或者被其他表复用呢?本文将通过深入剖...
- 1.背景介绍云上客户经常出现误删表、删库等操作。针对这类问题,业界普遍提供库表级恢复方案。首先,在后台将选中时间点的全量数据和增量数据恢复至一个临时实例,然后,自动导出用户需要恢复的表,再将这些表恢复至原实例,以此降低对原实例的影响。然而,为了确保数据完整性,这一过程通常涉及整个实例的完整恢复,较长的恢复时间导致客户对该方案不甚满意。尤其是当恢复的表数据量远小于整个实例时,如恢复3T实例中仅... 1.背景介绍云上客户经常出现误删表、删库等操作。针对这类问题,业界普遍提供库表级恢复方案。首先,在后台将选中时间点的全量数据和增量数据恢复至一个临时实例,然后,自动导出用户需要恢复的表,再将这些表恢复至原实例,以此降低对原实例的影响。然而,为了确保数据完整性,这一过程通常涉及整个实例的完整恢复,较长的恢复时间导致客户对该方案不甚满意。尤其是当恢复的表数据量远小于整个实例时,如恢复3T实例中仅...
- 背景介绍某一部分特定比例的客户群体,对数据库的读写性能要求并不高。相比之下,他们反而更关注数据写入磁盘时的压缩能力,通过减小存储空间,来降低数据库的使用成本。TaurusDB透明压缩特性就是通过在存储过程中引入轻微延迟,换取更小的存储空间,进而满足客户降低存储成本的需求。本文主要从透明压缩特性的使用开启方法、实现原理、性能优化以及性能影响评估等这几个方面来进行介绍。使用方法新实例的来源分为两... 背景介绍某一部分特定比例的客户群体,对数据库的读写性能要求并不高。相比之下,他们反而更关注数据写入磁盘时的压缩能力,通过减小存储空间,来降低数据库的使用成本。TaurusDB透明压缩特性就是通过在存储过程中引入轻微延迟,换取更小的存储空间,进而满足客户降低存储成本的需求。本文主要从透明压缩特性的使用开启方法、实现原理、性能优化以及性能影响评估等这几个方面来进行介绍。使用方法新实例的来源分为两...
- 1. 技术背景SaaS(Software as a Service,软件即服务)在云上部署,可以将分散的计算存储资源集中利用,并让原来的用户都到云上来共享这些资源。云服务厂商为此提供了一种解决方案,一个实例可支持多个租户的数据存储与访问,降低了SaaS和租户的使用成本。基于此,云厂商还需要提供资源隔离的能力,以确保SaaS租户的数据安全。为了满足这个需求,多租户技术应运而生。该技术旨在解决如... 1. 技术背景SaaS(Software as a Service,软件即服务)在云上部署,可以将分散的计算存储资源集中利用,并让原来的用户都到云上来共享这些资源。云服务厂商为此提供了一种解决方案,一个实例可支持多个租户的数据存储与访问,降低了SaaS和租户的使用成本。基于此,云厂商还需要提供资源隔离的能力,以确保SaaS租户的数据安全。为了满足这个需求,多租户技术应运而生。该技术旨在解决如...
- 1. 背景介绍元数据(Metadata)是用来描述数据的数据。如果没有元数据,我们就无法理解和使用数据库中存储的数据。数据字典(DD)是 MySQL 维护元数据的模块。然而,在实际操作中,MySQL 是通过表定义对象 TABLE 与存储引擎进行交互来处理表数据。每个TABLE内有一个handler,用于指示所使用的引擎对象。此外,TABLE对象还存储了操作数据的必备信息,如表及字段的特征、元... 1. 背景介绍元数据(Metadata)是用来描述数据的数据。如果没有元数据,我们就无法理解和使用数据库中存储的数据。数据字典(DD)是 MySQL 维护元数据的模块。然而,在实际操作中,MySQL 是通过表定义对象 TABLE 与存储引擎进行交互来处理表数据。每个TABLE内有一个handler,用于指示所使用的引擎对象。此外,TABLE对象还存储了操作数据的必备信息,如表及字段的特征、元...
- 1. 背景介绍数据库管理系统定期对数据进行备份,旨在防止因故障或错误导致的数据损坏,确保系统在发生突发事件后可以快速恢复。同时,还便于追踪历史版本,为数据库迁移和升级提供支撑。评估一个数据库系统的备份与恢复能力,备份时间和恢复时间是两个重要指标。备份时间代表完成整个备份过程所需的时间,较短的备份时间通常会减少对系统性能的影响;恢复时间则指从已备份数据中恢复数据到对外提供正常服务所需的时间,较... 1. 背景介绍数据库管理系统定期对数据进行备份,旨在防止因故障或错误导致的数据损坏,确保系统在发生突发事件后可以快速恢复。同时,还便于追踪历史版本,为数据库迁移和升级提供支撑。评估一个数据库系统的备份与恢复能力,备份时间和恢复时间是两个重要指标。备份时间代表完成整个备份过程所需的时间,较短的备份时间通常会减少对系统性能的影响;恢复时间则指从已备份数据中恢复数据到对外提供正常服务所需的时间,较...
- 一、背景MySQL 8.0版本引入了全局统一的数据字典(Data Dictionary, DD),通过集中、高效、事务性的方式管理元数据(如表、列、索引等定义),不仅简化了管理流程,也对性能和并发性有较大的帮助。此外,升级到MySQL 8.0版本后,当涉及数据库中元数据对象(如表、索引、视图或存储过程等)发生定义更改或者某些新特性涉及对系统表的修改等情况时,都可能需要更新数据字典以提供支持。... 一、背景MySQL 8.0版本引入了全局统一的数据字典(Data Dictionary, DD),通过集中、高效、事务性的方式管理元数据(如表、列、索引等定义),不仅简化了管理流程,也对性能和并发性有较大的帮助。此外,升级到MySQL 8.0版本后,当涉及数据库中元数据对象(如表、索引、视图或存储过程等)发生定义更改或者某些新特性涉及对系统表的修改等情况时,都可能需要更新数据字典以提供支持。...
- 我们来看这样一个面试场景。面试官:“在你们的项目中,用到多表关联查询了吗?”候选人:“嗯,每个项目都用到了。”面试官听了似乎有些愤怒,说:“多表关联查询这么慢,为什么你们还要用它,那你们项目的性能如何保障呢?”面对这突如其来地质问,候选人明显有些慌了,解释道:“主要是项目周期太紧张了,这样写在开发效率上能高一些,后期我们会慢慢进行优化的。”面试官听了,带着三分理解、三分无奈、四分恨铁不成钢地... 我们来看这样一个面试场景。面试官:“在你们的项目中,用到多表关联查询了吗?”候选人:“嗯,每个项目都用到了。”面试官听了似乎有些愤怒,说:“多表关联查询这么慢,为什么你们还要用它,那你们项目的性能如何保障呢?”面对这突如其来地质问,候选人明显有些慌了,解释道:“主要是项目周期太紧张了,这样写在开发效率上能高一些,后期我们会慢慢进行优化的。”面试官听了,带着三分理解、三分无奈、四分恨铁不成钢地...
- 一、背景介绍在数据库运维工作中,慢SQL是一个常见问题。导致慢SQL问题的原因很多,常见的包括资源瓶颈(CPU、磁盘、网络等资源打满)、不合理的参数配置、SQL语句自身问题以及SQL代价估算不准确等。其中,SQL代价估算不准确是慢SQL的TOP根因之一。这类问题的复杂性通常与客户业务强相关,且往往需要详细查看执行计划才能确定错误原因。相比之下,其他慢SQL场景则通过资源监控、参数对比等手段,... 一、背景介绍在数据库运维工作中,慢SQL是一个常见问题。导致慢SQL问题的原因很多,常见的包括资源瓶颈(CPU、磁盘、网络等资源打满)、不合理的参数配置、SQL语句自身问题以及SQL代价估算不准确等。其中,SQL代价估算不准确是慢SQL的TOP根因之一。这类问题的复杂性通常与客户业务强相关,且往往需要详细查看执行计划才能确定错误原因。相比之下,其他慢SQL场景则通过资源监控、参数对比等手段,...
- 1. EXPLAIN ANALYZE可以解决什么问题MySQL 8.0.18 版本开始支持查询分析工具EXPLAIN ANALYZE,该工具不仅会实际执行SQL语句,还会展示SQL语句详细的执行信息,包含执行算子(Iterator)粒度的扫描行数、执行耗时、迭代次数等信息。EXPLAIN ANALYZE工具是MySQL EXPLAIN FORMAT=TREE 功能的扩展,除了展示执行计划和代... 1. EXPLAIN ANALYZE可以解决什么问题MySQL 8.0.18 版本开始支持查询分析工具EXPLAIN ANALYZE,该工具不仅会实际执行SQL语句,还会展示SQL语句详细的执行信息,包含执行算子(Iterator)粒度的扫描行数、执行耗时、迭代次数等信息。EXPLAIN ANALYZE工具是MySQL EXPLAIN FORMAT=TREE 功能的扩展,除了展示执行计划和代...
- 为大家介绍GaussDB逻辑解码的技术原理;介绍在华为云开发者空间中如何使用TiDB Dumpling 从MySQL中的导出数据库SQL文件 ,并通过TiDB Lightning 从 MySQL SQL 文件迁移数据到 TiDB;昇腾CANN 8.0正式发布,多项核心技术引领大模型原生创新;以RDS for MySQL为研究对象,对于审计日志进行功能介绍和原理解析; 为大家介绍GaussDB逻辑解码的技术原理;介绍在华为云开发者空间中如何使用TiDB Dumpling 从MySQL中的导出数据库SQL文件 ,并通过TiDB Lightning 从 MySQL SQL 文件迁移数据到 TiDB;昇腾CANN 8.0正式发布,多项核心技术引领大模型原生创新;以RDS for MySQL为研究对象,对于审计日志进行功能介绍和原理解析;
上滑加载中
推荐直播
-
OpenHarmony应用开发之网络数据请求与数据解析
2025/01/16 周四 19:00-20:30
华为开发者布道师、南京师范大学泰州学院副教授,硕士研究生导师,开放原子教育银牌认证讲师
科技浪潮中,鸿蒙生态强势崛起,OpenHarmony开启智能终端无限可能。当下,其原生应用开发适配潜力巨大,终端设备已广泛融入生活各场景,从家居到办公、穿戴至车载。 现在,机会敲门!我们的直播聚焦OpenHarmony关键的网络数据请求与解析,抛开晦涩理论,用真实案例带你掌握数据访问接口,轻松应对复杂网络请求、精准解析Json与Xml数据。参与直播,为开发鸿蒙App夯实基础,抢占科技新高地,别错过!
回顾中 -
Ascend C高层API设计原理与实现系列
2025/01/17 周五 15:30-17:00
Ascend C 技术专家
以LayerNorm算子开发为例,讲解开箱即用的Ascend C高层API
回顾中
热门标签