- 去年年底,我们的电商系统在双十一期间差点崩了。单机MySQL扛不住了,订单表都快到亿级了。紧急扩容、分库分表、上分布式事务…那段时间天天加班到凌晨。现在回过头来看,这次架构升级让我对数据库的理解上了一个台阶。今天就聊聊这个过程中的一些关键技术点,希望能帮到正在做类似改造的朋友们。 ACID特性:看似简单却处处是坑ACID这四个字母,面试必考,但真正在生产环境中把握好这些特性,没那么容易。 一... 去年年底,我们的电商系统在双十一期间差点崩了。单机MySQL扛不住了,订单表都快到亿级了。紧急扩容、分库分表、上分布式事务…那段时间天天加班到凌晨。现在回过头来看,这次架构升级让我对数据库的理解上了一个台阶。今天就聊聊这个过程中的一些关键技术点,希望能帮到正在做类似改造的朋友们。 ACID特性:看似简单却处处是坑ACID这四个字母,面试必考,但真正在生产环境中把握好这些特性,没那么容易。 一...
- 引言在数据库设计中,主键的选择直接影响系统性能、扩展性和数据一致性。作为开发者,我们常面临两种主流方案:自增ID(如MySQL的AUTO_INCREMENT)和UUID(通用唯一标识符)。 一、主键设计的核心挑战主键不仅是数据的唯一标识,更是数据库引擎执行效率的关键因素。其设计需平衡三大矛盾:存储效率:主键长度直接影响索引大小,例如InnoDB的聚簇索引将主键与行数据绑定存储写入性能:主键... 引言在数据库设计中,主键的选择直接影响系统性能、扩展性和数据一致性。作为开发者,我们常面临两种主流方案:自增ID(如MySQL的AUTO_INCREMENT)和UUID(通用唯一标识符)。 一、主键设计的核心挑战主键不仅是数据的唯一标识,更是数据库引擎执行效率的关键因素。其设计需平衡三大矛盾:存储效率:主键长度直接影响索引大小,例如InnoDB的聚簇索引将主键与行数据绑定存储写入性能:主键...
- 作者:watermelo37 CSDN万粉博主、华为云云享专家、阿里云专家博主、腾讯云、支付宝合作作者,全平台博客昵称watermelo37。 一个假装是giser的coder,做不只专注于业务逻辑的前端工程师,Java、Docker、Python、LLM均有涉猎。-----------------------------------------... 作者:watermelo37 CSDN万粉博主、华为云云享专家、阿里云专家博主、腾讯云、支付宝合作作者,全平台博客昵称watermelo37。 一个假装是giser的coder,做不只专注于业务逻辑的前端工程师,Java、Docker、Python、LLM均有涉猎。-----------------------------------------...
- 建杭1面:MySQL如何避免单点故障?1. 什么是单点故障?单点故障(Single Point of Failure, 简称 SPOF)是指在一个系统、网络或流程中,只有一个组件、节点或部分在其发生故障时会导致整个系统的功能中断或严重受限。换句话说,这个单一的组件是整个系统可靠性和可用性的关键,一旦它失效,系统就无法正常运行。单点故障的影响:系统停机:单点故障会导致整个系统或服务无法正常运行... 建杭1面:MySQL如何避免单点故障?1. 什么是单点故障?单点故障(Single Point of Failure, 简称 SPOF)是指在一个系统、网络或流程中,只有一个组件、节点或部分在其发生故障时会导致整个系统的功能中断或严重受限。换句话说,这个单一的组件是整个系统可靠性和可用性的关键,一旦它失效,系统就无法正常运行。单点故障的影响:系统停机:单点故障会导致整个系统或服务无法正常运行...
- 招行2面:Redis 为什么要RDB 和 AOF两种持久化方式?直接写日志不行吗?这篇文章,我们来分享 Redis是如何实现持久化以及Redis 为什么要采用 RDB 和 AOF两种持久化方式。1. 什么是持久化?持久化,Persistence,把数据(如内存中的对象)保存到可永久保存的存储设备中(如磁盘)。这样可以保证程序在服务器宕机后,重新启动不会丢失数据。2. 持久化方式Redis 的... 招行2面:Redis 为什么要RDB 和 AOF两种持久化方式?直接写日志不行吗?这篇文章,我们来分享 Redis是如何实现持久化以及Redis 为什么要采用 RDB 和 AOF两种持久化方式。1. 什么是持久化?持久化,Persistence,把数据(如内存中的对象)保存到可永久保存的存储设备中(如磁盘)。这样可以保证程序在服务器宕机后,重新启动不会丢失数据。2. 持久化方式Redis 的...
- 为什么说缓存是把双刃剑?1. 什么是缓存?简单来说,缓存就是用来存储数据的临时存储区域。想象一下,你去超市买东西,第一次去的时候需要拿出手机查价格,第二次再来买同样的东西,你可能就会直接记住价格,这样就节省了查找的时间。缓存的作用类似,存储那些频繁访问的数据,以减少重复计算或数据获取的时间。2. 为什么要用缓存?在实际工作中,使用缓存的主要目的有以下 4点:提高性能:因为缓存数据的载体都是一... 为什么说缓存是把双刃剑?1. 什么是缓存?简单来说,缓存就是用来存储数据的临时存储区域。想象一下,你去超市买东西,第一次去的时候需要拿出手机查价格,第二次再来买同样的东西,你可能就会直接记住价格,这样就节省了查找的时间。缓存的作用类似,存储那些频繁访问的数据,以减少重复计算或数据获取的时间。2. 为什么要用缓存?在实际工作中,使用缓存的主要目的有以下 4点:提高性能:因为缓存数据的载体都是一...
- MySQL的MVCC是什么?为什么需要MVCC?在高并发的数据库操作环境中,如何确保数据的一致性与隔离性,同时保证系统的高性能,成为数据库系统设计的核心问题之一。这篇文章,我们将深入探讨 MySQL 中 MVCC 的原理、实现、应用以及优化策略。1 什么是 MVCC多版本并发控制(Multi-Version Concurrency Control,简称 MVCC),它是一种数据库并发控制方法... MySQL的MVCC是什么?为什么需要MVCC?在高并发的数据库操作环境中,如何确保数据的一致性与隔离性,同时保证系统的高性能,成为数据库系统设计的核心问题之一。这篇文章,我们将深入探讨 MySQL 中 MVCC 的原理、实现、应用以及优化策略。1 什么是 MVCC多版本并发控制(Multi-Version Concurrency Control,简称 MVCC),它是一种数据库并发控制方法...
- 时序数据库(Time-Series Database, TSDB)是专门为存储和管理时间序列数据而设计的数据库系统,与关系数据库(RDBMS)和非关系数据库(NoSQL)在数据模型、查询方式、性能优化等方面有显著差异。以下是详细对比: 一、时序数据库的定义时序数据是按时间顺序记录的指标数据,具有以下特征:时间戳:每条数据必须包含时间字段(如2023-01-01 12:00:00)。指标值:记... 时序数据库(Time-Series Database, TSDB)是专门为存储和管理时间序列数据而设计的数据库系统,与关系数据库(RDBMS)和非关系数据库(NoSQL)在数据模型、查询方式、性能优化等方面有显著差异。以下是详细对比: 一、时序数据库的定义时序数据是按时间顺序记录的指标数据,具有以下特征:时间戳:每条数据必须包含时间字段(如2023-01-01 12:00:00)。指标值:记...
- 关系数据库(RDBMS)和非关系数据库(NoSQL)是两种核心的数据存储技术,它们在数据模型、设计理念、适用场景等方面存在显著差异。以下是两者的详细对比: 一、核心定义关系数据库(RDBMS)基于关系模型,数据以表格(二维表)形式存储,表与表之间通过外键关联。遵循ACID(原子性、一致性、隔离性、持久性)原则,保证事务的严格可靠性。代表产品:MySQL、PostgreSQL、Oracle、S... 关系数据库(RDBMS)和非关系数据库(NoSQL)是两种核心的数据存储技术,它们在数据模型、设计理念、适用场景等方面存在显著差异。以下是两者的详细对比: 一、核心定义关系数据库(RDBMS)基于关系模型,数据以表格(二维表)形式存储,表与表之间通过外键关联。遵循ACID(原子性、一致性、隔离性、持久性)原则,保证事务的严格可靠性。代表产品:MySQL、PostgreSQL、Oracle、S...
- 数据库索引是提高查询性能的重要工具,但它的使用需要权衡利弊。以下是数据库索引的主要优缺点分析: 一、索引的优点显著提高查询速度通过构建有序的数据结构(如B树、哈希表),索引能快速定位数据,避免全表扫描。适用场景:WHERE、JOIN、ORDER BY、GROUP BY 等操作。加速表连接(JOIN)外键字段建立索引后,关联查询效率大幅提升。保证数据唯一性主键索引和唯一索引能强制约束字段值的唯... 数据库索引是提高查询性能的重要工具,但它的使用需要权衡利弊。以下是数据库索引的主要优缺点分析: 一、索引的优点显著提高查询速度通过构建有序的数据结构(如B树、哈希表),索引能快速定位数据,避免全表扫描。适用场景:WHERE、JOIN、ORDER BY、GROUP BY 等操作。加速表连接(JOIN)外键字段建立索引后,关联查询效率大幅提升。保证数据唯一性主键索引和唯一索引能强制约束字段值的唯...
- 在数据库查询优化中,索引是提升性能的核心利器。然而,一个常见的陷阱是:看似简单的 OR 条件可能导致索引完全失效,引发全表扫描和性能断崖式下跌。 🔍 问题根源:为什么 OR 会让索引失效?当查询条件包含 OR 时,数据库优化器可能无法高效利用索引。例如:SELECT * FROM orders WHERE status = 'shipped' OR customer_id = 1001;即... 在数据库查询优化中,索引是提升性能的核心利器。然而,一个常见的陷阱是:看似简单的 OR 条件可能导致索引完全失效,引发全表扫描和性能断崖式下跌。 🔍 问题根源:为什么 OR 会让索引失效?当查询条件包含 OR 时,数据库优化器可能无法高效利用索引。例如:SELECT * FROM orders WHERE status = 'shipped' OR customer_id = 1001;即...
- 引言:高并发场景下的数据库性能瓶颈在电商秒杀、金融交易等高并发场景中,数据库长事务引发的锁竞争是典型的性能瓶颈。笔者曾参与某支付系统优化,发现超过 60% 的慢查询源于事务范围过大导致的锁等待。 一、事务与锁的共生关系ACID 的代价事务的原子性(Atomicity)和隔离性(Isolation)依赖锁机制实现,例如:BEGIN TRANSACTION; UPDATE accounts ... 引言:高并发场景下的数据库性能瓶颈在电商秒杀、金融交易等高并发场景中,数据库长事务引发的锁竞争是典型的性能瓶颈。笔者曾参与某支付系统优化,发现超过 60% 的慢查询源于事务范围过大导致的锁等待。 一、事务与锁的共生关系ACID 的代价事务的原子性(Atomicity)和隔离性(Isolation)依赖锁机制实现,例如:BEGIN TRANSACTION; UPDATE accounts ...
- 使用华为开发者空间-开发平台,通过开发平台提供的云函数、AI Agent能力实现We码会议助手从MCP Server部署到创建AI会议Agent;论文创新性地首次提出了在自下而上的优化器的基于成本的优化过程中添加布隆过滤器(Bloom Filter)的技术... 使用华为开发者空间-开发平台,通过开发平台提供的云函数、AI Agent能力实现We码会议助手从MCP Server部署到创建AI会议Agent;论文创新性地首次提出了在自下而上的优化器的基于成本的优化过程中添加布隆过滤器(Bloom Filter)的技术...
- 技术栈Appgallery connect开发准备上一篇文章中我们实现了项目端云一体化的升级,我们的数据后期就要从云侧的数据库去获取了,现在我们从头开始对项目进行端云一体化的改造。我们在首页已经把新人专享券抽离为公共组件现在我们继续进行功能开发,把这个组建的本地数据展示修改为端侧获取。功能分析我们把之前实现的首页功能拿出改造一下。我们在首页实现了新用户领券中心,数据结构就是 模块的标题、... 技术栈Appgallery connect开发准备上一篇文章中我们实现了项目端云一体化的升级,我们的数据后期就要从云侧的数据库去获取了,现在我们从头开始对项目进行端云一体化的改造。我们在首页已经把新人专享券抽离为公共组件现在我们继续进行功能开发,把这个组建的本地数据展示修改为端侧获取。功能分析我们把之前实现的首页功能拿出改造一下。我们在首页实现了新用户领券中心,数据结构就是 模块的标题、...
- 数据库中需要设置索引的字段在数据库设计中,合理设置索引可以显著提高查询性能,但过度索引也会影响写入性能。以下是通常需要设置索引的字段类型: 必须设置索引的字段主键(Primary Key)自动创建唯一索引用于唯一标识表中的每一行外键(Foreign Key)用于关联其他表的字段加速表连接操作经常用于查询条件的字段WHERE子句中频繁使用的字段例如:用户表的username、订单表的orde... 数据库中需要设置索引的字段在数据库设计中,合理设置索引可以显著提高查询性能,但过度索引也会影响写入性能。以下是通常需要设置索引的字段类型: 必须设置索引的字段主键(Primary Key)自动创建唯一索引用于唯一标识表中的每一行外键(Foreign Key)用于关联其他表的字段加速表连接操作经常用于查询条件的字段WHERE子句中频繁使用的字段例如:用户表的username、订单表的orde...
上滑加载中
推荐直播
-
AI编码实干派,“码”力全开2026/02/26 周四 15:00-16:30
谈宗玮/于邦旭/丁俊卿/陈云亮/王一男
【中国,深圳,2026年2月26日】,以“AI编码实干派,码力全开”为主题的华为云码道(CodeArts)代码智能体新春发布会在线上成功召开。华为云码道公测版正式发布,为开发者和企业提供具备工程化能力的智能编码解决方案。
回顾中 -
华为云码道-玩转OpenClaw,在线养虾2026/03/11 周三 19:00-21:00
刘昱,华为云高级工程师/谈心,华为云技术专家/李海仑,上海圭卓智能科技有限公司CEO
OpenClaw 火爆开发者圈,华为云码道最新推出 Skill ——开发者只需输入一句口令,即可部署一个功能完整的「小龙虾」智能体。直播带你玩转华为云码道,玩转OpenClaw
回顾中 -
华为云码道-AI时代应用开发利器2026/03/18 周三 19:00-20:00
童得力,华为云开发者生态运营总监/姚圣伟,华为云HCDE开发者专家
本次直播由华为专家带你实战应用开发,看华为云码道(CodeArts)代码智能体如何在AI时代让你的创意应用快速落地。更有华为云HCDE开发者专家带你用码道玩转JiuwenClaw,让小艺成为你的AI助理。
回顾中
热门标签