使用递归WITH(Postgres 8.4)而不是嵌套集的邻接列表树

Koo*_*obz 5 django django-treebeard adjacency-list

我正在寻找 Django 树库,并尽力避免嵌套集(维护它们是一场噩梦)。

邻接列表模型的缺点始终是无法在不诉诸多个查询的情况下获取后代。Postgres 中的WITH 子句似乎是解决这个问题的可靠方法。

有没有人看过有关WITH与Nested Set的性能报告?我认为嵌套集仍然会更快,但只要它们处于相同的复杂性类别,我就可以承受 2 倍的性能差异。

姜戈-树须让我感兴趣。有谁知道他们在 Postgres 下运行时是否实现了 WITH 子句?

这里有人根据WITH 子句放弃了嵌套集吗?

Koo*_*obz 1

关于这种方法的可能性的一些想法:

https://cra.mr/2010/05/30/scaling-threaded-comments-on-django-at-disqus/

简而言之:David Cramer (django-debug-toolbar) 非常喜欢递归查询以及它们在 Disqus 中的执行方式。