始める前に
-
ソースデータを保管するシステムへの接続が作成済みであること。
ここでは、テスト接続を使用します。
-
ソースデータを保管するデータセットが追加済みであること。
query_language-devices.zipファイルをダウンロードして抽出します。ユーザーのデバイスに関する調査(デバイスの種類、購入日、IPアドレスなど)を持つ.json階層ファイルが含まれています。
-
接続および処理済みデータを保管する関連データセットも作成済みであること。
ここでは、S3バケット上に保管されたファイルを使用します。
手順
-
[Pipelines] (パイプライン)ページで[Add pipeline] (パイプラインを追加)をクリックします。新しいパイプラインが開きます。
-
パイプラインに意味のある名前を付けます。
例
Query and process a list of user devices
-
[ADD SOURCE] (ソースを追加)をクリックしてパネルを開きます。このパネルで、ソースデータ(この場合はユーザーデバイスに関する階層データの調査)を選択できます。
例
-
データセットを選択し、[Select] (選択)をクリックしてパイプラインに追加できるようにします。
必要であれば名前を変更します。
-
をクリックし、パイプラインにData Shaping Languageプロセッサーを追加します。[Configuration] (設定)パネルが開きます。
-
プロセッサーに意味のある名前を付けます。
例
query recent devices
-
[Data Shaping Language]エリアに、次のコードを入力します:
FROM devices AS dv
WHERE toDate(dv.purchase_date) > toDate("2015-01-01")
SELECT {
device_type = name,
purchase_date = dv.purchase_date,
ip_address = ip }
このコードによって以下の処理が可能になります。
-
dv
をdevices
レコードのエイリアスとして定義できます
-
2015年1月1日以降の日付に購入されたデバイスをフィルタリングできます
-
一部のレコードの名前を変更し、フラット化できます(name
がdevice_type
に、 ip
がip_address
になります)
クエリー言語構文の詳細は、Talend Data Shaping Languageリファレンスガイドをご覧ください。
-
[Save] (保存)をクリックして設定を保存します。
プレビューでは、新しいストラクチャーを確認できます。ストラクチャーがフラット化されたため、出力されるレコードが増加して、2015年1月1日以降に購入されたデバイスのみ表示されます。
-
をクリックし、パイプラインにFilterプロセッサーを追加します。[Configuration] (設定)パネルが開きます。
-
プロセッサーに意味のある名前を付けます。
例
keep records about phones
-
Filterエリアで次の操作を行います。
-
この値に基づいて顧客をフィルタリングしたいので、[Input] (入力)リストで[.device_type]を選択します。
-
レコードのフィルタリング時にファンクションを適用したくないので、[Optionally select a function to apply] (適用するファンクションをオプションとして選択)リストで[None] (なし)を選択します。
-
電話を持つユーザーをフィルタリングしたいので、[Operator] (オペレーター)リストで==を選択し、[Value] (値)リスト内にphoneと入力します。
-
[Save] (保存)をクリックして設定を保存します。プレビューでは、フィルタリング条件(電話を持つユーザー)と一致するレコードを確認できます。
-
パイプラインで[ADD DESTINATION] (デスティネーションを追加)をクリックしてパネルを開くと、処理済みデータを保持するデータセットを選択できます。
必要であれば名前を変更します。
-
Talend Cloud Pipeline Designerの上部ツールバーで[Run] (実行)ボタンをクリックするとパネルが開き、実行プロファイルを選択できるようになります。
-
リストで実行プロファイルを選択し(詳細は実行プロファイルをご覧ください)、[Run] (実行)をクリックしてパイプラインを実行します。
タスクの結果
パイプラインは実行中となり、クエリー言語を使って記述した条件に基づいてデータが処理され、指定したターゲットシステムに出力されます。