Claris FileMaker Pro のスクリプト機能を使ってSnowflake のデータに接続
Claris FileMaker は、データの管理や整理のためのカスタムアプリを作成できるローコードデータベースアプリケーション開発ツールです。強力なリレーショナルデータベースエンジンと直感的なインターフェースを組み合わせており、技術者でも非技術者でも、デスクトップ、Web、モバイルプラットフォーム向けのアプリケーションを設計・デプロイできます。
この記事では、CData ODBC Driver for Snowflake と FileMaker のスクリプト機能を使ってSnowflake のデータに接続する方法を解説します。
Snowflake データ連携について
CData は、Snowflake のライブデータへのアクセスと統合を簡素化します。お客様は CData の接続機能を以下の目的で活用しています:
- Snowflake データを迅速かつ効率的に読み書きできます。
- 指定された Warehouse、Database、Schema のメタデータを動的に取得できます。
- OAuth、OKTA、Azure AD、Azure マネージド サービス ID、PingFederate、秘密鍵など、さまざまな方法で認証できます。
多くの CData ユーザーは、CData ソリューションを使用して、お気に入りのツールやアプリケーションから Snowflake にアクセスし、さまざまなシステムからデータを Snowflake にレプリケートして、包括的なウェアハウジングと分析を行っています。
CData ソリューションとの Snowflake 統合についての詳細は、ブログをご覧ください:https://jp.cdata.com/blog/snowflake-integrations
はじめに
Snowflake 用の ODBC データソースを作成
まだ設定していない場合は、最初に ODBC DSN(データソース名)で接続プロパティを指定します。これはドライバーインストールの最終ステップでもあります。Microsoft ODBC データソースアドミニストレーターを使用して ODBC DSN を作成・設定できます。
それでは、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(オプション):CData 製品によって公開されるテーブルとビューを、特定のSnowflake データベースのものに制限したい場合に設定します
- Schema(オプション):CData 製品によって公開されるテーブルとビューを、特定のSnowflake データベーススキーマのものに制限したい場合に設定します
Snowflakeへの認証
CData 製品では、Snowflake ユーザー認証、フェデレーション認証、およびSSL クライアント認証をサポートしています。認証するには、User とPassword を設定し、AuthScheme プロパティで認証方法を選択してください。
キーペア認証
ユーザーアカウントに定義されたプライベートキーを使用してセキュアなトークンを作成し、キーペア認証で接続することも可能です。この方法で接続するには、AuthScheme をPRIVATEKEY に設定し、以下の値を設定してください。
- User:認証に使用するユーザーアカウント
- PrivateKey:プライベートキーを含む.pem ファイルへのパスなど、ユーザーに使用されるプライベートキー
- PrivateKeyType:プライベートキーを含むキーストアの種類(PEMKEY_FILE、PFXFILE など)
- PrivateKeyPassword:指定されたプライベートキーのパスワード
その他の認証方法については、ヘルプドキュメントの「Snowflakeへの認証」セクションをご確認ください。
DSN を設定する際には、Max Rows 接続プロパティも設定することをお勧めします。これにより返される行数が制限され、レポートやビジュアライゼーションの設計時にパフォーマンスを向上させるのに役立ちます。
スクリプトを使用して FileMaker でSnowflake のデータを接続・同期
このセクションでは、CData ODBC Driver for Snowflake とスクリプト機能を使用して、FileMaker にリアルタイムのSnowflake データを接続する手順を説明します。初回インポート時には、FileMaker は外部データソースからすべてのデータを取り込みます。2回目以降のインポートでは、外部ソースで変更されたデータのみが更新されます(差分更新)。また、現在のレコード順序でデータを置換したり、これらの差分更新を自動同期のためにスケジュール設定することもできます。
Mac/Windows/Linux システム向けの最新版 FileMaker Pro は、こちらのリンクからダウンロード・インストールできます。
スクリプトを使った FileMaker との接続と同期
FileMaker のスクリプト機能を使用すると、単一のコマンドで一連のアクションを実行し、複雑なタスクやワークフローを自動化できます。スクリプトを使ってSnowflake と連携することで、FileMaker アプリケーション内でSnowflake のデータへの接続、インポート、更新、置換を自動化し、データ管理を効率化できます。
スクリプトを使った初回インポートとデータの追加
このセクションでは、以下の手順でスクリプトを使ってSnowflake のデータを FileMaker にインポートします:
- FileMaker Pro を開きます。左パネルから Create に移動し、Blank > Create を選択します。
- 任意のファイル名を入力して Save をクリックします。
- Manage Database ウィンドウで Tables タブに移動し、Snowflake のデータを表示するテーブルを作成または名前変更します。
- Fields タブで、テーブルで使用するフィールドを作成・追加します。
- Relationships タブで、複数のテーブルがある場合はテーブルのリレーションシップを追加し、OK をクリックします。
- テーブル構造を再度開いて変更するには、File > Manage > Database に移動します。
- Scripts > Script Workspace に移動します。
- New Script を選択して新しいスクリプトワークスペースを開きます。
- 右側の Steps パネルから Records > Import Records > Insert into Script を選択します。
- Specify Data Source ドロップダウンで ODBC Data を選択します。
- Select ODBC Data Source ウィンドウから CData Snowflake Sys を選択し、Continue をクリックします。Snowflake の資格情報を入力して OK をクリックします。
- Specify ODBC SQL Query ダイアログで、SQL text エディタに SQL クエリを入力して、インポートしたいSnowflake のデータを指定します。
- あるいは、Query Builder を選択して SQL Query Builder ウィンドウを開きます。Tables セクションから対象テーブルを選択し、Columns セクションから関連するカラムを選択します。各選択後に Insert into SQL Query をクリックしてクエリを自動生成します。WHERE や ORDER BY 句、または専用のタブを使用してクエリを手動で編集することもできます。OK をクリックしてクエリを確定します。
- OK をクリックします。
- Specify import order オプションで Specify をクリックし、Snowflake の資格情報を入力します。
- Specify Import Order ウィンドウで、先ほど追加したターゲットフィールドのインポート順序を定義します。ソースフィールドとターゲットフィールドの間で Add を選択して、Snowflake のデータを新しいレコードとしてテーブルに挿入します。Import をクリックします。
- これでスクリプトがワークスペースに表示されます。Run をクリックしてスクリプトを実行し、インポートを処理します。
- FileMaker がSnowflake のデータをテーブルとしてインポートします。
スクリプトを使ったインポート済みデータの更新または置換
Snowflake のデータを FileMaker にインポートした後、以下の手順でスクリプトを使ってSnowflake で行われた変更を更新または置換できます:
- 前のセクションで説明した手順に従って Script Workspace に戻ります。
- 既存のスクリプトを選択し、設定ボタンをクリックして Specify Import Order の下の Specify を選択し、認証のためにSnowflake の資格情報を再入力します。
- Specify Import Order ウィンドウで、ソースとターゲットの間で Update を選択して、インポート済みのSnowflake データを更新します。これにより、マッチフィールドの値が同じ場合に、選択したフィールドのSnowflake データ値でターゲットの検索セットが更新されます。マッピングで少なくとも1つのマッチフィールドを定義し、Add remaining data as new records チェックボックスを選択する必要があります。Import をクリックします。
- あるいは、ユースケースに応じて Update の代わりに Replace オプションを選択します。これにより、ターゲットの検索セット内の選択したフィールドが、現在のレコード順序でSnowflake のデータに置換されます。Import をクリックします。
- FileMaker がスクリプトをワークスペースに追加します。Run をクリックしてスクリプトを実行し、インポートクエリを処理します。
- FileMaker が更新または置換されたSnowflake のデータをテーブルとしてインポートします。
今すぐ始めましょう
CData ODBC Driver for Snowflake の30日間無償トライアルをダウンロードして、Snowflake のデータを Claris FileMaker に統合し、FileMaker アプリケーションでSnowflake のデータを活用してみてください。
ご質問がある場合は、サポートチームまでお問い合わせください。