Apache Nifi からKintone のデータ連携を行う方法

Kintone 連携を行い、データをローカルファイルに出力するデータフローをApache Nifi で作成。

桑島義行
テクニカルディレクター

最終更新日:2022-07-03

この記事で実現できるKintone 連携のシナリオ

こんにちは!テクニカルディレクターの桑島です。



Apache Nifiは、OSSのデータフローオーケストレーションツールです。Nifiでは、JDBCドライバで各種データソースに連携・接続することが可能です。 本記事では、 CData JDBC Driverを利用して、NifiからKintone からデータを取得してローカルファイルに出力するデータフローを作成します。

Nifi を起動

$ sudo /Library/nifi-1.5.0/bin/nifi.sh start

(注意)JAVA_HOMEが見つからない旨のメッセージが出た場合は、{nifi home}/bin/nifi-env.sh の下記部分をコメントアウトしてJDKパスを設定してください。

# The java implementation to use. export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_151.jdk/Contents/Home

Nifi でのKintone設定手順

Nifi にブラウザからアクセスします。 http://localhost:8080/nifi/ でアクセスします。

DBConnectionPortを作成 します。NiFi Flow Configuration > CONTROLLER SERVICES を開き、DBCPConnectionPool 1.5.0を選択して追加します。 PROPERTIESタブを開き、下記の値を設定します。

Database Connection URL:下記の接続文字列を参照
Database Driver Class Name: cdata.jdbc.kintone.KintoneDriver
Database Driver Location(s): cdata.jdbc.kintone.jar ファイルへのパス

一般的な接続文字列は以下です:
jdbc:kintone:User=myuseraccount;Password=mypassword;URL=http://subdomain.domain.com;

(注意)「Database Driver Location(s)」は環境に合わせたパスを設定ください。

SQL 実行とファイルアウトプットのデータフローの作成

ExecuteSQLとPutFileプロセッサを配置して、ExecuteSQLからPutFileへフローを接続します。

各プロセッサを開き、以下の通り、プロパティ値を設定して保存します。

ExecuteSQL

  • Database Connection Pooling Service : 上記手順で作成したDBConnectionPortの名称
  • SQL select query :select * from Account

ExecuteSQL

  • For Relationships : failure, success

FilePut

  • Directory : /wrk/data/nifi/
  • Automatically Terminate Relationships : failure, success

ExecuteSQLとPutFileプロセッサの実行

ExecuteSQLとPutFileプロセッサそれぞれを選択した状態で、Operate内のStart(再生ボタン)をクリックします。 プロセッサのにStart(緑の再生ボタン)アイコンが表示されることを確認てPutFile内のRead/Write内のByte数が変更したらStop(停止ボタン)をクリックします。

FilePutのDirectoryで指定したパスに移動してファイルが作成されていることを確認します。

~ $ cd /wrk/data/nifi /wrk/data/nifi $ ls -l total 35520 -rw-r--r-- 1 root wheel 15964 2 22 15:57 24979156157239 -rw-r--r-- 1 root wheel 15964 2 22 15:57 24979616506772 -rw-r--r-- 1 root wheel 15964 2 22 15:57 24979752251311 -rw-r--r-- 1 root wheel 15964 2 22 15:57 24979844826554 -rw-r--r-- 1 root wheel 15964 2 22 15:57 24979929797593 ~ (省略) ~ -rw-r--r-- 1 root wheel 15964 2 22 15:58 25202512179594

CData で実現できるkintone 連携のユースケース

Power BIロゴ Tableauロゴ

Power BI、Tableau などBI ツール & Excel 連携

Power BI & Tableau との連携はこちら
SQL Serverロゴ

SQL Server 上のマスタデータとの双方向連携

SQL Server 連携はこちら
連携先基幹システムロゴ

基幹システム・SaaS 間連携による業務自動化

基幹システム・SaaS 間連携はこちら

関連コンテンツ

トライアル・お問い合わせ

30日間無償トライアルで、CData のリアルタイムデータ連携をフルにお試しいただけます。記事や製品についてのご質問があればお気軽にお問い合わせください。