SSIS и SQLite - PullRequest
       17

SSIS и SQLite

2 голосов
/ 11 октября 2010

Эй, ребята, я хочу использовать задачу ssis для создания ежедневных sqlite dbs ... Задание ssis экспортирует большие объемы данных в sqlite.

Проблема, с которой я сталкиваюсь, заключается в том, что ssis открывает и закрывает транзакцию длякаждая вставка, делающая эту задачу мучительно медленной

, есть способ, которым я могу дать команду ssis открыть транзакцию в начале задачи, выполнить тысячи вставок и, наконец, закрыть транзакцию

я знаю, что яЯ могу легко сделать это с помощью кода system.data.sqlite dll и c #, но единственная причина, по которой я хочу использовать ssis, - это найти решение с минимальным кодом

. Может кто-нибудь помочь, пожалуйста ... заранее спасибо

1 Ответ

1 голос
/ 13 октября 2010

Хотя я не уверен, какие компоненты преобразования / назначения вы используете в своей задаче потока данных, я думаю, что вы используете OLE-DB-Command для вставки значений в место назначения. OLE-DB-Command выполняет операторы для каждой строки.

Так что, если вы знаете, что имеете дело с более чем несколькими сотнями строк за один прогон, я настоятельно рекомендую использовать OLE-DB-Destination, который имеет такие параметры, как быстрая загрузка, которые контролируют, сколько строк будет вставлено в пакет. (ищите варианты Rows Per Batch и Maximum Insert Commit Size)

Вам может понадобиться использовать промежуточную таблицу, чтобы иметь возможность использовать OLE-DB-Destination в вашем случае, но она может быть намного более производительной, чем ваша текущая реализация (при условии использования команды OLE-DB).

...