使用 TiDB 扩展数据库:AWS 社区日 班加罗尔 2025
Source: Dev.to
高级解决方案架构师 Ankit Kapoor (TiDB) – “从创业到扩张:您的数据库成长之旅”
如果你曾经为数据库扩展而苦恼,这篇文章适合你。
我们共同面临的问题
手动配置的噩梦
- 必须手动配置分片映射。
- 跨分片搜索给应用代码增加了不必要的复杂性。
- 在高负载下,并发限制导致行级锁定。
- 大量日常维护任务消耗宝贵时间。
垂直扩展遇到瓶颈
- 互斥锁争用形成瓶颈。
- 增长受共享资源瓶颈限制。
- 普通硬件会出现 OOM 问题且 CPU 利用率低。
影响性能的问题
- 写入仍是瓶颈,而读取可以扩展。
- 只能实现最终一致性。
- 分析查询在基于行的存储上表现不佳。
- 语义搜索速度慢。
听起来熟悉吗?我们大多数人都经历过——这也是为什么…
什么是分布式 SQL?
分布式 SQL 并非 只是一个流行词。它融合了两者的优势:
- NoSQL 数据库的水平扩展。
- 关系型数据库的事务保证(ACID)。
可扩展性 + ACID 合规性 = 强大的组合。
进入 TiDB:开源解决方案
为什么 TiDB 吸引了我的注意
- 成立时间: 2015 – 100 % 开源。
- GitHub: 38 k+ ⭐ 显示出强大的开发者兴趣。
- 贡献者: 800 + 人持续改进。
- 采用者: 10 k + 全球用户,8 k + 活跃 Slack 用户。
大牌用户: Pinterest、CAPCOM、Conga、Bolt、Ninja,以及遍布 25 个国家的 > 4 k 企业采用者。
TiDB 工作原理 – 架构简述
TiDB 的架构分为 四个主要组件:
-
计算层
- 处理 SQL 处理与查询优化。
- 与 MySQL‑compatible(迁移的巨大优势!)。
-
行存储
- 分布式键‑值存储。
- 适用于具有强一致性的 OLTP 工作负载。
-
列式存储
- 在事务数据上实现实时分析。
- 使用列式引擎进行分析查询。
-
Placement Driver (PD)
- 管理元数据。
- 自动平衡节点间的数据分布。
关键优势: 存储和计算完全解耦,允许独立扩展。
TiDB 与传统数据库 – 真正的区别
| 传统数据库 | TiDB |
|---|---|
| 单主配置。 只读副本使用事务日志复制进行读取;只有一个实例负责写入。 | 多个 TiDB 实例同时处理 读写,并保持 ACID 保证。 |
| 计算层与存储耦合。 | 无状态、水平可扩展的计算层。 |
| 存储扩展受限。 | TiKV(存储层)通过大量副本实现水平可扩展。 |
对 DBA 的意义
- 水平扩展: 自动分片和无缝扩容——无需人工干预。
- 99.99 % 可用性: 自动故障转移和自愈机制确保数据可访问。
- 混合工作负载: AI、分析和事务工作负载可在同一数据库上运行。
- 强一致性: ACID 事务,保证全局数据完整性。
- 安全性: 企业级加密,传输中和静止时均受保护。
- MySQL 兼容性: 为现有 MySQL 用户提供简易迁移路径。
- 多云: 可部署在任意首选云平台上。
- 100 % 开源: 透明、社区驱动的开发。
运维简化的优势
TiDB 附带 集成的 Grafana 与 Prometheus 仪表盘——开箱即用的即时监控、性能指标和健康数据,无需额外配置。
对于缺乏专职 DevOps 资源的团队而言,这是一项改变游戏规则的优势。
AWS 上的三种部署选项
| 选项 | 描述 | 定价 | 可用性 |
|---|---|---|---|
| TiDB Cloud Serverless | 全托管,轻松扩展。 | 按需付费。 | 99.99 %(当前 99.9 %)。 |
| TiDB Cloud Dedicated | 全托管,高性能。 | 订阅起价为 $2 / hour(可享批量折扣)。 | 99.99 %。 |
| TiDB Self‑Managed | 自行管理,最大控制。 | 定制价格。 | 提供高级支持。 |
结论
AWS Community Day Bangalore 会议 重新塑造了我对数据库架构的看法。传统数据库多年来一直表现良好,但现代应用程序需要更多。TiDB 提供真正的可扩展性 且不牺牲 SQL 或 ACID 保证。
- 已在大型企业中得到验证。
- 开源且可用于生产环境。
如果您当前的数据库已达到扩展限制——或您正在设计必须增长的新系统——TiDB 应该列入您的评估清单。
AWS Community Day Bangalore 继续提供来自专业人士的深刻、真实的内容,帮助他们应对真实的挑战。
会议亮点
像 Ankit 的会议提醒我们社区聚会的重要性,因为它们为我们提供了可能本来不会遇到的解决方案。
参考资料
事件
- 名称: AWS Community Day Bangalore 2025
- 主题: 使用 TiDB 扩展数据库
- 日期: 2025年5月23日
- 地点: Conrad, Bengaluru
亦发布于
- AWS Builder Center
- Hashnode