FineReport で Snowflake のデータ を利用する

Jerod Johnson
Jerod Johnson
Senior Technology Evangelist
FineReport で Snowflake のデータ をJDBC データソースとして設定する方法。

CData JDBC Driver for Snowflake は、JDBC 標準を完全に実装しており、さまざまなBI、レポート、ETL ツール、カスタムアプリケーションに Snowflake のデータ への接続を提供します。この記事では、FineReport で Snowflake のデータ をJDBC データソースとして設定し、レポートデザイナーで 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 のデータ のJDBC データソースをセットアップする

以下の手順に従って、FineReport のデータベース接続として Snowflake のデータ を設定します。

  1. CData JDBC Driver for Snowflake のインストールディレクトリにあるlib フォルダから、cdata.jdbc.snowflake.jar ファイルをFineReport のインストールディレクトリにあるlib フォルダにコピーします。cdata.jdbc.snowflake.lic ファイルも同様にコピーしてください。
  2. ServerタブからDefine Data Connectionを選択し、クリックして新しい接続を追加してJDBCをクリックします。

続いて、ウィンドウでデータ接続の定義を設定します。

  1. Database: Others
  2. JDBC Driver: cdata.jdbc.snowflake.SnowflakeDriver
  3. URL: セミコロン区切りの接続プロパティを使用した標準のJDBC 接続文字列を入力します。

    それでは、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(オプション):CData 製品によって公開されるテーブルとビューを、特定のSnowflake データベースのものに制限したい場合に設定します
    • Schema(オプション):CData 製品によって公開されるテーブルとビューを、特定のSnowflake データベーススキーマのものに制限したい場合に設定します

    Snowflakeへの認証

    CData 製品では、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 を設定する際に、Max Rows 接続プロパティも設定しておくことをお勧めします。これにより、返される行数が制限されるため、レポートやビジュアライゼーションを設計する際のパフォーマンス向上に役立ちます。

    JDBC URL の例を以下に示します。

        jdbc:snowflake:User=Admin;Password=test123;Server=localhost;Database=Northwind;Warehouse=TestWarehouse;Account=Tester1;
      
  4. Connection pool attributesをクリックし、Test before getting connectionsNoに設定します。

Test connectionをクリックして、接続が正しく設定されていることを確認します。これで、Snowflake への接続を設定し、FineReport のデータソースとして使用できるようになります。

レポートデザイナーで Snowflake のデータ を選択する

  1. クリックして新しいテンプレートデータセットを追加し、DB queryを選択してデータベースクエリウィンドウを開きます。
  2. ドロップダウンリストから、作成したJDBC 接続を選択します。
  3. 左ペインにSnowflake のエンティティがテーブルとして表示されます。
  4. ロードするSnowflake のデータ のテーブルとカラムに対してSELECT 文を記述します。
  5. プレビューをクリックすると、データがテーブルとして表示されます。

このように簡単な手順で、FineReport で Snowflake をJDBC データソースとして利用できるようになります。

はじめる準備はできましたか?

Snowflake Driver の無料トライアルをダウンロードしてお試しください:

 ダウンロード

詳細:

Snowflake Enterprise Data Warehouse Icon Snowflake JDBC Driver お問い合わせ

驚くほど簡単にJDBC でJava アプリケーションからSnowflake にデータ連携!