Pentaho Data Integration (PDI, ранее называвшаяся Kettle) – компонент для выполнения Extract, Transform and Load (ETL) задач.
Обычно используется (и планировалась в проекте) для всякой бигдаты и аналитики, но кроме этого может применяться для конвертации различных данных.
Задача на сейчас – конвертировать базы MySQL со старых серверов в PostgreSQL. Для проверки – надо установить PDI локально, попробовать что из этого вообще выйдет.
Устанавливаем на Arch Linux, из AUR.
В общем – установка везде будет одинакова, ибо работает на Java.
Например – из скрипта запуска Spoon – UI интерфейса для PDI:
... STARTUP="$BASEDIR/launcher/pentaho-application-launcher-7.1.0.0-12.jar" ...
Пакет в AUR – тут>>>.
Устанавливаем:
[simterm]
$ yaourt -S pdi-ce
[/simterm]
Зависимости:
[simterm]
... ==> pdi-ce dependencies: - java-runtime (already installed) - gtk2 (already installed) - libxtst (already installed) - webkitgtk2 (building from AUR) ...
[/simterm]
Очень долго собирался webkitgtk2
…
Да и сам пакет немаленький:
[simterm]
... Packages (1) pdi-ce-7.1.0.0_12-1 Total Installed Size: 976.60 MiB ...
[/simterm]
[simterm]
Запускаем Spoon:
$ spoon & Java HotSpot(TM) 64-Bit Server VM warning: ignoring option MaxPermSize=256m; support was removed in 8.0 10:53:09,366 INFO [KarafBoot] Checking to see if org.pentaho.clean.karaf.cache is enabled 10:53:09,540 INFO [KarafInstance] ******************************************************************************* *** Karaf Instance Number: 1 at /tmp/karaf6450145682352086378/caches/spoon/ *** *** data-1 *** *** FastBin Provider Port:52901 *** *** Karaf Port:8802 *** *** OSGI Service Port:9051 *** ******************************************************************************* Oct 17, 2017 10:53:10 AM org.apache.karaf.main.Main launch INFO: Installing and starting initial bundles Oct 17, 2017 10:53:10 AM org.apache.karaf.main.Main launch INFO: All initial bundles installed and set to start Oct 17, 2017 10:53:10 AM org.apache.karaf.main.Main$KarafLockCallback lockAquired ...
[/simterm]
Устанавливается он в /opt/pdi
:
[simterm]
$ ls -l /opt/pdi/ total 10476 drwxr-xr-x 10 root root 4096 Oct 17 10:49 adaptive-execution -rw-r--r-- 1 root root 551 Oct 17 10:40 Carte.bat -rwxr-xr-x 1 root root 405 Oct 17 10:40 carte.sh drwxr-xr-x 2 root root 4096 Oct 17 10:49 classes drwxr-xr-x 3 root root 4096 Oct 17 10:49 'Data Integration.app' drwxr-xr-x 2 root root 4096 Oct 17 10:49 'Data Service JDBC Driver' drwxr-xr-x 3 root root 4096 Oct 17 10:49 docs -rw-r--r-- 1 root root 138 Oct 17 10:40 Encr.bat -rwxr-xr-x 1 root root 140 Oct 17 10:40 encr.sh -rw-r--r-- 1 root root 131 Oct 17 10:40 Import.bat -rw-r--r-- 1 root root 2354 Oct 17 10:40 import-rules.xml -rwxr-xr-x 1 root root 275 Oct 17 10:40 import.sh -rw-r--r-- 1 root root 184 Oct 17 10:40 Kitchen.bat -rwxr-xr-x 1 root root 354 Oct 17 10:40 kitchen.sh drwxr-xr-x 2 root root 4096 Oct 17 10:49 launcher drwxr-xr-x 2 root root 20480 Oct 17 10:50 lib ...
[/simterm]
carte
– веб-сервер для выполнения задач удалённоencr
– утилита для генерации паролейkitchen
– CLI утилита для выполнения задач
Готово.