Производительность Microsoft Access Pentaho Spoon

Я пытаюсь заполнить таблицу базы данных (доступ) с помощью шага «Вывод Microsoft Access», но у меня очень плохая производительность. Я имею в виду, что мои данные были прочитаны из 2 XML-файлов и объединены за 1 минуту (36000 строк данных), а вывод доступа теперь выполняется в течение 1 часа со скоростью 12 об/с. Я установил размер фиксации достаточно большим, чтобы сразу зафиксировать все данные (с размером фиксации 500 я получил некоторую ошибку Java после 10-й фиксации).

Если я напишу свой файл в формате csv и импортирую его в доступ, это будет намного быстрее, но я хотел бы максимально автоматизировать процесс. Приветствуются любые предложения о том, как повысить производительность.


person Biroka    schedule 02.07.2013    source источник


Ответы (1)


Мне никогда не везло с этапом вывода MS-Access. Кажется, это работает намного лучше, если вы создаете запись ODBC для своей базы данных Access и загружаете ее с помощью обычного шага вывода таблицы.

Также вы можете проверить, что у вас установлена ​​самая последняя версия драйвера Jackcess.

Изменить: также для автоматизации потоков данных, таких как запись CSV, а затем его загрузка, вы должны использовать задание. Если вы знакомы только с преобразованиями, посмотрите документацию по заданиям ETL.

person Brian.D.Myers    schedule 02.07.2013
comment
я не знаю, предоставляет ли Pentaho такую ​​возможность, но jackcess по умолчанию автоматически сбрасывает данные в файл db. отключение автоматической очистки может значительно ускорить массовые операции. - person jtahlborn; 09.08.2013
comment
Я не вижу способа сделать это с помощью шага вывода MS-Access. Я никогда не пытался настроить общее соединение с помощью Jackcess, поэтому я не знаю, можно ли это сделать, но если это возможно, и вы можете передать параметр драйверу в строке подключения, это может сработать. - person Brian.D.Myers; 09.08.2013