Dive into Apache Hop

October 26, 2021

Apache Hop


Apache Hop (Incubating) は、Kettle 8.2.0.7からForkしたデータオーケストレーションツールです。

準備


以下の材料を用意します。

なお、今回の作業はmacOS/Intelで行っています。

  1. PC

    • ターミナル (Terminal)
    • Docker Desktop

      • 2GBの空き容量(ちょっと大きめです)
  2. インターネット回線

    • ダウンロードするモジュールが大きいのでそれなりの回線

Apache Hop


まずは、Apache HopPullして、Run しましょう。

docker pull apache/incubator-hop:latest
docker run -it --rm \
  --env HOP_SERVER_USER=admin \
  --env HOP_SERVER_PASS=admin \
  --env HOP_SERVER_PORT=8181 \
  --env HOP_SERVER_HOSTNAME=localhost \
  -p 8181:8181 \
  --name my-hop-server-container \
  apache/incubator-hop:latest

ターミナルにはこのように表示されます

2021/10/26 07:59:43 - Running the entrypoint script with PID 7
2021/10/26 07:59:43 - Writing a hop-server config file to /tmp/hop-server.xml
2021/10/26 07:59:43 - Starting a hop-server on port 8181
2021/10/26 07:59:47 - HopServer - Installing timer to purge stale objects after 1440 minutes.
2021/10/26 07:59:47 - HopServer - Created listener for webserver @ address : 0.0.0.0:8181

Apache Hop Web


別のターミナルをオープンします。

docker pull apache/incubator-hop-web:latest
docker run  \
 -p 8080:8080  \
 --name my-hop-web \
 apache/incubator-hop-web:latest

ターミナルにはこのように表示されます

(表示が多いので最後だけを書きました)
HOP_CONFIG_FOLDER: /usr/local/tomcat/webapps/ROOT/config
HOP_AUDIT_FOLDER: /usr/local/tomcat/webapps/ROOT/audit
26-Oct-2021 08:04:52.728 INFO [main] org.apache.catalina.startup.HostConfig.deployDirectory Deployment of web application directory [/usr/local/tomcat/webapps/ROOT] has finished in [10,110] ms
26-Oct-2021 08:04:52.736 INFO [main] org.apache.coyote.AbstractProtocol.start Starting ProtocolHandler ["http-nio-8080"]
26-Oct-2021 08:04:52.760 INFO [main] org.apache.catalina.startup.Catalina.start Server startup in [10226] milliseconds

Hop Webを使ってみましょう


Hop Webを使ってみましょう。

http://localhost:8080/ui

Menu bar: File, Edit, Run, Tools, Help

Main toolbar: New, Open … Project, Environment

Perspectives toolbar: Metadata, Files, Search, Plugin, Neo4j

Hop Web Start

Pipelineを作りましょう


New (Fileの下にある+記号) をクリックします。

Select the item to create のウィンドウが表示されます。

Hop Web New

上の左にPipelineという表示がありますのでこれを選択します。

手のアイコンがある画面が表示されます。

Hop Web New Pipeline

画面をクリックしてみましょう。

Hop Web New Action

Generate rowsを選択します。画面にGenerate rowsが表示されます。

再度、画面をクリックして、Add Sequenceを選択します。

Genetate rows, Add sequence

次に、線を引きます。

Generate rowsを選択する時に Shiftを押しながらAdd Sequenceまで引っ張りましょう。

Genetate rows to Add sequence

組み合わせるとこんなのも可能です


Hop Beam

Source: https://hop.apache.org/blog/2021/10/hop-1.0.0/


Profile picture

Written by Koji Annoura who lives and works in Fukuoka Japan. Please follow me on Twitter

© 2021, Koji Annoura, Built with Gatsby