FileMaker Pro からAmazon Athena のデータへの双方向アクセス

Jerod Johnson
Jerod Johnson
Director, Technology Evangelism
JDBC ドライバーのMySQL リモート機能を使用して、Mac またはWindows 版FileMaker Pro にAmazon Athena のデータ を連携。

この記事では、CData JDBC Driver for Amazon Athena を使用して、FileMaker Pro のExternal SQL Sources(ESS)機能と連携する方法を説明します。ESS を利用すると、FileMaker Pro 内のレコードを他のデータストアの関連レコードとリンクできます。

MySQL リモート機能を使用して、Amazon Athena をリモートMySQL データベースとしてアクセスします。CData JDBC Driver for Amazon Athena は、JDBC とMySQL の両規格を実装しており、FileMaker Pro のように従来のMySQL データベースへの接続はサポートしていても、汎用のJDBC 接続をサポートしていないアプリケーションとの連携を実現します。

Amazon Athena データ連携について

CData は、Amazon Athena のライブデータにアクセスし、統合するための最も簡単な方法を提供します。お客様は CData の接続機能を以下の目的で使用しています:

  • IAM 認証情報、アクセスキー、インスタンスプロファイルなど、さまざまな方法で安全に認証できます。多様なセキュリティニーズに対応し、認証プロセスを簡素化します。
  • 詳細なエラーメッセージにより、セットアップを効率化し、問題を迅速に解決できます。
  • サーバーサイドでのクエリ実行により、パフォーマンスを向上させ、クライアントリソースへの負荷を最小限に抑えます。

ユーザーは、Tableau、Power BI、Excel などの分析ツールと Athena を統合し、お気に入りのツールから詳細な分析を行うことができます。

CData を使用した Amazon Athena のユニークなユースケースについては、ブログ記事をご覧ください:https://jp.cdata.com/blog/amazon-athena-use-cases


はじめに


FileMaker Pro 連携方式の選択

FileMaker Pro には2つのデータアクセス方式があります。

  • データインポート:Amazon Athena データをFileMaker Pro データベースにコピーし、必要に応じて更新できます。この方式を簡素化するには、CData ODBC ドライバーを使用します。FileMaker Pro はODBC をネイティブサポートしていますが、JDBC はサポートしていません。この方式については、FileMaker Pro でのODBC Amazon Athena 連携を参照してください。
  • ESS:データのローカルコピーを使用する代わりに、JDBC ドライバーを使用して外部SQL ソースを作成できます。リモートデータはFileMaker Pro で変更でき、テーブルは標準のFileMaker Pro テーブルと同様にリレーションシップグラフで使用できます。

ESS セットアップの概要

JDBC ドライバーはデータアクセスチェーンの一部です。ネイティブのODBC 連携と比較すると、MySQL リモートを使用するFileMaker Pro 連携には追加のコンポーネントがあります。この記事では、以下の各コンポーネントをFileMaker Pro とリンクする方法を説明します。

  1. CData JDBC ドライバー
  2. CData MySQL リモートデーモン(ドライバーに同梱)
  3. MySQL 用ODBC ドライバー

    Windows では、FileMaker Pro は公式のMySQL ドライバー、MySQL Connector\ODBC を必要とします(現時点でのベストオプションはConnector\ODBC 8.0.11 です)。

    macOS では、FileMaker Pro はActual Technologies Open Databases ODBC ドライバーを必要とします。

  4. ODBC ドライバーマネージャー

    Windows では、ドライバーマネージャーは組み込みです。macOS では、ODBC ドライバーをインストールする前にドライバーマネージャーをインストールする必要があります。iODBC ドライバーマネージャーをインストールしてください。

リモートデーモンの起動

以下の手順に従って、MySQL リモート機能を有効にします。

  1. ターミナルを開き、インストールフォルダのlib サブフォルダに移動します。

    $ cd "/Applications/CData/CData JDBC Driver for Amazon Athena/lib"
    
  2. 構成ファイル(デフォルトではcdata.jdbc.amazonathena.remoting.ini)を編集します。
    • [databases] セクションをAmazon Athena 用のJDBC 接続URL で更新します。
      	amazonathena = "AccessKey='a123';SecretKey='s123';Region='IRELAND';Database='sampledb';S3StagingDirectory='s3://bucket/staging/';"
      	

      Amazon Athena 接続プロパティの取得・設定方法

      それでは、早速Athena に接続していきましょう。

      データに接続するには、以下の接続パラメータを指定します。

      • DataSource:接続するAmazon Athena データソース。
      • Database:接続するAmazon Athena データベース。
      • AWSRegion:Amazon Athena データがホストされているリージョン。
      • S3StagingDirectory:クエリの結果を保存するS3 フォルダ。

      Database またはDataSource が設定されていない場合、CData 製品はAmazon Athena の利用可能なデータソースからすべてのデータベースのリスト化を試みます。そのため、両方のプロパティを設定することでCData 製品のパフォーマンスが向上します。

      Amazon Athena の認証設定

      CData 製品は幅広い認証オプションに対応しています。詳しくはヘルプドキュメントの「はじめに」を参照してみてください。

      AWS キーを取得

      IAM ユーザーの認証情報を取得するには、以下のステップお試しください。

      1. IAM コンソールにサインインします。
      2. ナビゲーションペインでユーザーを選択します。
      3. ユーザーのアクセスキーを作成または管理するには、ユーザーを選択してからセキュリティ認証情報タブに移動します。

      AWS ルートアカウントの資格情報を取得するには、以下のステップをお試しください。

      1. ルートアカウントの認証情報を使用してAWS 管理コンソールにサインインします。
      2. アカウント名または番号を選択します。
      3. 表示されたメニューでMy Security Credentials を選択します。
      4. ルートアカウントのアクセスキーを管理または作成するには、Continue to Security Credentials をクリックし、[Access Keys]セクションを展開します。

      その他の認証オプションについては、ヘルプドキュメントの「Amazon Athena への認証」を参照してください。

      利用可能な接続プロパティやその他のリモート設定オプションの詳細については、ヘルプドキュメントを参照してください。

  3. コマンドラインで構成ファイルまたは設定を指定して、MySQL デーモンを起動します。以下の例では、同梱のサンプル構成ファイルを使用しています。

    $ java -jar cdata.jdbc.amazonathena.jar -f "cdata.jdbc.amazonathena.remoting.ini"
    

DSN の作成

Amazon Athena への接続に成功しMySQL デーモンを起動したら、MySQL ODBC データソースを作成します。 ODBC データソースを使用する場合、DSN(データソース名)で接続プロパティを指定します。

ODBC ドライバーとドライバーマネージャーをまだ入手していない場合は、「ESS セットアップの概要」を参照して、お使いのプラットフォームでサポートされているコンポーネントを確認してください。

macOS

以下の手順に従って、iODBC グラフィカル管理ツールを使用します。

  1. Launchpad で検索してiODBC を開きます。
  2. システムDSN タブで、「追加」をクリックし、Actual Open Source Databases を選択します。
  3. 以下の情報を入力してウィザードを完了します。
    • 名前:DSN を入力します。
    • サーバー:127.0.0.1 またはMySQL デーモンが実行されているマシンのアドレスを入力します。
    • ポート:デーモンがリッスンしているポートを入力します。例:3306。
    • データベース:デーモンの構成ファイルで指定されたデータベース名を入力します。例:AmazonAthena。
    • 「メタデータ」タブで、以下のチェックボックスをオンにします。
      • 「Ignore schema in column specifications」
      • 「Don't use INFORMATION_SCHEMA for metadata」
  4. 「接続テスト」をクリックし、ダイアログで資格情報を入力します。

Windows

組み込みのMicrosoft ODBC データソースアドミニストレータを使用してODBC DSN を作成できます。

  1. コントロールパネルから「データソース(ODBC)のセットアップ」を選択します。ODBC データソースアドミニストレータが表示されます。
  2. システムDSN タブで、「追加」をクリックし、MySQL ODBC ドライバーを選択します。
  3. 以下の情報を入力してウィザードを完了します。
    • 名前:DSN を入力します。
    • サーバー:127.0.0.1 またはMySQL デーモンが実行されているマシンのアドレスを入力します。
    • ポート:デーモンがリッスンしているポートを入力します。例:3306。
    • データベース:デーモンの構成ファイルで指定されたデータベース名を入力します。例:AmazonAthena。
    • 「メタデータ」タブで、以下のチェックボックスをオンにします。
      • 「Ignore schema in column specifications」
      • 「Don't use INFORMATION_SCHEMA for metadata」
  4. 「接続テスト」をクリックし、ダイアログで資格情報を入力します。

Amazon Athena シャドウテーブルの作成

シャドウテーブルは外部SQL ソースに存在しますが、FileMaker データベースの他のテーブルとほぼ同様に使用できます。リレーションシップグラフに追加したり、データを参照したり、レイアウトを作成したりできます。

  1. 「ファイル」->「管理」->「データベース」をクリックします。
  2. 表示されるダイアログの「リレーションシップ」タブで、「テーブル/リレーションシップ」セクションの「テーブルを追加」ボタンをクリックします。
  3. 「データソース」メニューで、「ODBC データソースを追加」を選択し、前のセクションで作成したDSN を選択します。

DSN のユーザー名とパスワードを指定すると、Amazon Athena テーブルをリレーションシップグラフに追加できます。 「表示」->「ブラウズモード」をクリックすることで、リモートMySQL データベースと同様にAmazon Athena のデータ のスクロール、ソート、編集、集計が可能になります。

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

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

 ダウンロード

詳細:

Amazon Athena Icon Amazon Athena JDBC Driver お問い合わせ

Amazon Athena 連携のパワフルなJava アプリケーションを素早く作成して配布。