目次
はじめに
こんにちは。Deckです。
この記事ではVizlib Writeback TableをSnowflakeに接続し、Snowflakeのデータベースを保存先に設定する方法を解説します。
前提として、環境はQlik Cloud+Vizlib Server for Qlik Cloudを利用しています。
手順1. Snowflake データベースとスキーマを作成
Snowflakeの管理コンソールにログインします。
Databaseページに移動し、「+Database」をクリックします。
データベース名を入力し、「Create」をクリックします。
「+Schema」をクリックします。
スキーマ名を入力し、「Create」をクリックします。
Snowflake側ではテーブルは作成しません。
理由としてはVizlib Writeback Tableでは名称がランダム生成のカラムがあり、この段階ではテーブルのカラム名を事前準備しておくことが困難であるためです。
あらかじめ用意したデータをWriteback Tableにインポートしたい場合、一通りの設定が終わった後にSnowflakeコンソールからデータをテーブルにインサートする必要があります。その手順については後ほど解説します。
手順2. Vizlib Server Integration設定
VMCにアクセスします。
SYSTEM SETTINGS>INTEGRATIONSに移動します。
「Add Integration」をクリックします。
Integrationの設定項目を入力します。
- Type: snowflake
- Id: 任意の文字列
- Database: Snowflake側で作成したデータベース名
- Username: Snowflakeのユーザー名
- Authennicator: 認証方法 例では「Password」を選択
- Password: Snowflakeのユーザーのパスワード
- Account: Snowflakeのアカウント名
- Warehouse: 利用するウェアハウス名
- Role: 利用するロール名
正しく設定が行われると、ダッシュボードに緑色で「Snowflake」のアイコンが追加されます。
手順3. Vizlib Server Destination設定
WRITEBACK SETTINGS>DESTINATIONSに移動し、「Add Destination」をクリックします。
Destinationの設定項目を入力します。
- Id: 任意の文字列
- Destination Type: Snowflake
- Operation: Update
- Reload Options: Reload App
- App: {{APPID}}
- HubSpotの記事レンダリングの都合上全角にしていますが、実際は半角で入力します
- DB Integration: プルダウンから選択
- Schema: 先ほど作成したスキーマを選択
- Table Name: 先ほど作成したテーブルを選択
- Allow columns creationをオン
その他の設定項目はデフォルトとします。
宛先が追加されました。
手順4. 検証用アプリ作成
Qlik Cloudに移動し、新規アプリを作成します。
シートの編集に移動し、Vizlib Writeback Tableを追加します。
「Set up」をクリックします。
宛先を選択します。
ここで認証ウインドウが表示される場合があります。
- Type: Server
- Writeback Destination: 先ほど作成した宛先
「Continue」をクリックします。
「Create column」をクリックして、いくつか項目を追加します。
「Continue」をクリックします。
「Open editor to adjust」をクリックします。
Writeback Tableで使用する項目に合わせたテストスクリプトを作成します。
このスクリプトはあとで削除します。
一旦リロードを行います。
手順5. テストデータ追加とテーブル生成
シート画面に移動します。
テストデータを追加し、「Writeback data」をクリックします。
テーブルを生成するか確認するウインドウが開きます。
「Ok」をクリックします。
データの書き込みが行われますが、まだ読み込みをする設定をしていないので空のテーブルが表示されます。
手順6. Snowflake接続スクリプト作成
スクリプト編集画面に移動します。
先ほど追加した仮のスクリプトを削除します。
「接続の新規作成」をクリックします。
コネクタはSnowflakeを選択します。
接続情報を入力します。
- Server: サーバーURL
- Database: データベース名
- Schema: スキーマ名
- Role: ロール名
- Authenication Mechanism: ユーザー名&パスワード
作成したデータ接続から「データを選択」をクリックします。
必要なテーブルと項目にチェックをつけ、「スクリプトを挿入」をクリックします。
スクリプトが自動生成されました。
データのリロードを行います。
再度テストデータを入力します。「Writeback data」をクリックします。
書き込んだデータが反映されました!
Snowflake側にも書き込んだデータが反映されています。
手順7(オプション). CSVからSnowflakeにデータを追加
さらに、このテーブルにCSVで用意したレコードを追加してみましょう。
取り込み対象となるCSVファイルを用意します。
Snowflakeのテーブル画面から「Load Data」をクリックします。
ロードするCSVを選択します。
File formatは「Delimitered Files(CSV or TSV)」を選択します。
CSVデータの取り込みが行われました。「Done」をクリックします。
Data Preview画面でCSV由来のレコードが正しく追加されていることを確認します。
Qlik Senseに更新を反映させるために、データのリロードを行います。
CSV由来のレコードが無事に反映されました!
以上でVizlib Writeback Tableの保存先をSnowflakeに設定する方法の解説を終わります。