こんにちは!ドライバー周りのヘルプドキュメントを担当している古川です。
APOS Live Data Gateway(LDG)は、SAP Analytics Cloud をはじめとするSAP ソリューションのリアルタイムデータ接続やデータソースオプションの拡張を実現する、データ連携およびデータ変換ソリューションです。CData コネクタと組み合わせると、ユーザーはリアルタイムSpark のデータのセマンティックレイヤービューを構築し、リレーショナルデータベースを扱うのと同じようにSpark のリアルタイム分析を行うことができます。
最適化されたデータ処理が組み込まれたCData コネクタは、リアルタイムSpark のデータを扱う上で比類のないパフォーマンスを提供します。Spark に複雑なSQL クエリを発行すると、ドライバーはフィルタや集計などのサポートされているSQL 操作をSpark に直接プッシュし、サポートされていない操作(主にSQL 関数とJOIN 操作)は組み込みSQL エンジンを利用してクライアント側で処理します。
組み込みの動的メタデータクエリを使用すると、ネイティブデータ型を使ってSpark のデータを操作および分析できます。
コネクタファイルのダウンロードおよびインストール
APOS Live Data Gateway を経由してSpark のデータにアクセスするには、APOS からコネクタファイルをダウンロードしてLive Data Gateway をホストするマシンにインストールする必要があります。APOS の担当者から必要なファイルが届きます。
- CData DLL ファイル(System.Data.CData.SparkSQL.dll)をAPOS Live Data Gateway のインストールディレクトリ(デフォルトではC:\Program Files\Live Data Gateway\Admin\)にインストールします。
- CData JAR ファイル(cdata.jdbc.sparksql.jar)をインストールディレクトリ(デフォルトではC:\Program Files\Live Data Gateway\Admin\ConnectionTest_lib\)のConnectionTest_lib フォルダにインストールします。
- CData JAR ファイル(cdata.jdbc.sparksql.jar)をWeb UI インストールディレクトリ(例:C:\LDG_WebUI\lib\)のlib フォルダにインストールします。
Spark 接続文字列の設定
APOS Live Data Gateway からSpark への接続を確立する前に、Spark のJDBC 接続文字列を構築する必要があります。
組み込みの接続文字列デザイナー
JDBC 接続文字列作成の補助として、Spark JDBC Driver に組み込まれている接続文字列デザイナーが使用できます。JAR ファイルをダブルクリックするか、コマンドラインからjar ファイルを実行します。
java -jar cdata.jdbc.sparksql.jar
接続プロパティを入力し、接続文字列をクリップボードにコピーします。
SparkSQL への接続
SparkSQL への接続を確立するには以下を指定します。
- Server:SparkSQL をホストするサーバーのホスト名またはIP アドレスに設定。
- Port:SparkSQL インスタンスへの接続用のポートに設定。
- TransportMode:SparkSQL サーバーとの通信に使用するトランスポートモード。有効な入力値は、BINARY およびHTTP です。デフォルトではBINARY が選択されます。
- AuthScheme:使用される認証スキーム。有効な入力値はPLAIN、LDAP、NOSASL、およびKERBEROS です。デフォルトではPLAIN が選択されます。
Databricks への接続
Databricks クラスターに接続するには、以下の説明に従ってプロパティを設定します。Note:必要な値は、「クラスター」に移動して目的のクラスターを選択し、
「Advanced Options」の下にある「JDBC/ODBC」タブを選択することで、Databricks インスタンスで見つけることができます。
- Server:Databricks クラスターのサーバーのホスト名に設定。
- Port:443
- TransportMode:HTTP
- HTTPPath:Databricks クラスターのHTTP パスに設定。
- UseSSL:True
- AuthScheme:PLAIN
- User:'token' に設定。
- Password:パーソナルアクセストークンに設定(値は、Databricks インスタンスの「ユーザー設定」ページに移動して「アクセストークン」タブを選択することで取得できます)。
接続文字列は以下のようになります。
jdbc:SparkSQL:Server=127.0.0.1;
Spark への接続とセマンティックレイヤービューの作成
コネクタファイルのインストールと接続文字列の設定が完了したら、Live Data Gateway Admin ツールでSpark に接続し、Live Data Gateway Web UI でセマンティックレイヤービューを構築していきましょう。
Spark への接続を構成
- APOS Live Data Gateway Manager にログインします。
- まだAPOS LDG のライセンスファイルを更新していない場合は、更新してください。
- 「File」->「Configurations」をクリックします。
- License の「...」メニューをクリックします。
- APOS チームで CData Connector ライセンスを含むライセンスファイルを選択します。
- APOS Live Data Gateway Manager で、「Add」をクリックします。
- APOS Live Data Gateway のConnection タブで、接続を設定します。
- Data Source を「Database」に設定します。
- Database を「CData Drivers」に設定します。
- Database CData Drivers を「Spark」に設定します。
- Connection String を、以下の例のような先に構築した接続文字列に設定します。
jdbc:SparkSQL:Server=127.0.0.1;
- Driver Class を「cdata.jdbc.sparksql.SparkSQLDriver」(デフォルト設定)に設定します。
- 「Test Connection」をクリックします。
- 「Save」をクリックします。
- 接続に固有の接頭辞を付けます(例:"sparksql")。
- 新しく作成した接続をハイライトし、「File」->「Approve Users For Web UI」をクリックします。
- ビューを作成する適切なDB ユーザーを承認し、「Save」をクリックします。
これで、Live Data Gateway Web UI でセマンティックレイヤービューを構築する準備が整いました。
セマンティックレイヤービューを作成
- ブラウザで、APOS Live Data Gateway Portal に移動します。
- Connection(例:"sparksql")を選択します。
- Spark は認証にUser やPassword を必要としないため、User Name とPassword には任意の値を使用できます。
- 「Login」をクリックします。
- 接続後、「Semantic Layer」をクリックし、新しいセマンティックレイヤービューを作成します。
- 「New Semantic Layer View」をクリックします。
- Semantic Layer View Prefix およびSemantic Layer View Name を設定します。
- 「Step 2」をクリックします。
- ビューに追加したいテーブルとカラムを選択します。
- 「Step 3」をクリックします。
- 利用可能なテーブルのカラムでMeasure を選択します。
- 「Step 5」をクリックします(「Extra Dimensions」ステップはスキップします)。
- 任意のVariable Prompt を追加します。
- 「Step 6」をクリックします。
- 任意のTable Join を定義します。
- 「Review」をクリックします。
- セマンティックレイヤービューを確認し、「Save」をクリックします。
セマンティックレイヤービューを作成できたので、APOS Live Data Gateway を経由してSpark のデータにアクセスする準備が整い、SAP Analytics Cloud や他のSAP ソリューションからSpark のデータへのリアルタイムデータ接続が可能になりました。
詳細と無料トライアル
APOS Live Data Gateway でリアルタイムSpark のデータを扱うための詳細は、APOS Systems - APOS Solutions - Request Evaluation Software で評価用ソフトウェアをリクエストするか、[email protected] にメールでお問い合わせください。