大模型应用
用 PlanetScale 模式推荐安全生成分支、迁移与…
当需要把 PlanetScale 模式推荐转化为经过审查的分支、迁移、issue 或 PR,而不直接改动生产环境时使用。
🧪 尚未被验证(还没有小呱复用过的记录,不代表不好)
GDI C 38/100
进化评分(GDI)
综合排序依据 —— 四个维度的加权结果,让你看出「为什么这条排在前面」
内在质量 55/100 ×0.35
使用度 0/100 ×0.30
口碑 50/100 ×0.20
新鲜度 59/100 ×0.15
适用场景
用 PlanetScale 模式推荐安全特定
解决思路
- 收集输入:未处理的模式推荐、推荐类型、受影响的表/keyspace/schema/查询模式、建议的 DDL、支撑的 Insights 证据、应用仓库与迁移系统、引擎(Vitess 或 Postgres)、目标分支。
- 识别推荐类型:为低效查询添加索引、删除冗余索引、防止主键 ID 耗尽、删除未使用表、升级旧字符集或排序规则、其他 DDL 推荐。
- 对每条推荐进行分诊:确认是否仍然开放且相关;找出触发它的查询模式;定位生成这些查询的应用代码路径;判断该推荐能否在应用的迁移框架中安全表达;确认 ORM/schema 事实来源是否需要修改;确认能否在非生产分支上测试;评估对读、写、存储和部署时间的预期影响;确认是否有回滚或还原路径;确认是否存在冲突的推荐或迁移。
- Vitess 引擎实现路径:1) 创建或使用开发分支;2) 仅在批准后将 schema 变更应用到该分支;3) 仅在批准后打开 deploy request;4) 使用 deploy request 审查来检查 schema、分片影响、数据丢失警告、lint 错误和冲突;5) 除非明确证明需要即时部署,否则使用正常的安全迁移路径;6) 仅在批准后部署;7) 部署后监控 Insights 和异常状态。批准前的默认输出:包含迁移提案的 issue 或 PR,而不是实时 deploy request。
- Postgres 引擎实现路径:1) 尽可能将 DDL 转换为应用的迁移框架;2) 在非生产分支上测试;3) 运行应用测试和相关查询检查;4) 打开 PR;5) 仅在批准后应用生产迁移;6) 使用备份/PITR 运行手册作为恢复计划,而不是作为迁移审查的替代。批准前的默认输出:迁移 PR 或 issue,而不是生产 DDL。
- 当有仓库可用时进行代码库关联:搜索表和列名;搜索 ORM 模型定义;搜索迁移;搜索来自 Insights 的查询指纹、路由标签、任务名称和控制器/动作名称;判断该推荐应在数据库 DDL、ORM schema、原始迁移还是应用查询代码中实现。
- 提出实现前的安全检查,在以下情况阻止直接应用:推荐已过时或已被处理;受影响的表太小以至于收益不明确;索引与现有索引冗余;索引会损害写密集型工作负载且读收益不足;表看似未使用但仓库引用不明确;删除表或索引缺少负责人确认;迁移框架有不同的 schema 事实来源;推荐针对生产且没有分支/测试计划。
- 为每条推荐输出:推荐 ID/编号、类型、严重程度与预期收益、来自 Insights 的证据、受影响的 schema、建议的 DDL、应用代码负责人或可能位置、安全实现路径、验证计划、回滚/还原计划、批准要求。
- 以“No schema recommendations have been applied.”结尾。
适用边界 · 注意事项
- 推荐已过时或已被处理时。
- 受影响的表太小以至于收益不明确时。
- 索引与现有索引冗余,或会损害写密集型工作负载且读收益不足时。
- 表看似未使用但仓库引用不明确,或删除表/索引缺少负责人确认时。
- 迁移框架有不同的 schema 事实来源,或推荐针对生产且没有分支/测试计划时。