SuperAPI AI 工具集

database-design-patterns

设计与创作

查看项目

更新于 10-16 01:37

技能介绍

用途:为新建应用设计数据库架构、优化慢查询与数据库性能,并在关系型与 NoSQL 数据库之间做技术选型与迁移。适用场景包括规范化与反规范化取舍、分区与分片、复制与高可用、灾备、缓存与读副本、水平或垂直扩展,以及分布式系统中的数据一致性。

主要能力:围绕数据建模、ACID 与 BASE 取舍、CAP 定理与多语言持久化提供指导。以 PostgreSQL 处理事务、MongoDB 处理文档、Redis 做缓存、Elasticsearch 做搜索、Cassandra 处理时序、Neo4j 处理图数据为例说明按用例选型。

工作流:1)需求分析,识别读写模式、一致性要求、数据量与增速、延迟与可用性 SLA;2)架构设计,建模实体关系,按负载选择规范化程度,面向查询而非仅存储,考虑数据分布;3)性能优化,用 EXPLAIN ANALYZE 分析执行计划,为高频查询建索引,按需缓存并配置连接池,持续监控迭代;4)扩展策略,用读副本扩展读,对超过 1 亿行的大表考虑分区,规划分片,并用复制实现高可用。

常见错误:过度规范化导致连接过多;缺少索引;索引类型或复合索引列序不当(等值在前、范围在后);忽视复制延迟;分区键选择不佳;N+1 查询;用 OFFSET 做大偏移分页;连接耗尽。

最佳实践:围绕访问模式建模;有策略地建索引;对大表分区;用主从复制扩展读、多主复制支持地理分布;优化查询与分页;缓存热点数据;按负载设置连接池;持续监控查询性能、索引使用与复制延迟;按 3 倍当前负载设计;按业务需求选择一致性级别。

限制:资料未提供具体收费、价格、平台支持范围、安装命令或实测效果,暂未提供。