SuperAPI AI 工具集

database

数据与分析

查看项目

更新于 10-16 06:04

技能介绍

该技能围绕数据库开发的设计、优化与管理,汇总了 SQL 与 NoSQL 数据库的常见实践。

【用途】 面向数据库架构设计、查询性能优化、数据迁移和日常管理,帮助开发者遵循规范化、索引和事务等方面的最佳实践。

【主要能力】

  1. 架构设计:涵盖 1NF/2NF/3NF 规范化,数据类型选择(如 BIGINT、DECIMAL、JSONB、TIMESTAMPTZ),以及一对多、多对多(中间表)、一对一关系建模,并提供 MySQL 与 PostgreSQL 的示例。
  2. 索引:介绍 B-Tree、复合索引(最左前缀规则)、唯一索引、部分索引、表达式索引、全文索引,以及 PostgreSQL 的 GIN 索引,并给出索引策略与查看方式。
  3. 查询优化:通过 EXPLAIN / EXPLAIN ANALYZE 分析执行计划,给出 SELECT *、OR 条件、索引列上使用函数、前导通配符 LIKE 等常见反模式及替代写法,并说明 N+1 问题的 JOIN 与子查询解决方式。
  4. 迁移:迁移最佳实践,包括事务包裹、并发建索引(CREATE INDEX CONCURRENTLY)、安全重命名,以及添加 NOT NULL 列的分步模式和零停机重命名表思路,同时提供回滚脚本示例。
  5. 性能:连接池配置(如 Node.js 的 pg 连接池)、游标分页与 keyset 分页替代大偏移 OFFSET、批量插入与 PostgreSQL COPY 批量加载。
  6. 事务:ACID 属性、隔离级别设置,以及通过统一加锁顺序预防死锁。
  7. NoSQL 模式:MongoDB 的嵌入与引用取舍、索引与文本搜索;Redis 的缓存、计数器与限流模式。
  8. 备份与监控:mysqldump/mysql、pg_dump/pg_restore、pg_basebackup 等命令,慢查询日志、运行中查询与表大小查看。

【使用方式】 以 SQL 语句、配置片段和命令行示例形式呈现,可直接参考并应用到 MySQL、PostgreSQL、MongoDB、Redis 等环境,示例涉及 EXPLAIN、ALTER TABLE、COPY、pg_dump、连接池参数等具体用法。

【适用场景】 后端与数据工程中的库表设计、索引规划、慢查询排查、数据迁移、事务与并发控制、NoSQL 数据建模以及备份恢复和监控。

【限制】 资料未提供该技能的安装命令、运行方式、收费模式或版本要求等信息,暂未提供。