powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Иерархические структуры Nested Set или Materialized Path и Adjacency List
6 сообщений из 6, страница 1 из 1
Иерархические структуры Nested Set или Materialized Path и Adjacency List
    #38943584
murtukov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день, уважаемый форумчане!

Подскажите, какая структура таблиц была бы оптимальной для следующих условий:

- Известна максимальная глубина вложенности (5)
- В большинстве случаев (60-70%) вложенность будет одноуровневой (корень -> наследник)
- Среднее количество наследников 15-20.

Иерархическая структура будет применяться для деления книг на тома, серии, пятикнижия, главы, подглавы и т.д.
Как видите, деревья будут получаться небольшими, но их будет много. Я читал, что Nested Set хорош в плане чтения и не очень резв в плане изменения структуры. Но в моем случае изменения будут происходить редко.

Буду рад любым мыслям на эту тему.
...
Рейтинг: 0 / 0
Иерархические структуры Nested Set или Materialized Path и Adjacency List
    #38943601
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
murtukovкакая структура таблиц была бы оптимальной для следующих условий:
Если Materialized Path это то, что я думаю, то я бы выбрал его.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Иерархические структуры Nested Set или Materialized Path и Adjacency List
    #38943603
Кот Матроскин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
murtukov Я читал, что Nested Set хорош в плане чтения и не очень резв в плане изменения структуры.

Смотря какого чтения и смотря какого изменения. Запрос "все потомки данного предка" - да, на Nested Set работает довольно шустро.
Определитесь, какие операции у Вас будут с деревом, а "среднее количество наследников" - вопрос второстепенный.
...
Рейтинг: 0 / 0
Иерархические структуры Nested Set или Materialized Path и Adjacency List
    #38943644
murtukov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Кот Матроскин,
чтение дерева по кускам производиться не будет. Только все дерево целиком. Весь спектакль только для того, чтобы на вебстранице наглядно была видна структура книги. Изменение структуры дерева будет производиться, но не так часто, потому как один раз вбил информацию о книге в БД и все. Но от человеческих ошибок никто не защищен, так что все равно придется иногда вносить поправки: кто-то где-то неправильно указал очередность следования глав, дал неверное название главе или и вовсе неправильно поделил все. Стало быть изменения будут производиться самые различные.
...
Рейтинг: 0 / 0
Иерархические структуры Nested Set или Materialized Path и Adjacency List
    #38943672
Кот Матроскин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
murtukovКот Матроскин,
чтение дерева по кускам производиться не будет. Только все дерево целиком.

Если в таблице у Вас много несвязанных деревьев - то "все дерево целиком" это и есть "все потомки данного предка" (в Вашем случае - корня дерева).
Судя по тому что Вы пишете про изменения - они не являются частью повседневной работы,при необходимости могут накапливаться и производиться в моменты простоя -> их производительность никого не интересует.
В этом случае да, Nested set - неплохое решение. Единственно - классический Nested Set расссчитан на хранение одного дерева в таблице, т.е. Вам надо будет добавить "Идентификатор дерева".
...
Рейтинг: 0 / 0
Иерархические структуры Nested Set или Materialized Path и Adjacency List
    #38943726
Фотография DirksDR
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry SibiryakovЕсли Materialized Path это то, что я думаю, то я бы выбрал его.
+1
Дерево выбирается одним селектом, с сортировкой по колонке Materialized Path
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Иерархические структуры Nested Set или Materialized Path и Adjacency List
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]