|
17. Используйте глобальные временные таблицы для быстрой вставки
|
|||
---|---|---|---|
#18+
авторДля ускорения вставки и обновления используйте временные таблицы (Global Temporary Table – GTT) для массовых вставок и последующего переноса данных в обычные таблицы. а за счет чего достигается ускорение? ... |
|||
:
Нравится:
Не нравится:
|
|||
09.04.2019, 08:34 |
|
17. Используйте глобальные временные таблицы для быстрой вставки
|
|||
---|---|---|---|
#18+
При достаточном кол-ве ОЗУ данные не материализуются на диск. Как только данные доступны из SQL запросов внутри базы развязаны руки применить тот же мерж, например. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.04.2019, 09:07 |
|
17. Используйте глобальные временные таблицы для быстрой вставки
|
|||
---|---|---|---|
#18+
Квази, автором данного совета являюсь я, поэтому поясню. Если сравнивать простой случай, когда идёт массовый INSERT в одну табличку, то использование GTT не даёт никакого преимущества. Однако если ваш импорт более сложный, когда необходимо вставка или обновление или даже удаление в целевой базе, или же надо распихать записи по нескольким таблицам, или надо искать что-то в других таблицах БД в процессе импорта, то проще сначала слить данные в GTT, а потом делать сложные выборки, многократно пробегать курсором, использовать MERGE, обрабатывать ошибки и использовать другие вкусности. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.04.2019, 09:26 |
|
17. Используйте глобальные временные таблицы для быстрой вставки
|
|||
---|---|---|---|
#18+
Симонов ДенисКвази, автором данного совета являюсь я, поэтому поясню. Понятно, спасибо. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.04.2019, 11:21 |
|
17. Используйте глобальные временные таблицы для быстрой вставки
|
|||
---|---|---|---|
#18+
Квази, gtt все же дает преимущества даже при массовой вставке данных. Дело в том, что версионность для задач типа "проливки" данных через сервер не очень подходит. Допустим, вставили 1млн записей, обработали, и теперь их надо удалять. При удалении возникнет миллион версий с признаком удаления, а потом, когда исходные записи станут мусором, его придется вычищать. В GTT тоже может быть мусор, но по окончании работы с ГТТ они просто удаляются как файл, соответственно, никаких побочных эффектов в виде сборки мусора и лишнего места в БД не возникает. Достаточно сравнить эту реализацию с реализацией GTT в InterBase - там ГТТ в базе. http://www.ibase.ru/ib75temptables/ Как результат - либо тормоза (на сборку мусора) при первом коннекте, либо при дисконнекте. Плюс пухнет база из-за временных данных. Понятно, что потом-то это место освободится, но... p.s. последние версии IB не проверял - остались ГТТ в базе, или они их вынесли в темп. файлы как в ФБ. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.04.2019, 12:13 |
|
17. Используйте глобальные временные таблицы для быстрой вставки
|
|||
---|---|---|---|
#18+
kdvпо окончании работы с ГТТ они просто удаляются как файл Не удаляются. Не так давно был топик, вылившийся в CORE-6043. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
09.04.2019, 12:22 |
|
17. Используйте глобальные временные таблицы для быстрой вставки
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov, там речь о COMMIT RETAIN ... |
|||
:
Нравится:
Не нравится:
|
|||
09.04.2019, 12:36 |
|
17. Используйте глобальные временные таблицы для быстрой вставки
|
|||
---|---|---|---|
#18+
Симонов Денистам речь о COMMIT RETAIN Это в тикете, а в топике Влад объяснял, что один файл используется под все временные таблицы и там мусор накапливается и собирается как обычно. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
09.04.2019, 12:45 |
|
17. Используйте глобальные временные таблицы для быстрой вставки
|
|||
---|---|---|---|
#18+
Dimitry SibiryakovНе удаляютсяОпять пальцем в небо ... |
|||
:
Нравится:
Не нравится:
|
|||
09.04.2019, 12:46 |
|
17. Используйте глобальные временные таблицы для быстрой вставки
|
|||
---|---|---|---|
#18+
Dimitry SibiryakovЭто в тикете, а в топике Влад объяснял, что один файл используется под все временные таблицы и там мусор накапливается и собирается как обычно.И это тоже половина правды. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.04.2019, 12:46 |
|
17. Используйте глобальные временные таблицы для быстрой вставки
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov, я не могу понять - ты намеренно врёшь или страдаешь от неудачных попыток кратко выражаться ? Лучше вообще не выражаться в таком случае... ... |
|||
:
Нравится:
Не нравится:
|
|||
09.04.2019, 12:48 |
|
17. Используйте глобальные временные таблицы для быстрой вставки
|
|||
---|---|---|---|
#18+
hvladя не могу понять - ты намеренно врёшь или страдаешь от неудачных попыток кратко выражаться ? Скорее я страдаю от твоих попыток кратко выражаться. Я же не обкуренная пифия чтобы интерпретировать твои оракулообразыне туманные намёки. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
09.04.2019, 13:29 |
|
17. Используйте глобальные временные таблицы для быстрой вставки
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov, тогда рекомендую либо спрашивать, что неясно, либо лучше уж жевать ... |
|||
:
Нравится:
Не нравится:
|
|||
09.04.2019, 13:30 |
|
17. Используйте глобальные временные таблицы для быстрой вставки
|
|||
---|---|---|---|
#18+
... |
|||
:
Нравится:
Не нравится:
|
|||
09.04.2019, 13:30 |
|
|
start [/forum/topic.php?fid=40&fpage=24&tid=1560747]: |
0ms |
get settings: |
9ms |
get forum list: |
17ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
50ms |
get topic data: |
12ms |
get forum data: |
2ms |
get page messages: |
46ms |
get tp. blocked users: |
2ms |
others: | 12ms |
total: | 158ms |
0 / 0 |