|
|
|
Помогите найти оптимальный вариант хранения данных
|
|||
|---|---|---|---|
|
#18+
Необходимо загрузить в Firebird порядка 2 000 000 аналогов запчастей. Аналог - это пара "код производителя запчасти, производитель" - "код производителя запчасти, производитель". Т.е. например: 2101 (ВАЗ) - 234TX (Китайский производитель) 234TX (Китайский производитель) - 3T34 (корейский производитель) Действует правило "аналог аналога - мой аналог". Т.е. в примере 2101 является аналогом для 3T34 и наоборот. Вопрос, каким образом организовать оптимальную загрузку и хранение этой информации? Если хранить "в лоб" пары, то селект будет проходить крайне долго из-за правила "аналог аналога - мой аналог". Есть другой вариант. Структура таблицы аналогов: 1. Код товара 2. Производитель 3. ID группы аналогов Селект из такой таблицы будет работать быстро, но встает проблема с загрузкой данных. Алгоритм загрузки такой: 1. загружаются все записи в таблицу аналогов 2. каждая пара в соответствии со структурой таблицы разбивается на 2 строки 3. для каждой пары строк задается свой уникальный код группы аналогов 4. после инсерта в таблицу запускается процедура, которая перелапачивает таблицу для определения связей "аналог аналога - мой аналог". Эта процедура обновляет поле с кодом группы аналогов. Посоветуйте, пожалуйста, как оптимизировать загрузку и хранение данных. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.07.2012, 10:26 |
|
||
|
Помогите найти оптимальный вариант хранения данных
|
|||
|---|---|---|---|
|
#18+
Vsevolod V, Показывай структуру БД, а то гадать на кофейной гуще нехочется. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.07.2012, 10:56 |
|
||
|
Помогите найти оптимальный вариант хранения данных
|
|||
|---|---|---|---|
|
#18+
ParentID Nested set ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.07.2012, 10:59 |
|
||
|
Помогите найти оптимальный вариант хранения данных
|
|||
|---|---|---|---|
|
#18+
БД проектируется. Пока есть два варианта, которые имеют озвученные недостатки: 1. Код 1 Производтель 1 Код 2 Производитель 22101 ВАЗ 234TX Китайский производитель234TX Китайский производитель 3T34 Корейский производитель 2. Код Производитель Группа2101 ВАЗ 1234TX Китайский производитель 13T34 Корейский производитель 1 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.07.2012, 11:01 |
|
||
|
Помогите найти оптимальный вариант хранения данных
|
|||
|---|---|---|---|
|
#18+
Vsevolod Vесть два варианта Первый вариант - сразу в морг. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.07.2012, 11:19 |
|
||
|
Помогите найти оптимальный вариант хранения данных
|
|||
|---|---|---|---|
|
#18+
Vsevolod V, Ну в общем обе таблички шлак. Как-то у вас с пониманием специфики сложнова-то... Вам нужно всего 2 таблички: t1 (id,code,id_manufacturer) t2 (id,t1_id,id_analogue) // id_analogue ссылка на t1.id ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.07.2012, 12:09 |
|
||
|
|

start [/forum/topic.php?fid=32&fpage=47&tid=1541603]: |
0ms |
get settings: |
7ms |
get forum list: |
9ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
27ms |
get topic data: |
6ms |
get forum data: |
2ms |
get page messages: |
35ms |
get tp. blocked users: |
1ms |
| others: | 235ms |
| total: | 326ms |

| 0 / 0 |
