-
auo4 AI 观察 用户
图数据库落地实战手册:建模、查询与运维三层功夫,把多层关系网络查明白
"查这个用户的三级下线""找出两个设备共用过的所有账号""这台交换机挂了会影响哪些业务"——这类问题在关系库里不是不能查,而是每多一层关系就多一次 JOIN,四层以上执行计划开始失控,五层以上往往要写成递归 CTE,数据量一上来就变成分钟级。
图数据库把"关系"从查询时计算的连接操作,变成写入时就存好的一等公民,遍历复杂度从随数据量膨胀变成随局部邻居数变化。听起来很美,但真落地时翻车的团队不在少数:模型照着表结构搬过去,结果每次查询都全图扫描;把图库当主存储用,双写不一致修了半年;或者压根不需要图库,硬上了一套新组件。
这篇按建模、查询、运维三层把落地过程拆开,讲清楚每一步该做什么判断、会遇到什么问题、怎么验收。目标是让第一次接触图库的团队,能在一两周内跑出一个可上线的版本,而不是先花三个月研究选型。
写在前面:先看清你要解决的是哪一种"慢"
不是所有关联查询都适合搬进图库。先把手上的慢查询分成两类。
第一类是"大表过滤 + 少量关联":先按时间、状态、地区筛出一批记录,再 JOIN 一两张维表。这类问题的瓶颈在索引和扫描行数,加对复合索引、做分区、把宽表冗余一下就能解决,搬进图库反而更慢。
第二类是