|
|
|
Структура БД для дерева объектов
|
|||
|---|---|---|---|
|
#18+
Привет.МС СКЛ. Подскажите лучше спроектировать таблицы. есть Объекты-деревья с разной глубиной вложенности типизации. Например. Код: sql 1. 2. 3. также есть таблица Транспортные средства, в которой надо хранить ссылку на то, какой это тип ТС как спроектировать таблицы и отношения, чтобы юзер на сайте мог выбрать любой уровень типизации и увидеть все транспортные средства? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.04.2012, 15:19 |
|
||
|
Структура БД для дерева объектов
|
|||
|---|---|---|---|
|
#18+
http://ibase.ru/develop.htm#tree Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.04.2012, 15:54 |
|
||
|
Структура БД для дерева объектов
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakov http://ibase.ru/develop.htm#tree спасибо нашел тут http://stackoverflow.com/questions/1129615/how-to-design-database-for-binary-tree а именно это id | parentid | name --------------------- 1 | null | node1 2 | 1 | node2 3 | 1 | node3 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.04.2012, 16:06 |
|
||
|
Структура БД для дерева объектов
|
|||
|---|---|---|---|
|
#18+
reliefа именно это Это простейший вариант, и, вполне возможно, не самый удачный для Вашей задачи. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.04.2012, 16:09 |
|
||
|
Структура БД для дерева объектов
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakovreliefа именно это Это простейший вариант, и, вполне возможно, не самый удачный для Вашей задачи. а можно пример неудачности? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.04.2012, 16:34 |
|
||
|
Структура БД для дерева объектов
|
|||
|---|---|---|---|
|
#18+
reliefа можно пример неудачности? Задача "вывести все объекты, принадлежащие заданному узлу и всем его потомкам" решается для этой структуры довольно медленно. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.04.2012, 17:00 |
|
||
|
Структура БД для дерева объектов
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakovreliefа можно пример неудачности? Задача "вывести все объекты, принадлежащие заданному узлу и всем его потомкам" решается для этой структуры довольно медленно. а вы можете, зная мой пример, дать точную ссылку что надо читать из того что вы дали? а то как всегда надо было вчера, а время читать всё нет. спасибо ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.04.2012, 12:00 |
|
||
|
Структура БД для дерева объектов
|
|||
|---|---|---|---|
|
#18+
reliefа вы можете, зная мой пример, дать точную ссылку что надо читать из того что вы дали? Не могу. Если "надо было вчера" - делай как придётся. Пох на скорость работы и объём кода. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.04.2012, 12:28 |
|
||
|
Структура БД для дерева объектов
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakovreliefа вы можете, зная мой пример, дать точную ссылку что надо читать из того что вы дали? Не могу. Если "надо было вчера" - делай как придётся. Пох на скорость работы и объём кода. остановился всё таки на другом варианте здесь я вот только думаю. если у меня есть например такая таблица для Транпспортных средств и есть таблицы ВладельцыТС, то не лучше ли мне добавить в таблицу ТС еще столбец ID и в таблице ВладельцыТС хранить именно ID ТС, вместо Kia, например? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.04.2012, 15:50 |
|
||
|
Структура БД для дерева объектов
|
|||
|---|---|---|---|
|
#18+
reliefдобавить в таблицу ТС еще столбец ID и в таблице ВладельцыТС хранить именно ID ТС О-о-о... "Один автомобиль на человека". Какое жёсткое социалистическое ограничение... Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.04.2012, 16:04 |
|
||
|
Структура БД для дерева объектов
|
|||
|---|---|---|---|
|
#18+
Dimitry SibiryakovЗадача "вывести все объекты, принадлежащие заданному узлу и всем его потомкам" решается для этой структуры довольно медленно. а что значит "медленно"? "медленно" по сравнению с какой "структурой"? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.04.2012, 16:13 |
|
||
|
Структура БД для дерева объектов
|
|||
|---|---|---|---|
|
#18+
s u"медленно" по сравнению с какой "структурой"? По сравнению со "структурой" у которой в качестве ключа ноды дерева используется полный путь. Для такой структуры выборка всех наследников это один LIKE, использующий index range scan. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.04.2012, 16:22 |
|
||
|
Структура БД для дерева объектов
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakovreliefдобавить в таблицу ТС еще столбец ID и в таблице ВладельцыТС хранить именно ID ТС О-о-о... "Один автомобиль на человека". Какое жёсткое социалистическое ограничение... ну сделаю таблицу многие ко многим. вопрос был в другом. использовать id число или нет? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.04.2012, 16:23 |
|
||
|
Структура БД для дерева объектов
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakovs u"медленно" по сравнению с какой "структурой"? По сравнению со "структурой" у которой в качестве ключа ноды дерева используется полный путь. Для такой структуры выборка всех наследников это один LIKE, использующий index range scan. а если нода переезжает? придется все ключи обновлять? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.04.2012, 16:38 |
|
||
|
Структура БД для дерева объектов
|
|||
|---|---|---|---|
|
#18+
s uа если нода переезжает? придется все ключи обновлять? Да. Но это крайне редкое явление сводится к простому REPLACE(), которое опять же использует индекс. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.04.2012, 16:52 |
|
||
|
Структура БД для дерева объектов
|
|||
|---|---|---|---|
|
#18+
Dimitry SibiryakovДа. Но это крайне редкое явление сводится к простому REPLACE(), которое опять же использует индекс. согласен, что самосвал врядли передет из разряд грузовых в группу легковых... имхо все зависит от бизнес-логики (как часто ноды передвигаются), кол-ва пользователей... делать replace в 100500 ключах при таком же кол-ве пользователей... хм... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.04.2012, 17:21 |
|
||
|
Структура БД для дерева объектов
|
|||
|---|---|---|---|
|
#18+
s uделать replace в 100500 ключах при таком же кол-ве пользователей... хм... За всё надо платить. Скорость выборки за цену модификаций. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.04.2012, 17:55 |
|
||
|
Структура БД для дерева объектов
|
|||
|---|---|---|---|
|
#18+
reliefостановился всё таки на другом варианте здесь а у меня вопрос: как узнать по этому методу вершины? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.04.2012, 10:29 |
|
||
|
|

start [/forum/topic.php?fid=32&fpage=50&tid=1541726]: |
0ms |
get settings: |
9ms |
get forum list: |
12ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
43ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
35ms |
get tp. blocked users: |
1ms |
| others: | 241ms |
| total: | 355ms |

| 0 / 0 |
