文章讨论了通过优化TiDB数据库和WordPress架构来降低每月账单。作者发现高负载主要源于冗余数据库查询和未使用的缓存。引入APCu对象缓存和优化请求处理后,请求单位(RU)从110降至约20,显著降低了费用,尽管仍有少量固定开销,但整体优化效果显著,节省了成本。
本文介绍了TiDB集群的四个核心组件及其功能:TiDB负责SQL解析和请求路由,TiKV处理分布式事务和数据存储,PD管理元数据和调度,TiFlash提供列存分析副本。理解各组件的独立性和复杂性有助于排查性能问题。接下来将深入探讨TiKV的具体实现与机制。
本文讨论了TiDB中SQL处理的关键步骤,重点介绍了如何将SQL请求路由到具体的Region。TiDB通过distsql模块将逻辑key范围映射到物理Region,并生成Coprocessor任务。文章还探讨了Region路由中的错误处理机制和重试策略,以及不同下推协议(Cop、BatchCop、MPP)的路由差异。最后,强调了优化器选择与路由层之间的独立性,以及点查与范围扫描的效率差异。
过去五年,中国开源数据库产品如OceanBase和TiDB采用了不同的开源协议。OceanBase选择MulanPubL-2.0,旨在防止竞争并鼓励社区贡献;而TiDB则选择Apache 2.0,以便于国际化和云市场的集成。总体来看,Apache 2.0因其友好性和低法律风险,成为主流选择。
本文探讨了金融账务数据库的设计与选型,强调服务级别协议(SLA)在数据库选择中的重要性。分析了PostgreSQL、MySQL、OceanBase等数据库的优缺点及适用场景,特别是在高并发和强一致性方面的表现。提出了分片策略、热点账户处理和审计合规等设计原则,强调数据完整性和归档的重要性,并提供了选型建议和实施清单,以帮助工程师做出合理决策。
HTAP(混合事务/分析处理)旨在将OLTP和OLAP系统合并,实现实时数据更新和高效分析。通过行列双引擎、行列一体存储和Lakehouse等方案,HTAP解决了传统架构中的数据一致性和性能问题。文章探讨了不同HTAP系统的工作负载隔离、新鲜度边界及评估方法,并提供了选型决策树,帮助企业选择合适的HTAP解决方案。
本文介绍了如何利用mem9和TiDB构建本地私有记忆系统OpenClaw。该系统通过mem9实现自动记忆注入和跨代理共享,解决了AI代理记忆无法共享和自动注入的问题,确保数据保留在本地,增强隐私和自主权,最终实现高效的记忆管理,支持多代理逻辑隔离。
本文讨论了TiDB向量查询的优化实践,通过将查询分为两阶段(先获取TopN ID和距离,再回表获取详情),显著降低了RU和耗时。虽然将locale统一为小写和使用locale = ?是必要的,但未能使查询走索引路径。最终优化方案强调了数据规范化和两阶段查询的重要性。
在人工智能时代,数据基础设施成为企业竞争优势的关键。TiDB是一种分布式开源SQL数据库,能够支持数百万个AI代理高效处理数据。传统数据库难以应对AI工作负载,而TiDB通过虚拟化架构和高效的元数据管理满足了这一需求。未来,数据库将优先为AI代理设计,支持无技术背景用户的全栈AI体验。
I am not intentionally trying to upset anyone with this blog post or minimize the efforts of many brilliant people whom I admire. However, I connected with several people over the 2025 holidays...
TiDB 的 Coprocessor 模块实现了计算下推,将部分计算逻辑下推至 TiKV 节点,从而减少网络传输并提升性能。通过 copTask 和 copIterator,TiDB 能并行处理数据请求,优化查询效率。文章详细解析了 Coprocessor 的架构、核心数据结构及请求执行流程。
本文讨论了TiDB中的索引类型及其分类,包括按数据结构、存储内容、字段数量和唯一性分类。介绍了谓词下推的概念及其在查询优化中的重要性,通过提前过滤数据提升性能。同时讲解了天际线剪枝算法在多个索引中筛选最佳候选索引的方法,并提到基于成本的索引选择策略。
本文探讨了TiDB中的AST、逻辑计划和物理计划。AST是SQL语句的抽象语法树,帮助数据库解析SQL。逻辑计划通过优化AST生成,物理计划则涉及具体的数据操作。文章还介绍了火山模型及其优缺点,强调了从SQL到执行计划的优化过程。
本文分析了TiDB执行INSERT语句的过程,包括解析、编译和执行等步骤。INSERT操作涉及构建执行器、处理数据编码和生成键值对,最终将数据写入TiKV。文章详细介绍了记录键和索引键的编码格式及相关代码位置。
本文概述了MySQL通信协议的基本结构及TiDB的实现。该协议基于TCP/IP,采用请求-响应模型,分为连接建立、命令执行和连接关闭三个阶段,强调了半双工通信的特点及其对连接池管理的影响。
本文概述了TiDB的请求处理流程,从main函数开始,分析了服务监听、连接建立、握手、SQL解析、逻辑优化和物理执行等步骤,并提到预编译语句的性能优势,因其避免了重复编译和优化。
TiDB Lightning 是 TiDB 的数据导入工具,支持快速导入 TB 级数据。其架构模块化,核心功能包括导入控制、服务器模式和 Web 界面。导入流程分为七个步骤,采用并发控制,支持多种后端模式。检查点系统确保可靠性,错误管理系统处理异常情况,并提供性能优化技术。
本文探讨了京东供应链计划中Tidb与Clickhouse的瓶颈及解决方案。通过将业务配置数据同步至Clickhouse,并使用SQL聚合查询,显著提升了查询速度,降低了内存占用,解决了系统稳定性问题,从而实现了更高效的查询性能和用户体验。
在TiDB Cloud v7.5.2环境中,通过分析执行计划、添加索引和重写SQL(使用EXISTS和UNION),将复杂评论查询的执行时间从40秒优化至11毫秒,为解决慢SQL问题提供了实战参考。
可观测性是分布式系统成功的关键。本文探讨如何通过分析算子执行信息来优化SQL性能,利用`explain analyze`语句获取执行信息,帮助架构师定位性能问题。通过案例分析查询延时抖动及算子并发度对性能的影响,强调执行信息在性能诊断中的重要性。未来TiDB将进一步丰富执行信息,以提升系统可观测性。
完成下面两步后,将自动完成登录并继续当前操作。