製品をチェック

SAP HANA XS Advanced Driver の30日間無償トライアルをダウンロード

 30日間の無償トライアルへ

製品の詳細

SAP HANA XS Advanced アイコン SAP HANA XS Advanced JDBC Driver 相談したい

SAP HANA XS Advanced データベースに連携するJava アプリケーションを素早く、簡単に開発できる便利なドライバー。

SAP HANA XS Advanced データをDatabricks にロードして分析処理を行う方法:CData JDBC Driver

CData JDBC ドライバを使って、クラウドデータ処理基盤のDatabricks で SAP HANA XS Advanced データ を分析処理。

杉本和也
リードエンジニア

最終更新日:2023-09-07
saphanaxsa ロゴ

CData

jdbc ロゴ画像
Databricks ロゴ

こんにちは!リードエンジニアの杉本です。

Databricks https://databricks.com/はオープンソースの ビッグデータ処理基盤である Apache Spark をクラウドベースで提供しているサービスです。

通常Databricks では、Azure Blob Storage や Data Lakeに存在しているCSV、JSON、Parquetなどのバイナリベースの構造データ、ないしSQL ServerやCosmos DBといったRDB・NoSQLサービスからデータを取り込んで、分析するというアプローチが多いかと思います。 しかしながら、今や分析対象となるデータソースはそういったバイナリデータやRDB・NoSQLのdataにとどまらず、SalesforceやDynamics 365といったクラウドサービス上にも数多く存在しています。そこで CData JDBC Driverを活用することにより、Databricks から シームレスにクラウドサービスのデータソースをロード、分析できるようになります。
この記事では、クラウドサービスのビッグデータ処理サービスである Databricks で CData JDBC Driverを利用してSAP HANA XS Advanced データを扱う方法を紹介します。

Databricks に JDBC Driver for SAPHanaXSAをインストールする

  • Databricks の管理画面に移動し、対象のクラスターを選択します。
  • Databricks のクラスターを選択
  • 「Libraries」タブから「Install New」をクリックします。ここから接続に必要なJDBC jarファイルをアップロードします。
  • Databricks
  • CData JDBC ドライバのインストールディレクトリ(デフォルト:C:\Program Files\CData\CData JDBC Driver for SAPHanaXSA 2019J\lib)に配置されている「cdata.jdbc.saphanaxsa.jar」ファイルをドラッグ・アンド・ドロップして、対象のクラスターにインストールします。
  • Databricks にJDBC Driver をアップロード

これでドライバーの配置などの準備は完了です。

Notebook で SAP HANA XS Advanced データ データにアクセスする:Python

  • それでは Notebook を立ち上げて、SAP HANA XS Advanced データ データにアクセスしましょう。 今回は Python を使いますが、Scalaでも同様に実行可能です。
  • Databricks Notebook を立ち上げる
  • LangauageはPythonを選択し、先程JDBCをインストールしたクラスターを選択します。
  • Databricks
  • Notebook が立ち上がったら、以下のコードをそれぞれ実行していきます。
  • Databricks
  • 最初に接続情報を定義します。 URLはSAP HANA XS Advanced データ のログイン情報とセキュリティトークンを指定します。CData JDBC Driver用の特殊ライセンスをRTKとして指定します。RTK の入手方法については、CData サポートまでご連絡ください。
  • # Step 1: Connection Information driver = "cdata.jdbc.saphanaxsa.SAPHanaXSADriver" url = "jdbc:saphanaxsa:OAuthClientID=my-ouath-client-id;OAuthClientSecret=my-oauth-client-secret;URL=https://hxehost:51027/euro.xsodata;CallbackURL=http://localhost:33333;InitiateOAuth=GETANDREFRESH" table = ""
  • 次に先程の接続情報をもとに、CData JDBC Driver経由でSAP HANA XS Advanced データ のデータをデータフレームとして読み込みます。
  • # Step 2: Reading the data remote_table = spark.read.format("jdbc")\ .option("driver", driver)\ .option("url", url)\ .option("dbtable", table)\ .load()
  • 読み込んだ結果は以下のコマンドで確認できます。これでDatabricks上でSAP HANA XS Advanced データ のデータを扱えるようになりました。
  • # Step 3: Querying the data display(remote_table.select("name")) Databricks
  • Databricks の SparkSQLでデータを処理したい場合は、Temp Viewとして登録します。
  • # Step 4: (Optional) Create a view or table remote_table.createOrReplaceTempView("SAMPLE_VIEW")
  • 以下のように SparkSQLでデータを取得し、分析することができます。
  • %sql SELECT Name,AnnualRevenue FROM SAMPLE_VIEW Order by AnnualRevenue desc limit 5 Databricks

なお、データフレームは対象のNotebook内だけのデータなので、他のユーザーと一緒に利用する場合はテーブルとして保存しておきましょう。

remote_table.write.format("parquet").saveAsTable("SAMPLE_TABLE")

このようにCData JDBC ドライバをアップロードすることで、簡単にDatabricks でSAP HANA XS Advanced データ データをノーコードで連携し、分析に使うことが可能です。

是非、CData JDBC Driver for SAPHanaXSA 30日の無償評価版 をダウンロードして、お試しください。

関連コンテンツ

トライアル・お問い合わせ

30日間無償トライアルで、CData のリアルタイムデータ連携をフルにお試しいただけます。記事や製品についてのご質問があればお気軽にお問い合わせください。