StreamSetsをSnowflakeに統合する | WhoisXML API

WhoisXML API Blog

StreamSetsをSnowflakeに統合する

このガイドでは、StreamSetsをSnowflakeに統合する手順を説明します。

前提条件

  • StreamSetsのアカウント
  • DockerのData Collector(前のガイドに記載の通り)
  • Snowflakeのアカウント
  • WHOISXMLAPI.COMのReal-Time Domain Registrationのサブスクリプション 

設計の概要

Design Overview

Snowflakeでデータベースを作成する

ステップ1: ウェアハウスをセットアップする

  • ログイン後、サイドバーの「Admin」から「Warehouses」を選択し、以下の画像のように「Warehouse」ボタンをクリックしてください。
Set Up a Warehouse
  • 適切なウェアハウス名を選択し、「Create Warehouse」をクリックしてください。
Select the appropriate warehouse name and click on the “Create Warehouse” button.

ステップ2:データベースをセットアップする

  • サイドバーの「Data」を選択し、「Databases」を選んでクリックします。
Navigate to the sidebar select "Data" and choose "Databases" Click on Database button
  • 適切なデータベース名を選び、「Create」をクリックします。
Select the appropriate database name and click on “Create” button.

ステップ3:スキーマを作成する

  • データベースを選択し、「+Schema」をクリックします。
Select database and click on “+ Schema”  button
  • 適切なスキーマ名を選択し、「Create」をクリックします。
Select the appropriate Schema name and click on “Create” button.

ステップ4:ステージを作成する

  • 前のステップで作成されたスキーマを選んで「Create」をクリックし、「Stage」を選択します。そして、「Snowflake Managed」をクリックします。
create stage
  • 適切なステージ名を選び、「Create」をクリックします。
Select the appropriate Stage name and click on “Create” button.

ステップ5:テーブルを作成する

  • 上の手順で作成されたスキーマを選んで「Create」ボタンをクリックし、「Table」を選択します。そして、「Standard」をクリックします。
create table
  • 下図のようにSQLクエリを記述してテーブルを作成し、「Create Table」をクリックします。
Create Table by writing the SQL query as depicted below and click on the “Create Table” button.

Snowflakeのコネクションを作成する

ステップ6: コネクションをセットアップする

  • StreamSets UIでサイドバーから「Setup」、「Connections」を選択します。下図のように、「+」ボタンをクリックしてコネクションを作成します。
setup a connection
  • 新しいコネクションを仕様に従ってカスタマイズし、「Save & Next」をクリックして進みます。データコレクタとタイプを選択してください。
Customize the new Connection according to your specifications, and proceed by clicking on the "Save & Next" button
  • あなたの認証情報に従って新しいコネクションを設定し、「Save」をクリックして進みます。必ずコネクションのテストを行なってください。
Configure the new Connection according to your credentials

パイプラインを作成する

ステップ7:パイプラインをセットアップする

  • StreamSets UIでサイドバーから「Build」、「Pipelines」を選択します。下図のように、「+」をクリックしてパイプラインを開始します。
setup pipeline
  • 新しいパイプラインを仕様に合わせてカスタマイズし、「Next」をクリックして進みます。
Customize the new pipeline according to your specifications, and proceed by clicking on the "Next" button.
  • パイプラインの設定を調整して指定のデータコレクタを選択し、「Save & Open in Canvas」をクリックします。
adjust the pipeline configuration
  • 以下のようなユーザーインターフェース(UI)が表示されます。 
the following user interface (UI) will be displayed
  • 「Add Stage」をクリックし、次に「WebSocket」を検索します。そして、「WebSocket Client」を選択します。
Click on the "Add Stage" button, then search for "WebSocket" and choose the "WebSocket Client."

WebSocketステージを選択し、必要に応じて設定します。

WebSocketを設定する 

  • Resource URLを追加します。 
  • Request Dataを追加します(APIキーが入ります)。
  • Max Message Length (bytes)に入力します(最小値:522184)。 
WebSocket Configuration

データフォーマットの設定

  • Data FormatでJSONを選択します。
  • Max Object Length (chars)に9999999を入力します(必要に応じて変更できます)。
data format configuration
  • UIで「Add Stage」を選んでステージを追加し、「Snowflake (destinations)」ステージを選択します。
Add another stage by selecting the "Add Stage"

Snowflakeを設定する 

  • 前のステップで作成したコネクションを選択します。
Snowflake configuration
  • SnowflakeのConfigurationでWarehouse、Database、Schema、Tableを入力します。「Create New Columns」にチェックを入れると、自動的にテーブルにカラムが作成されます。
Add the Snowflake configuration warehouse
  • StagingのConfigurationでStage Name、Stage Database、Stage Schemaに記入します。
Add the staging configuration stage location
  • DataのConfigurationに設定を記入します。
Add the data configuration

最終ステップ

設定後、「Validate」をクリックしてパイプラインを検証し、エラーを修正します。パイプラインの最終状態は、下図のようになっているはずです。

final steps

パイプラインを実行する

UIで「Draft Run」、「Start Pipeline」を選択してパイプラインを実行します。

Running Pipeline

前述の手順を完了してパイプラインを起動すると、下図のようなUIが表示されます。

upon starting the pipeline, you should observe the displayed UI

Snowflakeデータベース内で、WebSocketから取得したデータを含むテーブル上のデータを下図のようにプレビューできるはずです。

preview the data on the table, containing data sourced from the WebSocket

まとめ

本ガイドでは、Dockerを使用してStreamSets UIでパイプラインを設定および実行する手順を概説しました。WebSocket Clientの設定からSnowflakeステージの定義までの各ステップが、データ処理のパイプライン構築に貢献しています。検証ステップではパイプラインの整合性を担保し、実行に成功するとSnowflakeのUIにアウトプットが表示されます。このガイドで説明した手順を踏むことで、合理的なデータ処理パイプラインの作成、設定および実行、ならびにデータの効果的な統合と管理を実現できます。

WhoisXML APIを無料でお試しください
トップページ