Управление ltree с использованием алгоритма Adjacency List

На самом деле, мне лично смешивание Materialized Path и Adjacency List при использовании ltree представляется сомнительным решением, особенно учитывая то, что в большинстве случаем материализованный путь составляется из ID узлов, и ID родителя получить не представляется сложной задачей. Тем не менее, определенные плюсы от этого есть

Управление «чистым» алгоритмом Materialized Path

Рассматриваем различные способы работы с расширением ltree

Использование расширения ltree в PostgreSQL

ltree является дополнением PostgreSQL и входит в пакет contrib, поэтому изначально оно не включено в стандартный пакет для *nix систем

Управление деревьями Adjacency List

На первый взгляд управление деревом Adjacency List довольно простое, но эта простота, зачастую приводит к определенным проблемам, так очень просто, можно назначить подчинение первого узла второму, а второго первому, что может привести к бесконечному зацикливанию при выборе дерева, можно назначить родителем узла несуществующий ID и тогда ветка полностью выпадет из дерева.

Что такое Adjacency List и как это использовать

Метод хранения древовидных структур данных Adjacency List один из самых простых в понимании, так как узел включает прямую связь с родителем и не перенасыщен избыточными данными.

Nested Sets. Используем триггеры в PostgreSQL

Как удобно делать выборки из деревьев типа Nested Sets, и как не удобно им управлять. Как удобно управлять деревьями типа id->parent_id, но как не удобно и накладно использовать рекурсии при выборках.

Nested Sets. Управление

В данной статье рассматриваем, а как, собственно, можно управлять деревьями Nested Sets

Nested Sets. Правила

Прежде чем начинать работать с деревом, что бы линий раз не наступать на «грабли», определим основные правила

Nested Sets. Введение

Одним из методов хранения древовидных структур является Nested Sets (Вложенные множества).
Прежде всего посмотрим как выглядят деревья Nested Sets, как они организованы и в чем удобство их использования.

Подпишись что бы быть в курсе

Свежие комментарии