PostgreSQL
 sql >> Datenbank >  >> RDS >> PostgreSQL

Postgres hierarchischer (jsonb) CTE unnötig langsam

Sieht so aus, als ob sich Gin-Indizes gut verhalten. Wenn ich einen Gin-Index in der Indexspalte erstelle und dann den Join in

ändere
ON t.indexes @> jsonb_build_object('Id', c.indexes -> 'parentId')

Und das Wohin

WHERE t.indexes @> jsonb_build_object('Id', h.pid)

Es ist nicht so schnell wie der reine Funktionsindex, aber zumindest wird es dynamisch aktualisiert, und der Ausführungsplan hat diese unnötige Sortierung nicht

Weitere Leistungsverbesserungen können durch Hinzufügen des Gin-Index-Flags jsonb_path_ops vorgenommen werden