データ統合プラットフォーム『Xplenty』の「Getting Started」を試してみた

Xplentyは、データソースを 統合するための主要なデータ統合プラットフォームです。データウェアハウスまたはデータレイクへのシンプルで視覚化されたデータパイプラインを作成することが出来ます。

Xplentyのプラットフォーム上では、クラウド上での分析のためにデータの統合・処理・準備が行えます。コーディングや専門用語を使用しない環境を構成することで、ユーザーが迅速かつ容易にそれらのメリットを教授出来ます。様々なデータストアやすぐに使用出来るデータ変換コンポーネントなどへの接続も可能です。

当エントリでは、Xplenty公式サイトで展開されている『Getting Started』の実践内容について順を追って説明してみたいと思います。Xplentyを試してみる・挙動を確認する際にまずはじめに読んでみる、実践してみるべき内容という感じですね。

Xplenty: Getting Started

アカウントにサインインすると、Xplentyのダッシュボードが表示されます。ここでは全てのコンポーネント(接続、パッケージ、ジョブ、クラスター、スケジュール、設定など)にアクセス出来ます。

(1).

まず最初のステップ。パッケージメニューにて、新規パッケージ(New Package)ボタンを押下し、データフローを選択、パッケージを作成します。

ここでは独自のパッケージを1から作成するか、予め用意されたテンプレートを使用することが出来ます。テンプレートは、特定のソースから全ての重要な情報をキャプチャし、決定された宛先にデータをプッシュします。テンプレートからパッケージを作成するには、新しいパッケージを作成し、テンプレートのドロップダウンから目的のテンプレートを選択します。変数値を変更したり、必要に応じてテンプレートを調整したりするにはパッケージノートに記載されている指示に従ってください。

(2).

データフローの定義。各パッケージはデータフローまたはワークフローのいずれかとなります。

  • データフロー(Xplenty Dataflow):実行する変換・及び出力先(場所、スキーマ)を指します。
  • ワークフロー(Xplenty Workflow):SQLクエリの実行やデータフローパッケージの実行など、タスク間の依存関係を定義出来るパッケージ。例えば、タスクを実行するための依存関係と条件を定義したり、前のタスクが正常に完了した時に当該処理を実行する等の制御が可能です。

ここでは[データフロー(DataFlow)]を選びました。

テンプレートに関しては色々なものが用意されていますが、ここでは1から処理を作ってみることにするので[Blank]を選びます。

設定内容は以下のようになりました。[Create Package]を押下。

(3).

ワークフロー作成のためのキャンパスというべき画面が表示されました。現時点ではまだ何も作成・配備されていません。

データフローのUIにて[コンポーネントの追加(Add Component)]を選択、データを取得するデータソースの設定を行います。

ご覧のように、作成・設定出来るデータソースや処理については実に多岐に渡ったものが用意されています。今回はAmazon Redshiftを入力データソースとしてみたいと思います。接続タイプの一部については、接続を作成する前にサービスまたはデータリポジトリへのXplentyアクセスを許可しておく必要があります。(ファイアウォール設定、SSHトンネルの開始、権限を持つユーザーの準備等)

また、データソース各種への接続に関しては以下のページに一覧としてまとまっています。

必要な情報を設定し、利用するカラム等を選択。接続設定までを行います。

各種変換処理については下記枠線内部のものが利用可能です。

ここでは、2つのAmazon Redshiftデータソースを結合し、更には任意の条件でデータを抽出する処理を繋げてみています。

(4).

更にアウトプットデータソースの設定としてAmazon S3を選択。これについても、必要なS3環境を用意した上で認証情報(AWSアクセスキー)を設定し、合わせて処理を繋ぎました。一通り必要な処理を構成した全容が以下となります。

処理が一通り作成出来たら、[Save and Validate]を押下して処理がエラー無く構成されているかを確認します。

エラーが無ければ、以下のように問題ない旨を示すメッセージがウインドウ表示されます。内容を確認後、[Run Job]を押下。

(5).

ジョブを実行する上で対象としたいクラスターを選択。ジョブはクラスターで特定のパッケージを実行し、有限量のデータを処理して終了するバッチプロセスです。複数のジョブで同じパッケージを同時に実行出来ます。新しいジョブを実行する際は、ジョブが実行するワークフローを含むパッケージの名前と実行するクラスターを選択します。

クラスターはアカウントのユーザーに排他的に割り当てられるマシン(ノード)のグループです。1つ以上のクラスターを作成することが出来、各クラスターで1つ以上のジョブを実行出来ます。作成したクラスターはクラスターの終了を要求するまでアカウントに割り当てられたままになります。

ここでは、クラスターの選択または新規作成が行えます。また、クラスターについてはサンドボックス(全てのアカウントで無料、開発目的で利用可能)または実運用でのクラスターを選択出来ます。クラスター作成の詳細については以下をご参照ください。

設定が完了したら[Run Job]を押下、ジョブ実行を行います。

ジョブの実行中。実行されたジョブは逐一ステータスと進捗度合いが切り替わる形で状況を確認可能です。

ジョブが終了し、完了まで行った(COMPLETED)ことが確認出来ました。ジョブIDがリンクになっているのでクリック。

出力結果を幾つかの形式で値まで確認する事が可能です。

上記結果に対応する実際の結果(出力されたAmazon S3バケット配下のファイル)についても、正常に出力されていることを確認出来ました。

まとめ

というわけで、Xplentyの入門中の入門、『Getting Started』を実践してみた内容のご紹介でした。

手順に従って一連の作業を進めてみましたが、詰まるところも無く至ってスムーズに作成・設定が行え、実行出来ました。GUI&Webインタフェースで設定が完了出来るというのはユーザーにとっても嬉しいポイントですね。