Django 트리 라이브러리를 찾고 중첩 된 집합을 피하기 위해 최선을 다하고 있습니다 (유지 관리하는 것이 악몽입니다).인접 목록 트리 중첩 된 집합 대신 재귀 WITH (Postgres 8.4) 사용
인접 목록 모델의 단점은 항상 여러 쿼리를 사용하지 않고 하위 항목을 가져올 수 없다는 것입니다. Postgres의 WITH 절은이 문제에 대한 견고한 해결책 인 것처럼 보입니다.
WITH 대 Nested Set에 관한 실적 보고서를 본 사람이 있습니까? 중첩 된 집합이 여전히 더 빠를 것이라고 가정하지만 동일한 복잡성 클래스에있는 한 2 배의 성능 불일치를 삼킬 수 있습니다.
장고 나무에 관심이 있습니다. Postgres에서 실행될 때 WITH 절을 구현했는지 알 수 있습니까?
WITH 절에 비추어 중첩 된 집합에서 스위치를 만들었습니까? 여기에이 접근법의 가능성에 대한
django-mptt (http://code.google.com/p/django-mptt/)는 수정 된 선주문 트리 순회의 장고 구현입니다. 반면에, 어떤 문제를 해결하지 않고서는 알기가 어렵습니다. 슬프게도, 나는 django-treebeard가 어떤 일을하는지 전혀 모릅니다. 그래서 나는 당신의 질문에 더 도움이 될 수 없습니다. –
Treebeard는 다중 트리 구현 (기본 인접 목록 모델 포함)을 제공한다는 점을 제외하면 MPTT와 유사합니다. 내가 해결하려고하는 문제는 중첩 된 집합을 피하면서 효율적인 트리 구조를 구현하는 것입니다. "WITH"는 오픈 소스 RDBMS에 관한 한 비교적 새로운 기술이며이를 가능하게 할 잠재력이 있습니다. 나는 누군가가 그것을 실제로 사용했는지 궁금해. – Koobz