MicroStrategy でCData JDBC Driver を使ってSnowflake に接続

CData JDBC Driver を使用してMicroStrategy Developer のSnowflake に接続します。

加藤龍彦
デジタルマーケティング

最終更新日:2023-09-16

この記事で実現できるSnowflake 連携のシナリオ

こんにちは!ウェブ担当の加藤です。マーケ関連のデータ分析や整備もやっています。

MicroStrategy は、データ主導のイノベーションを可能にする、モビリティプラットフォームです。MicroStrategy をCData JDBC Driver for Snowflake とペアリングすると、MicroStrategy からリアルタイムSnowflake へのデータベースのようなアクセスが得られ、レポート機能と分析機能が拡張されます。この記事では、MicroStrategy Developer でSnowflake のデータベースインスタンスを作成し、Snowflake のWarehouse Catalog を作成します。

CData JDBC ドライバーは、ドライバーに組み込まれた最適化されたデータ処理により、MicroStrategy でリアルタイムSnowflake と対話するための圧倒的なパフォーマンスを提供します。MicroStrategy からSnowflake に複雑なSQL クエリを発行すると、ドライバーはフィルタや集計などのサポートされているSQL 操作をSnowflake に直接プッシュし、組み込みSQL エンジンを利用して、サポートされていない操作(一般的にはSQL 関数とJOIN 操作) をクライアント側で処理します。組み込みの動的メタデータクエリを使用すると、ネイティブのMicroStrategy データタイプを使用してSnowflake を視覚化および分析できます。

MicroStrategy Developer のSnowflake に接続

CData JDBC Driver for Snowflake に基づくデータベースインスタンスを追加することにより、MicroStrategy Developer のSnowflake に接続できます。* 開始する前に、MicroStrategy Developer のインスタンスが接続されているMicroStrategy Intelligence Server をホストとするマシンにJDBC Driver for Snowflake をインストールする必要があります。

  1. MicroStrategy Developer を開き、[Project Source]を選択します。
  2. [Administration]->[Configuration Managers]->[Database Instances]と進み、右クリックして新しいインスタンスを追加します。 新規データベースインスタンスの作成
  3. インスタンスに名前を付け、データベース接続タイプとしてGeneric DBMS を選択し、新しいデータベース接続を作成します。 新規データベース接続の作成
  4. データベース接続ウィザードで接続に名前を付け、新しいデータベースログイン名を作成してSnowflake のユーザーとパスワードを設定します。 新規データベースログインの作成
  5. 接続ウィザードの[Advanced]タブで、追加の接続文字列パラメータを以下のように設定します。
    • JDBC キーワードを接続文字列に追加します。
    • MSTR_JDBC_JAR_FOLDER をJDBC ドライバーのJAR ファイルを含むディレクトリのパスに設定します。(C:\Program Files\CData JDBC Driver for Snowflake\lib\ on Windows.)
    • DRIVER をドライバークラスであるcdata.jdbc.snowflake.SnowflakeDriver に設定します。
    • URL をSnowflake ドライバーのJDBC URL に設定します。これには、必要な接続プロパティが含まれています。

      Snowflake データベースに接続するには、認証に加えて次のプロパティを設定します。

      • Url:自身のSnowflake URL、例えばhttps://orgname-myaccount.snowflakecomputing.com
        • Legacy URL を使用する場合:https://myaccount.region.snowflakecomputing.com
        • 自身のURL を見つけるには:
          1. Snowflake UI の左下にある自身の名前をクリックします。
          2. Account ID にカーソルを合わせます。
          3. Copy Account URL アイコンをクリックして、アカウントURL をコピーします。
      • Database(オプション):によって公開されるテーブルとビューを、特定のSnowflake データベースのものに制限します。
      • Schema(オプション):本製品によって公開されるテーブルとビューを、特定のSnowflake データベーススキーマのものに制限します。

      Snowflake への認証

      本製品は、Snowflake ユーザー認証、フェデレーション認証、およびSSL クライアント認証をサポートしています。認証するには、UserPassword を設定し、AuthScheme プロパティで認証メソッドを選択します。

      キーペア

      ユーザーアカウントに定義されたプライベートキーを使用してセキュアなトークンを作成することにより、キーペア認証を使用して認証できます。この方法で接続するには、AuthSchemePRIVATEKEY に設定し、次の値を設定します。

      • User:認証に使用するユーザーアカウント。
      • PrivateKey:プライベートキーを含む.pem ファイルへのパスなど、ユーザーに使用されるプライベートキー。
      • PrivateKeyType:プライベートキーを含むキーストアの種類(PEMKEY_FILE、PFXFILE など)。
      • PrivateKeyPassword:指定されたプライベートキーのパスワード。

      その他の認証方法は、ヘルプドキュメントの「Snowflake への認証」セクションを参照してください。

      ビルトイン接続文字列デザイナ

      JDBC URL の構成については、Snowflake JDBC Driver に組み込まれている接続文字列デザイナを使用してください。JAR ファイルのダブルクリック、またはコマンドラインからJAR ファイルを実行します。

      java -jar cdata.jdbc.snowflake.jar

      接続プロパティを入力し、接続文字列をクリップボードにコピーします。

      接続文字列ビルダーでJDBC URL を作成

      JDBC URL を構成する際に、Max Rows プロパティを定めることも可能です。これによって戻される行数を制限するため、可視化・レポートのデザイン設計時のパフォーマンスを向上させるのに役立ちます。

    以下は、一般的な追加の接続文字列プロパティです。

    JDBC;MSTR_JDBC_JAR_FOLDER=PATH\TO\JAR\;DRIVER=cdata.jdbc.snowflake.SnowflakeDriver;URL={jdbc:snowflake:User=Admin;Password=test123;Server=localhost;Database=Northwind;Warehouse=TestWarehouse;Account=Tester1;}; Configuring the connection to Snowflake データ using JDBC.
  6. ODBC データソースが選択されていないことを確認し、(これによりMicroStrategy がトリガーされ、追加の接続文字列パラメータを使用してデータベースインスタンスが構築されます)[OK]をクリックします。
  7. [OK]をクリックし、データベースインスタンスウィザードを閉じます。
  8. [Project Source]でプロジェクトを右クリックし、[Project configuration]を開きます。
  9. [Database Instances]に移動し、新しく作成したデータベースインスタンスを選択して[OK]をクリックします。 Adding the new database instance to the project.
  10. MicroStrategy Developerを閉じ、接続されたMicroStrategy Intelligence Server を再起動してデータベースインスタンスの作成を完了します。

データベースインスタンスを構成すると、Warehouse Catalog およびData Import からSnowflake に接続できるようになります。

Warehouse Catalog からSnowflake のデータに接続する

JDBC Driver for Snowflake に基づいてデータベースインスタンスを作成すると、Warehouse Catalog のデータに接続できます。

  1. プロジェクトを選択し、[Schema]->[Warehouse Catalog]をクリックします。 Creating the Warehouse Catalog
  2. [Read Settings for the Catalog]で[Settings]をクリックし、スキーマを取得するためのクエリを設定します。
    • テーブルのリストを取得するには、以下のクエリを使用します。 SELECT * FROM SYS_TABLES
    • 選択したテーブルの例のリストを取得するには、以下のクエリを使用します。 SELECT DISTINCT CatalogName NAME_SPACE, TableName TAB_NAME, ColumnName COL_NAME, DataTypeName DATA_TYPE, Length DATA_LEN, NumericPrecision DATA_PREC, NumericScale DATA_SCALE FROM SYS_TABLECOLUMNS WHERE TableName IN (#TABLE_LIST#) ORDER BY 1,2,3
    Custom metadata queries.
  3. プロジェクトで使用するテーブルを選択します。 Selecting tables to be used in the project.

MicroStrategy のCData JDBC Driver for Snowflake を使用すると、Snowflake で安定したビジュアライズとレポートを簡単に作成できます。詳細については、MictroStrategy でのSnowflake への接続MicroStrategy Desktop でのSnowflake への接続 に関するほかの記事をお読みください。


NoteJDBC Driver を使用して接続するには、3層から4層のアーキテクチャが必要です。

関連コンテンツ

トライアル・お問い合わせ

30日間無償トライアルで、CData のリアルタイムデータ連携をフルにお試しいただけます。記事や製品についてのご質問があればお気軽にお問い合わせください。