恒美微站 Logo 恒美微站
  • 首页
  • 关于我们
  • 建站服务
  • 主题模板
  • 案例展示
  • 资讯中心
  • 联系我们

33 · 增量更新、删除与索引维护

  • 首页
  • 资讯中心
  • /
  • 33 · 增量更新、删除与索引维护

相关资讯

大语言模型能力闭环评估实战:基于代码链思维构建自动化测评系统 2026/8/21 9:25:16
32 · 大规模数据导入与索引构建 2026/8/21 9:25:16
31 · 量化与存储优化 2026/8/21 9:25:16

最新资讯

Symfony 2 项目集成 less.php:服务端编译 LESS 的完整流程
基于Spring Boot与Vue的论坛数据可视化系统全栈开发实战
VTK开发笔记(九):示例Cone6,使用3D交互控件,在Qt窗口中详解复现对应的Demo
Figma、Axure、Vue在现代产品研发流程中的定位与协作边界解析
Linux GUI程序崩溃无弹窗?DrKonqi与KCrash机制深度解析与修复
跨学科赋能对话AI:心理学与行为经济学如何提升说服力

今日推荐

OpenCode AI编程助手:从核心原理到本地部署的完整实践指南
基于SpringBoot与Vue的企业资产与采购管理系统设计与实现(程序+文档+讲解)
Linux命令-uucico(UUCP传输程序)

本周热门

【文章复现】非线性值迭代自适应动态规划(ADP):离散时间非线性系统的策略迭代自适应动态规划算法研究附Matlab代码
【双层规划,节点出清价,绿证交易,CVaR方法】两级电力市场环境下计及风险的省间交易商最优购电模型附Matlab代码
隐式mpc+自适应mpc+时变mpc,线性时变模型预测控制附Simulink仿真

本月精选

如何用DamaiHelper实现演唱会门票的智能自动化抢购:完整技术解决方案指南
第4篇:59 倍性能差距的索引瓶颈定位——一次教科书级的全表扫描调优
终极歌词批量下载神器:5分钟解决离线音乐库歌词同步难题

33 · 增量更新、删除与索引维护

发布时间:2026/8/21 9:25:16
33 · 增量更新、删除与索引维护 33 · 增量更新、删除与索引维护一句话向量数据长期增删改会让索引膨胀、性能下降要靠 VACUUM、REINDEX 等定期维护保持健康。本章标 是系统长期跑下去绕不开的运维现实。1. 增量写入HNSW 天然支持HNSW 索引支持边插入边维护新数据会自动加入图-- 有 HNSW 索引的表直接插入即可索引自动更新INSERTINTOitems(content,embedding)VALUES(新文档,[...]);注意每次插入都要维护索引图写入比无索引慢。大批量新增仍建议参考第 32 章临时去索引 → 导入 → 重建。2. 更新向量更新 删除旧行 插入新行PG 的 MVCC 机制UPDATEitemsSETembedding[新向量]WHEREid100;旧版本行变成死元组dead tuple不会立刻消失。索引里也会留下旧条目。频繁更新 → 死元组堆积 →表和索引膨胀。3. 删除数据DELETEFROMitemsWHEREid100;同样只是标记删除物理空间不会马上释放需要 VACUUM 回收。4. VACUUM回收死元组VACUUM清理死元组、回收空间是最重要的日常维护。-- 常规清理不锁表可日常跑VACUUM items;-- 顺带更新统计信息VACUUMANALYZEitems;PG 有autovacuum自动跑但高频增删的向量表可能需要调更激进或手动补充。让 autovacuum 更积极高频变更表ALTERTABLEitemsSET(autovacuum_vacuum_scale_factor0.05,-- 死元组达 5% 就触发autovacuum_vacuum_cost_delay0);5. 索引膨胀与重建即便 VACUUMHNSW 索引经过大量增删后图结构会退化 / 膨胀召回和速度下降。判断膨胀观察索引大小是否远超数据量、召回是否下降用第 30 章评测集。重建索引恢复健康-- 不阻塞线上读写地重建REINDEXINDEXCONCURRENTLY items_embedding_idx;CONCURRENTLY让重建期间表仍可读写生产必用。6. IVFFlat 特别注意IVFFlat 的桶是建索引那一刻用当时数据聚类定的。数据分布随时间大幅变化后桶不再能代表新数据分布。召回明显下降。所以IVFFlat 需要定期重建才能保持效果REINDEXINDEXCONCURRENTLY items_ivfflat_idx;这也是为什么持续变化的数据更推荐 HNSW增量维护能力强。7. 软删除 vs 硬删除生产常用软删除标记而非物理删-- 加删除标记ALTERTABLEitemsADDCOLUMNis_deletedbooleanDEFAULTfalse;-- 删除其实是更新标记UPDATEitemsSETis_deletedtrueWHEREid100;-- 检索时过滤掉SELECTidFROMitemsWHEREis_deletedfalseORDERBYembedding[...]LIMIT10;注意软删除的行仍在索引里会被 HNSW 检索到再过滤可能触发第 21 章的召回塌陷。删除量大时定期真正DELETEVACUUM更健康。8. 定期维护清单建议每天 autovacuum 保持开启高频表调激进 每周 VACUUM ANALYZE 重点表检查索引大小 按需 召回率下降 → REINDEX CONCURRENTLY IVFFlat数据分布大变 → 定期 REINDEX 软删除 定期物理清理已标记删除的数据9. 监控指标-- 查死元组数量判断是否需要 VACUUMSELECTrelname,n_live_tup,n_dead_tupFROMpg_stat_user_tablesWHERErelnameitems;-- 查索引大小SELECTpg_size_pretty(pg_relation_size(items_embedding_idx));n_dead_tup相对n_live_tup很高就该 VACUUM 了。10. 一句话总结增删改会产生死元组和索引膨胀靠 autovacuum 定期VACUUM ANALYZE回收召回下降时REINDEX CONCURRENTLY重建IVFFlat 尤其要定期重建。➡️ 下一章34-pgvectorscale与生态选型.md上亿规模的扩展方案与选型。

关于恒美微站

恒美微站专注于为个体商户、工作室提供极简自助建站服务,让每个人都能轻松拥有专业网站。

快速链接

  • 关于我们
  • 建站服务
  • 主题模板
  • 案例展示
  • 资讯中心

服务项目

  • 可视化建站
  • 拖拽编辑
  • 主题定制
  • SEO 优化
  • 网站托管

联系方式

  • 📍 地址:北京市朝阳区建国路 88 号
  • 📞 电话:400-888-8888
  • ✉️ 邮箱:info@hmyw.cn
  • 🕐 时间:周一至周日 9:00-18:00

© 2024 恒美微站 hmyw.cn 版权所有 | 京 ICP 备 12345678 号