
Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
07.08.2002, 19:16:10
|
|||
|---|---|---|---|
|
|||
Join на большой таблице. |
|||
|
#18+
Здравствуйте все. Есть большая таблица - 170 млн. записей з с достаочно большим количеством полей. Есть вторая таблица только с ID записей которые нужно потянуть с основной таблицы. Представим себе, что вторая таблица тоже достаточно велика, несколько милионнов записей. Join по ID поля первой и второй таблицы занимает несколько часов. В некоторых случаях transaction log увиличивается просто угрожающе. Паралельно на том же сервере могут происходить другие операции помимо этой. Вопрос: будет ли быстрее общее время если из второй таблицы брать по несколько тысяч записей, тянуть записи со второй таблицы в какую то временую таблицу? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
07.08.2002, 19:34:31
|
|||
|---|---|---|---|
Join на большой таблице. |
|||
|
#18+
на счет быстрей не уверен - но лог расти будет меньше... а с хинтом хэш джоин пробовал?.... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
07.08.2002, 19:47:48
|
|||
|---|---|---|---|
|
|||
Join на большой таблице. |
|||
|
#18+
Ув. MiCe ! Подскажите, плз, что даст этот хинт. В BOL смотрел, но ясности не прибавилось. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
07.08.2002, 19:56:54
|
|||
|---|---|---|---|
|
|||
Join на большой таблице. |
|||
|
#18+
какой hint ты предлагаешь использвать в данном случае? Описание этих хинтов является досточно туманным... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
07.08.2002, 19:58:45
|
|||
|---|---|---|---|
Join на большой таблице. |
|||
|
#18+
скул сканирует строки и строит на его основе хэш таблицу... там несколько алгоритмов... обычно планировщик сам определяет тип слияния.... по идее тут лучший метод хэш - мерге... явно его не задаш.. посмотреть бы какие индексы на таблицах и что выбирает планировщик в этой ситуации... я примерно догадываюсь.. на самом деле еслиб увеличить памяти на сервере было бы полегче... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
07.08.2002, 20:06:10
|
|||
|---|---|---|---|
Join на большой таблице. |
|||
|
#18+
вот если эту большую таблицу разбить на несколько... 1 - ID от 1 до 16 999 999 2 - ID от 17 000 000 до 33 999 999 ... ... и тд до 10 сделать объединяющую вьюху по UNION ALL... думаю что должно полегчать.... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
07.08.2002, 20:14:21
|
|||
|---|---|---|---|
|
|||
Join на большой таблице. |
|||
|
#18+
Даже если записи будут разбросаны по всем частям? Вторая таблица формируется динамически на Sybase IQ. ID могут быть разнесены по всей таблице, чаще всего так и происходит.... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=46&mobile=1&tid=1821300]: |
0ms |
get settings: |
9ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
63ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
41ms |
get tp. blocked users: |
1ms |
| others: | 240ms |
| total: | 386ms |

| 0 / 0 |
