用途:帮助团队就数据库分片做出正确决策,明确何时分片、何时不分片,以及分片会破坏哪些能力。
主要能力:提供分片前的替代方案清单(索引与 EXPLAIN ANALYZE、查询优化、连接池如 PgBouncer、Redis 缓存、只读副本、表分区、垂直扩容),指出只有全部不足时才考虑分片;列出分片后变昂贵或不可行的操作,如跨分片 JOIN、跨分片事务、全局 COUNT、跨分片唯一索引、无分片键的 ORDER BY LIMIT;给出分片不安全代码的识别信号;讲解分片键选择(租户/组织 ID、用户 ID、主键哈希、地理区域)的适用与风险,以及低基数、分布倾斜、不在高频查询 WHERE 中、随时间变化等红旗;提供租户分片、读存储处理跨分片查询、热点租户隔离等模式;并列出过早分片、分片键错误、跨实体 JOIN 等反模式。
使用方式:作为技能在数据库架构设计、分片键选择或代码审查时调用,按清单逐项评估。资料未提供具体安装命令或调用步骤。
适用场景:多租户 SaaS、用户维度应用、需要判断是否分片的系统设计评审。
限制:资料指出数据量低于 1TB 或写入低于每秒 1 万次时几乎不需要分片;分片内强一致、跨分片最多最终一致;跨分片操作需 saga 或乐观并发;幂等键与被保护数据须在同一分片。具体收费、平台与效果暂未提供。