CData API Server で Slingshot の Snowflake のデータ を分析
Slingshot(旧 Reveal BI)は、データ駆動型のワークマネジメントスイートで、アナリティクス、チームおよびプロジェクトの調整、コンテンツ共有、コミュニケーションを単一のプラットフォームに統合します。CData API Server を使用すると、Slingshot でシームレスに利用可能なライブ Snowflake のデータ 用の OData API を生成できます。
このガイドでは、CData API Server を使用して Snowflake 用の OData エンドポイント を生成し、それらのエンドポイントを Slingshot に取り込んでリアルタイムダッシュボードを作成し、データ分析を効率化するステップバイステップのプロセスをご紹介します。
それでは始めましょう!
前提条件
- CData API Server: こちらから無料トライアルをダウンロードできます。
- Slingshot アカウントとアプリ: こちらからログインまたはサインアップしてダウンロードできます。
- データを含むアクティブな Snowflake アカウント。
概要
以下の手順で進めていきます。
- CData API Server をインストールし、Snowflake への接続を設定して、Slingshot で使用するために API Server 内で Snowflake のデータ の OData API エンドポイントを生成します。
- これらのエンドポイントを Slingshot で接続し、インタラクティブなダッシュボードを構築してリアルタイム分析を行います。
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
はじめに
ステップ 1:CData API Server のインストール、設定、Snowflake への接続
1.1 API Server のインストール
まだインストールしていない場合は、CData API Server をダウンロードしてインストールしてください。インストールウィザードに従ってセットアップを完了します。
インストールが完了したら、以下の方法でサーバーを起動できます。
- Windows: CData API Server はデフォルトでサービスとして実行されます。サービスが実行されていることを確認し、ブラウザで http://localhost:8080/ を開いて API Server 管理コンソールにアクセスします。
- Linux/Mac: サーバーを手動で実行するか、サービスとして実行できます。手動で起動するには、インストールディレクトリに移動して java -jar apiserver.jar を実行します。
- また、root 権限で service.sh を実行して、API Server を Linux システムサービスとしてセットアップすることもできます。
1.2 CORS の有効化
Slingshot アプリと API Server が異なるドメインでホストされている場合、クロスドメイン通信を可能にするために CORS(Cross-Origin Resource Sharing)を有効にする必要があります。API Server で CORS を有効にするには:
- 「Settings」に移動し、 アイコンをクリックして CORS 設定を編集します。
- Cross-Origin Resource Sharing (CORS) を有効にします。
- Allow all domains without '*' を有効にして、すべてのオリジンを許可します。
- Access-Control-Allow-Origin に Snowflake のオリジンドメインを入力するか、* を使用してすべてのドメインを許可します。これはパブリック API に適しています。
- Access-Control-Allow-Credentials を有効にして、Cookie と認証ヘッダーを許可します。
- Access-Control-Allow-Methods に GET, PUT, POST, OPTIONS を入力します。
- Access-Control-Allow-Headers に Authorization, Content-Type を入力します。
- Access-Control-Max-Age(デフォルト:3600 秒)を設定して、プリフライトリクエストをキャッシュします。
- 「Save」をクリックします。
1.3 API Server で Snowflake 接続を設定
- 「Settings」に移動し、右上の Add Connection をクリックします。
- Snowflake を選択します。表示されない場合は、Only Installed をオフにしてすべてのコネクタを表示します。
- Install Connector をクリックして自動インストールします。手動セットアップの場合は、Manual Install を選択して ZIP ファイルをアップロードします。
- インストールが完了したら、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 データベーススキーマのものに制限したい場合に設定します
- User:認証に使用するユーザーアカウント
- PrivateKey:プライベートキーを含む.pem ファイルへのパスなど、ユーザーに使用されるプライベートキー
- PrivateKeyType:プライベートキーを含むキーストアの種類(PEMKEY_FILE、PFXFILE など)
- PrivateKeyPassword:指定されたプライベートキーのパスワード
- 「Save & Test」をクリックして接続設定を検証し完了します。
それでは、Snowflake データベースに接続していきましょう。認証に加えて、以下の接続プロパティを設定します。
Snowflakeへの認証
CData 製品では、Snowflake ユーザー認証、フェデレーション認証、およびSSL クライアント認証をサポートしています。認証するには、User とPassword を設定し、AuthScheme プロパティで認証方法を選択してください。
キーペア認証
ユーザーアカウントに定義されたプライベートキーを使用してセキュアなトークンを作成し、キーペア認証で接続することも可能です。この方法で接続するには、AuthScheme をPRIVATEKEY に設定し、以下の値を設定してください。
その他の認証方法については、ヘルプドキュメントの「Snowflakeへの認証」セクションをご確認ください。
1.4. ユーザーの追加と設定
OData エンドポイントへの安全なアクセスを許可するために、CData API Server でユーザーを作成・設定する必要があります。各ユーザーには認証情報とロールベースのアクセス制御があり、承認されたユーザーのみが接続されたデータをクエリできるようになります。
- ナビゲーションペインから「Users」に移動し、右上の Add User をクリックします。
- Username を入力し、ユーザーの安全な Password を設定します。
- Role を選択します:
- Admin: 設定や接続を含むすべての機能へのフルアクセス。
- Query: API エンドポイント経由のデータアクセスに限定(Slingshot での使用に適しています)。
- (オプション)レート制限を設定:
- Requests Per Hour: 1 時間あたりの許可される API コール数(デフォルト:1000)。
- Max Concurrent Requests: 許可される並列 API リクエスト数(デフォルト:10)。
- ユーザーの Privileges を定義:
- GET: データの取得を許可。
- POST: 新しいレコードの作成を許可。
- PUT, MERGE, PATCH: 既存レコードの更新を許可。
- DELETE: レコードの削除を許可。
- 「Add User」をクリックしてユーザーアカウントを保存し、有効化します。
ユーザーが作成されると、Authtoken が自動的に生成されます。このトークンは、パスワードの代わりに安全な認証方法として API リクエストで使用できます。
また、Authtoken を更新したり、無効にしたり、ユーザー設定で Token Expiration オプションを有効にして有効期限ルール(例:有効期限までの日数)を設定することもできます。
1.5. エンドポイント用のテーブルを追加
OData 経由で Slingshot にデータを利用できるようにするには、API Server を通じて目的のテーブルを公開する必要があります。
- CData API Server で、左側のナビゲーションから「API」に移動し、右上の Add Table をクリックします。
- 先ほど設定した Snowflake 接続を選択し、「Next」をクリックします。
- Tables セクションを展開して、利用可能なエンティティとスキーマを参照します。個々のテーブルを選択するか、上部の TABLE NAME チェックボックスをクリックしてすべてを選択します。次に「Confirm」をクリックします。
1.6. Slingshot でエンドポイントにアクセス・使用
API の設定が完了したので、Slingshot から OData エンドポイントに接続してライブデータを可視化できます。以下のエンドポイント URL 形式を使用して API リソースにアクセスします。
| エンドポイント | URL | |
|---|---|---|
| エンティティ一覧 | http://address:port/api.rsc/ | |
| テーブルメタデータ(例:albums) | http://address:port/api.rsc/albums/$metadata?@json | |
| テーブルデータ(例:albums) | http://address:port/api.rsc/albums |
これらの OData エンドポイントは、URL を使用して新しいデータソースを作成することで Slingshot で直接利用できるようになりました。Slingshot は OData をサポートしているため、接続後は Snowflake からのライブデータを使用してダッシュボードやビジュアライゼーションを構築できます。
Slingshot でのカスタムクエリやフィルターされたビジュアライゼーションには、$select、$filter、$orderby、$top、$skip などの標準 OData クエリパラメータをリクエストに追加できます。
ステップ 2:Slingshot で Snowflake エンドポイントに接続してデータを分析
OData API の準備ができたので、Slingshot に取り込んでライブSnowflake のデータの分析を開始しましょう。
2.1 OData エンドポイントをデータソースとして追加
- デスクトップアプリを使用するか、https://my.slingshotapp.io/ にアクセスして Slingshot アカウントにログインします。
- 左側のパネルで「My Analytics」に移動します。上部の「Data Source」をクリックし、右上の Data Source をクリックします。
- OData Feed を検索し、結果から選択します。
- URL フィールドに、CData API Server からの OData エンドポイント URL を入力します。CData API Server ダッシュボードの右上にある API > View Endpoints に移動して確認できます。
- Credentials をクリックし、ドロップダウンから Credential ボタンを選択します。
- CData API Server で作成したユーザーの Username と Password または Auth Token を入力します。「Add」をクリックし、次に「Add Data Source」をクリックして完了します。
- 接続された OData Feed をクリックし、目的のテーブルを選択して「Select Data」をクリックして分析を開始します。
2.2 データの分析
OData フィードが接続され、Slingshot で利用可能になったので、リアルタイムでデータを探索・分析するためのビジュアライゼーションを作成できます。
この例では、シンプルな Grid ビジュアライゼーションを構築してみましょう。
- Column ドラッグアウトパネルをクリックし、Grid を選択します。
- テーブルから目的のカラムを Grid にドラッグ&ドロップします。Slingshot はそれらのフィールドを使用してライブデータビューを自動的に作成します。
同様に、パネルから適切なコンポーネントを選択することで、チャート、テーブル、ピボットビューなどのさまざまなビジュアライゼーションを作成できます。必要に応じてドラッグ、ドロップ、設定して、複数の角度からデータを探索できます。
必要に応じてフィルターを適用したり、値をソートしたり、行をグループ化したりして、データをさらに操作できます。ライブ Snowflake のデータ に接続された OData フィードからのデータを使用して、ダッシュボードを思い通りにカスタマイズする可能性は無限大です。
CData API Server を 30 日間無料でお試しください
CData API Server は、270 以上のライブデータソースから REST API を構築する最速の方法を提供します。リアルタイムアプリ統合に対応したノーコード/ローコードのプラグアンドプレイアプローチです!
無料トライアルを開始して、Slingshot などのツールと即座に接続しましょう。チームがデータにアクセスし、データを活用する方法を今日から簡素化できます。