![]() |
|
Модераторы: skyboy |
![]()
|
|
| fridkaratel |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 221 Регистрация: 22.10.2007 Где: Error connect to MySQL Da... Репутация: нет Всего: нет |
В-общем, интересует такая задача... и хочется получить ответ от специалистов в этой области...
1. Есть дерево (не важно, что оно содержит)... Обычное и типичное дерево... 2. Каждый node дерева содержит количество входящих в него элементов 3. Элементов может быть, думаю, до 10 000, уровень вложенности, до 7000 (скорей всего). Суть задачи: При добавлении элемента автоматически увеличивать цифру с количеством элементов у всех его родителей... В текущей БД: 1. Родители хранятся по типу "0.3.15.27.32.", 2. Дети выбираются по запросу LIKE "%.PID.%" 3. Принцип nested sets не используется, так как дерево часто подвергается изменениям Как же наилучшим способом решить такую задачу? Вижу вариант - делать просто:
Но думаю, есть какие-то другие и более рациональные решения |
|||
|
||||
| skyboy |
|
|||
|
неОпытный ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9820 Регистрация: 18.5.2006 Где: Днепропетровск Репутация: 41 Всего: 260 |
||||
|
||||
| fridkaratel |
|
||||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 221 Регистрация: 22.10.2007 Где: Error connect to MySQL Da... Репутация: нет Всего: нет |
@skyboy:
Блин, точно Эх, а как по-другому можно? А такой вариант?
Это сообщение отредактировал(а) fridkaratel - 11.12.2010, 19:25 |
||||
|
|||||
| skyboy |
|
|||
|
неОпытный ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9820 Регистрация: 18.5.2006 Где: Днепропетровск Репутация: 41 Всего: 260 |
вот это - "все потомки узла". при наличии индекса на это поле, может, и не будет сильно тормозить. |
|||
|
||||
| fridkaratel |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 221 Регистрация: 22.10.2007 Где: Error connect to MySQL Da... Репутация: нет Всего: нет |
Получается, сделать вторым вариантом?
И добавить индекс по столбцу Parents...? |
|||
|
||||
![]()
|
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | MySQL | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |