製品をチェック

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

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

製品の詳細

SAP Business One アイコン SAP Business One JDBC Driver 相談したい

SAP Business One の簡単なデータ連携開発。SAP Business One Accounts、Activities、Orders、Customers などに連携するJava アプリケーションを超高速で構築。

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

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

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

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

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 Business One データを扱う方法を紹介します。

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

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

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

Notebook で SAP Business One データ データにアクセスする:Python

  • それでは Notebook を立ち上げて、SAP Business One データ データにアクセスしましょう。 今回は Python を使いますが、Scalaでも同様に実行可能です。
  • Databricks Notebook を立ち上げる
  • LangauageはPythonを選択し、先程JDBCをインストールしたクラスターを選択します。
  • Databricks
  • Notebook が立ち上がったら、以下のコードをそれぞれ実行していきます。
  • Databricks
  • 最初に接続情報を定義します。 URLはSAP Business One データ のログイン情報とセキュリティトークンを指定します。CData JDBC Driver用の特殊ライセンスをRTKとして指定します。RTK の入手方法については、CData サポートまでご連絡ください。
  • # Step 1: Connection Information driver = "cdata.jdbc.sapbusinessone.SAPBusinessOneDriver" url = "jdbc:sapbusinessone:Url=http://localhost:50000/b1s/v1;User=username;Password=password;CompanyDB=dbname;InitiateOAuth=GETANDREFRESH" table = "Orders"
  • 次に先程の接続情報をもとに、CData JDBC Driver経由でSAP Business One データ のデータをデータフレームとして読み込みます。
  • # Step 2: Reading the data remote_table = spark.read.format("jdbc")\ .option("driver", driver)\ .option("url", url)\ .option("dbtable", table)\ .load()
  • 読み込んだ結果は以下のコマンドで確認できます。これでDatabricks上でSAP Business One データ のデータを扱えるようになりました。
  • # 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 Business One データ データをノーコードで連携し、分析に使うことが可能です。

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

関連コンテンツ

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

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