MuleSoft でリアルタイムの Presto のデータを連携(CData Connect AI 経由)
MuleSoft Anypoint Platform は、API と統合の構築、デプロイ、管理を可能にし、アプリケーションとシステム間のシームレスな接続を実現します。CData Connect AI と組み合わせることで、Presto のデータ にアクセスしてビジュアライゼーション、ダッシュボードなどに活用できます。この記事では、CData Connect AI を使用して Presto へのリアルタイム接続を作成し、MuleSoft Anypoint Platform からリアルタイムのPresto のデータに接続してアクセスする方法を説明します。
前提条件
MuleSoft をCData Connect AI と一緒に設定して使用する前に、まずCData Connect AI アカウントにデータソースを接続する必要があります。詳細については、Connections セクションを参照してください。
また、Settings ページでPersonal Access Token(PAT)を生成する必要があります。認証時にパスワードとして使用するため、必ずコピーして保存してください。
Presto データ連携について
CData を使用すれば、Trino および Presto SQL エンジンのライブデータへのアクセスと統合がこれまでになく簡単になります。お客様は CData の接続機能を以下の目的で利用しています:
- Trino v345 以降(旧 PrestoSQL)および Presto v0.242 以降(旧 PrestoDB)のデータにアクセスできます。
- Trino または Presto インスタンスの基盤となるすべてのデータに対して読み取り・書き込みアクセスができます。
- 最大スループットのための最適化されたクエリ生成。
Presto と Trino により、ユーザーは単一のエンドポイントを通じてさまざまな基盤データソースにアクセスできます。CData の接続と組み合わせることで、ユーザーはインスタンスへの純粋な SQL-92 アクセスを取得し、ビジネスデータをデータウェアハウスに統合したり、Power BI や Tableau などのお気に入りのツールからライブデータに直接簡単にアクセスしたりできます。
多くの場合、CData のライブ接続は、ツールで利用可能なネイティブのインポート機能を上回ります。あるお客様は、レポートに必要なデータセットのサイズが大きいため、Power BI を効果的に使用できませんでした。同社が CData Power BI Connector for Presto を導入したところ、DirectQuery 接続モードを使用してリアルタイムでレポートを生成できるようになりました。
はじめに
MuleSoft 用に Presto への接続を設定
MuleSoft から Presto への接続は、CData Connect AI によって実現されます。MuleSoft からPresto のデータを操作するには、まず Presto 接続を作成し設定します。
- Connect AI にログインして「Sources」をクリックし、 Add Connection をクリックします
- Add Connection パネルから「Presto」を選択します
-
Presto への接続に必要な認証プロパティを入力します。
Presto への接続には、まずはServer およびPort を接続プロパティとして設定します。それ以外の追加項目は接続方式によって異なります。
TLS/SSL を有効化するには、UseSSL をTRUE に設定します。
LDAP で認証
LDAP で認証するには、次の接続プロパティを設定します:
- AuthScheme: LDAP に設定。
- User: LDAP で接続するユーザー名。
- Password: LDAP で接続するユーザーのパスワード。
Kerberos 認証
KERBEROS 認証を使う場合には、以下を設定します:
- AuthScheme: KERBEROS に設定。
- KerberosKDC: 接続するユーザーのKerberos Key Distribution Center (KDC) サービス。
- KerberosRealm: 接続するユーザーのKerberos Realm 。
- KerberosSPN: Kerberos Domain Controller のService Principal Name。
- KerberosKeytabFile: Kerberos principals とencrypted keys を含むKeytab file。
- User: Kerberos のユーザー。
- Password: Kerberos で認証するユーザーのパスワード。
- Save & Test をクリックします
-
Add Presto Connection ページの「Permissions」タブに移動し、ユーザーベースの権限を更新します。
Personal Access Token の追加
REST API、OData API、またはVirtual SQL Server 経由でConnect AI に接続する場合、Personal Access Token(PAT)を使用してConnect AI への接続を認証します。アクセス管理の粒度を維持するために、サービスごとに個別のPAT を作成することをお勧めします。
- Connect AI アプリの右上にある歯車アイコン()をクリックして設定ページを開きます。
- Settings ページで「Access Tokens」セクションに移動し、 Create PAT をクリックします。
-
PAT に名前を付けて「Create」をクリックします。
- Personal Access Token は作成時にのみ表示されるため、必ずコピーして安全な場所に保存してください。
接続の設定とPAT の生成が完了したら、Mulesoft からPresto のデータに接続する準備が整いました。
CData Connect AI への接続
JDBC ドライバーを使用してMulesoft からCData Connect AI への接続を確立するには、以下の手順に従います:
-
CData Connect AI JDBC ドライバーをダウンロードしてインストールします。
- CData Connect AI のIntegrations ページを開きます。
- JDBC を検索して選択します。
- セットアップファイルをダウンロードして実行します。
- インストールが完了すると、JAR ファイルはインストールディレクトリ(lib フォルダ内)にあります。
- Mulesoft Anypoint Studio にログインするか、デスクトップアプリケーションを起動します。
- 新しいMulesoft プロジェクトを作成します。
新しいプロジェクトがプロジェクトフォルダに表示されます。
- 右側のMule Palette で、HTTP Listener をMessage Flow エリアにドラッグします。
- HTTP Listener をクリックして設定します。
- Connector configuration の右側にある+ 記号をクリックします。HTTP Listener 設定ダイアログが表示されます。
- HTTP Listener を設定し、データをクエリするためのPort を指定してOK をクリックします。
- アクションを実行するためのpath を指定します。HTTP Listener の設定が完了しました。
- 右側のMule Palette で、検索バーにdatabase と入力します。
- 実行したいデータベース操作をMessage Flow エリアにドラッグします。この例ではSelect を選択します。
- Database Config ダイアログのConnection ドロップダウンからGeneric Connection を選択します。
- Configure ボタンをクリックしてJDBC ドライバーを設定します。ドロップダウンリストからUse local file を選択します。
- JDBC ドライバーのインストールからCData Connect AI JAR ファイルを探し、OK をクリックします。
- 以下の情報を入力します:
- URL: 接続用のURL。例:
jdbc:connect:Authscheme=Basic;user=username;password=PAT
注意:password には前提条件セクションで作成したPAT を指定します。 - Driver class name: ドライバークラス名として次を入力します:
cdata.jdbc.connect.ConnectDriver
- URL: 接続用のURL。例:
- Test Connection をクリックします。
- 接続が成功したら、エディターにSQL Query Text を入力します。右側のOutput タブでテーブルメタデータを確認できます。
- Mule Palette で、Transform Message をMessage Flow エリアにドラッグします。
- Transform Message をクリックして設定します。Output を次のように変更します:
- プロジェクトを保存して実行します。コンソールでMulesoft が依存関係の初期化を開始します。
- "Message source 'listener' on flow your_project_name successfully started" というメッセージが表示されたら、指定したエンドポイントでデータのクエリを開始できます。
- Postman アプリケーションを使用してクエリを実行し、データを確認します(以下に示すとおり)。
クラウドアプリケーションからの Presto のデータへのSQL アクセス
これで、MuleSoft Anypoint Platform からリアルタイムのPresto のデータへの直接接続が確立されました。Presto のデータ をレプリケートすることなく、シームレスなデータフロー、ビジネスプロセスの自動化、API の管理を実現するために、さらに多くの接続を作成できます。
クラウドアプリケーションから Presto(およびその他300以上のSaaS、Big Data、NoSQL ソース)へのリアルタイムデータアクセスを実現するには、CData Connect AI をご覧ください。