こんにちは!テクニカルディレクターの桑島です。
この記事では、Claris FileMaker の外部SQL データソース(ESS)機能とCData ODBC ドライバを利用して、Kafka データにシームレスに連携する方法を紹介します。
FileMaker とKafka のデータを連携する3つの方法
FileMaker からKafka と連携するには大きく3つの方法があります。本記事では③の方法を解説しますが、①や②の方法を解説する記事も用意していますので、必要に応じて参照してください。
- ODBC インポート機能を活用:ODBC プロトコルを活用してFileMaker にデータを取り込みます。最も簡単な方法ですが、データに変更があった場合に全件再取り込みが必要になります。定期的にデータを更新する場合には、②の方法がベターです。詳しくはこちらの記事をご確認ください。
- スクリプト機能を活用:FileMaker に搭載されているスクリプト機能を活用することで、初回だけ全件データを取り込み、その後は変更のあったデータだけを取り込む差分更新でデータを更新できます。詳しくはこちらの記事をご確認ください。
- ESS(External SQL Source)機能を活用:本記事で解説する方法です。ESS はFileMaker から外部データソースにリアルタイム接続できる機能です。接続設定は少し面倒ですが、ESS ではリアルタイム接続が可能なので、データ変更をすぐに反映したい、という場合にはベストな方法です。
FileMaker のESS 機能とは?
FileMaker のESS 機能は、FileMaker から外部データソースにリアルタイムで接続できる機能です。ただし、ネイティブで使用できるODBC Driver はFileMaker 側がサポートしているドライバーのみであり、CData ODBC ドライバのような任意のサードパーティドライバーを使用することができません。
SQL Gateway でESS のデータソースを拡充
そこで今回は、CData ODBC ドライバをMySQL に仮想化してアクセスできるようにするSQL Gateway という機能を活用します。この機能を使うことで、FileMaker のESS 側ではデフォルトのMySQL ODBC Driver を使いつつ、SQL Gateway 経由でKafka データに連携することが可能となります。
ちなみに、リアルタイム連携ではなくインポートだけの処理であれば、ESS やSQL Gateway を使わなくてもサードパーティODBC のデータをインポートすることが可能です。詳しくはODBC でKafka データをFilemaker にインポートの記事を参照してください。
CData ODBC ドライバとは?
CData ODBC ドライバは、以下のような特徴を持ったリアルタイムデータ連携ソリューションです。
- Kafka をはじめとする、CRM、MA、会計ツールなど多様なカテゴリの270種類以上のSaaS / オンプレミスデータソースに対応
- 多様なアプリケーション、ツールにKafka データを連携
- ノーコードでの手軽な接続設定
- 標準 SQL での柔軟なデータ読み込み・書き込み
CData ODBC ドライバでは、1.データソースとしてKafka の接続を設定、2.Claris FileMaker 側でODBC Driver との接続を設定、という2つのステップだけでデータソースに接続できます。以下に具体的な設定手順を説明します。
CData ODBC ドライバのインストールとKafka への接続設定
まずは、本記事右側のサイドバーからApacheKafka ODBC Driver の無償トライアルをダウンロード・インストールしてください。30日間無償で、製品版の全機能が使用できます。
インストールが完了したら、Kafka との接続設定を進めていきましょう。
インストール後自動的にKafka DSN の設定画面が表示されるので、必要な接続プロパティを取得・設定していきます。
BootstrapServers およびTopic プロパティを設定して、Apache Kafka サーバーのアドレスと、対話するトピックを指定します。
認可メカニズム
- SASL Plain:User およびPassword プロパティを指定する必要があります。AuthScheme は'Plain' に設定します。
- SASL SSL:User およびPassword プロパティを指定する必要があります。AuthScheme は'Scram'
に、UseSSL はtrue に設定します。
- SSL:SSLCert およびSSLCertPassword プロパティを指定する必要があります。UseSSL はtrue に設定します。
- Kerberos:User およびPassword プロパティを指定する必要があります。AuthScheme は'Kerberos' に設定します。
サーバー証明書を信頼する必要がある場合があります。そのような場合は、必要に応じてTrustStorePath およびTrustStorePassword を指定してください。
SQL Gateway でKafka ODBC のサービスを設定
次にSQL Gateway で上の手順で作成したKafka ODBC DSN をMySQL サービスとして公開します。
- CData ODBC ドライバをインストールしたWindows マシンのプログラムメニューから「CData SQL Gateway」を起動します。
- 起動するとCData SQL Gateway のコンソールが開きます。「サービス」タブを開き、「追加」ボタンをクリックします。「新規サービスの追加」ダイアログが表示されるので以下の項目をセットします。
- サービス名:任意(アルファベットでスペースなどの特殊文字系は含めないのが望ましい、本例では「CData」)
- 選択(TDS(SQLServer)、MySQL)ラジオボタン:「MySQL」を選択
- データソース :CData ODBC ドライバのシステムDSN 名を選択(本例では、CData Kafka Sys)
- ポート:同マシンにMySQL が既に起動している場合は、デフォルトの3306が既に利用されているので本例では「3307」を指定
- 「OK」ボタンをクリックして「新規サービスの追加」ダイアログを閉じ、上記で設定したサービスが追加されたのを確認します。
- 「ユーザー」タブを開き、「追加」ボタンをクリックします。「新規ユーザーの追加」ダイアログが表示されるので任意の名称で「ユーザー」および「パスワード」を設定します。本情報が、仮想MySQL へのログイン情報となりますので手元に控えておいてください。
- 「サービス」タブに移動して上段メニューの「変更を保存」、その後に「開始」ボタンをクリックします。仮想MySQL インスタンスが起動するとサービス名左横のランプが緑になります。
Claris Filemaker のESS からKafka に連携
それでは、ESS からKafka に連携していきましょう。MySQL Driver のインストールからはじめます。
MySQL ODBC Driver のインストールと設定
- MySQL ODBC 8.0 Unicode Driver の64bit Windows版をダウンロードしてインストールします。
- インストールが完了したら、Windows の検索から「odbc」と入力して「ODBCデータソース (64bit)」を起動します。
- 「システムDSN」タブを開き、「追加」ボタンから「データソース の新規作成」にて「MySQL ODBC 8.0 Unicode Driver」を選択して「完了」ボタンをクリックします。
-
「MySQL Connector/ODBC Data Source Configuration」が起動して以下の項目をセットします。
- Data Souce Name : 任意の名称(本例では、「CData」)
- TCP/IP Server : CData SQL Gateway の仮想MySQL が起動しているマシンのIP アドレス(同一マシンの場合は「localhost」)
- Port : SQL Gatewayで設定したポート(本手順では「3307」を使用)
- User : SQL Gatewayで設定したユーザー名
- >Password : SQL Gateway で設定したユーザーのパスワード
- Database : ドロップダウンリストからCData ODBC ドライバのDSN 名称「CData Kafka Sys」を選択
- 「Test」ボタンをクリックして「Connection Successful」ダイアログが表示されることを確認してダイアログ含め「OK」ボタンで保存して「ODBC データソース アドミニストレーター(64ビッド)」ウィンドウまで閉じてください。
FileMaker ESS 機能からKafka データに連携
- FileMaker のデータベースの管理にて、「リレーションシップ」タブから「テーブル」を追加します。データソース として「ODBC データソース の追加」を選びます。
- ODBC データソースを選択の画面で、MySQL ODBC Driver で設定したデータソース名(ドライバがMySQL ODBC 8.0 Unicode Driver のもの)を選択します。注意点としては、ここでCData ODBC ドライバのデータソース 名(CData Kafka Sys)を選択しないでください。
- 「データソース の編集」画面で以下の項目をセットして「OK」ボタンをクリックします。
- 名前:任意(本例では「CData」)
- 認証(ユーザ名とパスワードを指定) :SQL Gateway で設定した仮想MySQLへのログイン ユーザ名、および、パスワード
- カタログ名:CData ODBC ドライバのDSN 名(CData Kafka Sys)
- 「テーブルを指定」ダイアログにてFileMaker のレイアウトで利用したデータソース 内のテーブルを選択します。
- 「データベースの管理」に選択したテーブルが追加されたことを確認します。
- 指定したテーブルをレイアウトにセットします。データソース 内のデータが表示されれば成功です。
おわりに
このようにCData ODBC ドライバと併用することで、270を超えるSaaS、NoSQL データをコーディングなしで扱うことができます。30日の無償評価版が利用できますので、ぜひ自社で使っているクラウドサービスやNoSQL と合わせて活用してみてください。
CData ODBC ドライバは日本のユーザー向けに、UI の日本語化、ドキュメントの日本語化、日本語でのテクニカルサポートを提供しています。