Обработка больших исходных таблиц в Пентахо для целевой таблицы той же схемы - PullRequest
0 голосов
/ 10 января 2020

В настоящее время у меня есть задание etl, которое читает исходную таблицу с более чем 1 миллионом записей и затем последовательно обрабатывает таблицу назначения. И источник, и цель находятся в одной и той же схеме, но между ними есть внешний вызов конечной точки отдыха для публикации некоторых данных из исходной таблицы, и сейчас эта работа выполняется очень плохо, и может кто-нибудь сообщить мне, каковы некоторые способы улучшения производительности в условия, как распараллелить это или уменьшить fetchsize et c, чтобы сократить время выполнения этого задания?

1 Ответ

1 голос
/ 10 января 2020

Проверьте, поддерживает ли ваша конечная точка отдыха пакетную обработку, и затем внедрите это. Большинство API делают в эти дни. (В этом случае вы отправляете несколько запросов в одном файле json / xml в конечную точку)

В противном случае вам просто нужно использовать несколько копий клиентского шага REST. у вас должно получиться по крайней мере 8-10, но убедитесь, что вы не ограничены каким-либо образом на другом конце.

Наконец, если ничего из этого не поможет, попробуйте придумать собственный httpclient в java шаг класса (не javascript) и убедитесь, что вы аутентифицируетесь с остальной конечной точкой только один раз, а не каждый запрос, сохраняя сеанс открытым. Я не уверен на 100%, что это делает остальной клиент, и проверка подлинности часто является самым дорогим.

...