各製品の資料を入手。
詳細はこちら →RPA ツールBizRobo! でSnowflake に連携したフローを作成する
RPA ツールBizRobo! で Snowflake に連携したフローを作成する方法:CData JDBC Driver。
最終更新日:2022-03-24
この記事で実現できるSnowflake 連携のシナリオ
こんにちは!リードエンジニアの杉本です。
BizRobo! はRPAテクノロジーズ株式会社が提供する低コストかつスモールスタートで利用できるRPA ツールです。
この記事では、BizRobo! に備わっているJDBC インターフェースと CData JDBC Driver for Snowflake を組み合わせることによりBizRobo! でSnowflake
データを活用した自動化フローを作成する方法を紹介します。
BizRobo! 環境の構成
はじめるにあたりBizRobo! 側の環境を用意しておきます。
- 今回は検証にあたって、BizRobo! Basic を利用しました。JDBC Driver のアップロードに「BizRobo! Management Console」を利用するためです。
- 「BizRobo! Management Console」にアクセスするために、あらかじめBizRobo! Basic がインストールされたサーバー上で「Start Management Console」を実行しておきましょう。


CData JDBC Driver for Snowflake のインストール
続いてCData JDBC Driver for Snowflake をBizRobo! と同じマシンにインストールします。
-
以下のパスにJDBC Driver がインストールされます。
C:\Program Files\CData\CData JDBC Driver for Snowflake 20xxJ\lib\cdata.jdbc.snowflake.jar
- 続いて、接続用の文字列を取得するために、CData JDBC Driverの接続ユーティリティを利用しましょう。対象の「cdata.jdbc.snowflake.jar」を実行します。
- 以下のような接続テストツールが立ち上がるので必要なプロパティを指定し接続テストを実行します。入力した接続文字列はあとで利用するので控えておきましょう。
URL:
jdbc:snowflake:User=Admin;Password=test123;Server=localhost;Database=Northwind;Warehouse=TestWarehouse;Account=Tester1;
- また、事前に DbVisualizer のようなJDBC の接続ツールでどのようなデータが取得できるか確認しておくのがおすすめです。
-
Snowflake データベースに接続するには、認証に加えて次のプロパティを設定します。
- Url:自身のSnowflake URL、例えばhttps://orgname-myaccount.snowflakecomputing.com。
- Legacy URL を使用する場合:https://myaccount.region.snowflakecomputing.com
- 自身のURL を見つけるには:
- Snowflake UI の左下にある自身の名前をクリックします。
- Account ID にカーソルを合わせます。
- Copy Account URL アイコンをクリックして、アカウントURL をコピーします。
- Database(オプション):によって公開されるテーブルとビューを、特定のSnowflake データベースのものに制限します。
- Schema(オプション):本製品によって公開されるテーブルとビューを、特定のSnowflake データベーススキーマのものに制限します。
Snowflake への認証
本製品は、Snowflake ユーザー認証、フェデレーション認証、およびSSL クライアント認証をサポートしています。認証するには、User とPassword を設定し、AuthScheme プロパティで認証メソッドを選択します。
キーペア
ユーザーアカウントに定義されたプライベートキーを使用してセキュアなトークンを作成することにより、キーペア認証を使用して認証できます。この方法で接続するには、AuthScheme をPRIVATEKEY に設定し、次の値を設定します。
- User:認証に使用するユーザーアカウント。
- PrivateKey:プライベートキーを含む.pem ファイルへのパスなど、ユーザーに使用されるプライベートキー。
- PrivateKeyType:プライベートキーを含むキーストアの種類(PEMKEY_FILE、PFXFILE など)。
- PrivateKeyPassword:指定されたプライベートキーのパスワード。
その他の認証方法は、ヘルプドキュメントの「Snowflake への認証」セクションを参照してください。
- Url:自身のSnowflake URL、例えばhttps://orgname-myaccount.snowflakecomputing.com。



BizRobo! にJDBC Driver をアップするために lic ファイルを調整
併せてCData JDBC ドライバのライセンスファイルをBizRobo! にアップロードするために少し追加の作業を実施します。
- 「lib」フォルダに存在する「cdata.jdbc.snowflake.lic」ファイルをZIPに圧縮し
- 名前を「cdata.jdbc.snowflake.lic.jar」に変更しておきます。これでBizRobo! にアップロードできるようになります。


BizRobo! Managmenet Console にJDBC Driver をアップロード
それでは「BizRobo! Managmenet Console」でCData JDBC ドライバを利用できるように設定を進めていきましょう。
- 「設定」→「データベース ドライバー」から「cdata.jdbc.snowflake.jar」、「cdata.jdbc.snowflake.lic.jar」2つのファイルをアップロードします。
- CData JDBC ドライバのアップロードが完了したら「データベースタイプ」で接続設定を追加しましょう。「設定」→「データベース タイプ」から「新しいタイプ」として以下の情報を入力し保存します。
名前: 例)CData JDBC Driver
JDBC ドライバー:cdata.jdbc.snowflake.SnowflakeDriver
接続URL テンプレート:
jdbc:snowflake:User=Admin;Password=test123;Server=localhost;Database=Northwind;Warehouse=TestWarehouse;Account=Tester1;
SQLフレーバー:PostgreSQL - 続いて対象のクラスタにデータベース接続を追加します。「管理」→「RoboServer」から対象のクラスタの「クラスタ設定」を開きます。
- 「新しいデータベース」をクリックし各種情報を指定します。この際、明示的な指定が必要なものは「タイプ」だけです。ここで先ほど作成したデータベースタイプを入力します。それ以外の情報は内部的には利用しないので、任意の文字列を入力してもらって構いません。
- これで設定を反映させれば対象のクラスタでCData JDBC ドライバが利用できるようになります。




データベース設定をプロジェクトに追加
Design Studio を立ち上げて、ロボットを作成するためのプロジェクト側の準備を進めていきましょう。
- 「BizRobo! Managmenet Console」で追加したデータベース設定は Design Studio のデータベース一覧に表示されるのでここから右クリックで「プロジェクトに追加」から対象の環境に追加します。
- 任意のマッピング名で追加します。
- ちなみにデフォルトでは警告メッセージが表示されてしまうので、追加したデータベース マッピングの「設定」から
- 「警告を表示」のチェックを外しておくと良いです。




データを格納するためのタイプを追加
続いて、取得したデータを変数に適切に追加するために、「タイプ」を作成しましょう。
- メニューの「ファイル」→「新しいタイプ」をクリックし
- 任意のタイプ名で作成します。
- あとは下記のように各種項目を定義します。



新しいWeb オートメーションロボットを追加
実際にロボットの作成を開始します。
- 「メニュー」から「新しい Web オートメーションロボット」を選択し
- 任意の名称で作成します。
- これで以下のようにデフォルトのロボットが作成され、フローのデザイン画面が表示されます。



変数の準備
取得したデータを格納する変数を設定します。
- 以下の変数画面から「+」ボタンをクリックし
- 先ほど作成したタイプを元に変数を追加します。


データベース照会アクションを追加
変数を追加したら、実際にCData JDBC ドライバ経由でデータを取得するアクションを追加します。
- デザイン画面から「アクション ステップ」を追加し
- アクションの一覧から「データベース照会」を選択します。「データベース」で先ほど登録したデータベースマッピングを選択し、SQL クエリの欄にデータを取得するためのクエリを入力します。最後に変数マップとして先ほど登録したタイプ変数にSQL クエリで取得できる各項目をマッピングします。


CSV 出力フローを追加
取得したデータはBizRobo! の機能を使って、自由に処理できます。
- 今回は試しにCSV データとして出力を行ってみました。詳細な手順は省略しますが、フローの作成方法はBizRobo! のマニュアルを参考に作成しています。
- 対象のCSV ファイルを読み込むアクションを追加し、LongText の変数に格納します。
- そのCSV ファイルデータを元に、レコードを1行づつ追加するファイル出力アクションを設定しました。



デバッグして実際に動かしてみる
これでロボットが完成です。それでは実際に動かしてみましょう。
- デバッグ画面に移動して、「実行」ボタンをクリックします。
- 正常にロボットが動作すると、以下のようにCSV ファイルが生成されます。


このようにCData JDBC Driver for Snowflake とBizRobo! を組み合わせることで、簡単にSnowflake のデータを活用した自動化フローを作成することができました。ぜひ、30日の無償評価版をお試しください。