Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: К вопросу об иерархиях
 
 автор: Eugene77   (16.08.2010 в 17:17)   письмо автору
 
 

Я некоторое время размышлял о тм, как лучше организовывать иерархические структуры в MySQL.
1) Структура со ссылкой на родителя не удобна для многих запросов.
2) Структуры с избыточными данными увеличивают риск возникновения несогласованности в таблице

Самое лучшее, что я на сегодня придумал - это структура с диапазонами.
Суть в том, что каждому элементу присваивается некий условный диапазон (FROM, TILL) ,корневой элемент имеет диапазон от нуля до максимума целых чисел.

Положим, у каждого элемента не предполагается больше сотни потомков, тогда элементы второго уровня в полях FROM и TILL получают диапазоны в сто крат меньшие.

Элементы 3-го уровня получают диапазоны ещё в 100 крат меньшие и располагаются внутри диапазона своего родителя итд.

При такой структуре как расширение дерева (добавление новых веток), так и запросы по выборке из веток сильно упрощаются (так по крайней мере мне кажется).

Давайте, в этой теме обсудим это представление иерархий.
У кого есть аргументы за и против (какие запросы непонятно как записать) пишите сюда.

  Ответить  
 
 автор: Trianon   (16.08.2010 в 17:50)   письмо автору
 
   для: Eugene77   (16.08.2010 в 17:17)
 

априорные количественные ограничения режут идею на корню.
Устранение таковых автоматически приводит структуру к формату Nested Sets.

  Ответить  
 
 автор: Eugene77   (16.08.2010 в 19:30)   письмо автору
 
   для: Trianon   (16.08.2010 в 17:50)
 

Часто могут встречаться иерархии довольно скромного размера:
1) разделы сайтов и форумов
2) гениалогические деревья
3) рубрификаторы

Для них количественные ограничения не жмут.
Поэтому не хочется городить огород из Nested Sets
Или вы считаете, что лучше воспользоваться готовым классом, чем изобретать свой?

  Ответить  
 
 автор: Trianon   (16.08.2010 в 23:52)   письмо автору
 
   для: Eugene77   (16.08.2010 в 19:30)
 

>Или вы считаете, что лучше воспользоваться готовым классом, чем изобретать свой?

Отнюдь. Придумать и реализовать что-нибудь самостоятельно, с моей точки зрения - завсегда полезно. Даже если в стол.

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования