Apache Spark でSage Cloud Accounting Data をSQL で操作

CData JDBC ドライバーを使用して、Apache Spark でSage Cloud Accounting Data にデータ連携。

Apache Spark は大規模データ処理のための高速で一般的なエンジンです。CData JDBC Driver for Sage Cloud Accounting と組み合わせると、Spark はリアルタイムSage Cloud Accounting data にデータ連携して処理ができます。ここでは、Spark シェルに接続してSage Cloud Accounting data をクエリする方法について説明します。

CData JDBC Driver は、最適化されたデータ処理がドライバーに組み込まれているため、リアルタイムSage Cloud Accounting data と対話するための高いパフォーマンスを提供します。Sage Cloud Accounting に複雑なSQL クエリを発行すると、ドライバーはフィルタや集計など、サポートされているSQL操作を直接Sage Cloud Accounting にプッシュし、組込みSQL エンジンを使用してサポートされていない操作(SQL 関数やJOIN 操作)をクライアント側で処理します。組み込みの動的メタデータクエリを使用すると、ネイティブデータ型を使用してSage Cloud Accounting data を操作して分析できます。

CData JDBC Driver for Sage Cloud Accounting をインストール

CData JDBC Driver for Sage Cloud Accounting インストーラをダウンロードし、パッケージを解凍し、JAR ファイルを実行してドライバーをインストールします。

Spark Shell を起動してSage Cloud Accounting Data に接続

  1. Open a terminal and start the Spark shell with the CData JDBC Driver for Sage Cloud Accounting JAR file as the jars parameter: $ spark-shell --jars /CData/CData JDBC Driver for Sage Cloud Accounting/lib/cdata.jdbc.sagebcaccounting.jar
  2. With the shell running, you can connect to Sage Cloud Accounting with a JDBC URL and use the SQL Context load() function to read a table.

    You can connect to Sage Business Cloud Accounting using the embedded OAuth connectivity. When you connect, the OAuth endpoint opens in your browser. Log in and grant permissions to complete the OAuth process. See the OAuth section in the online Help documentation for more information on other OAuth authentication flows.


    For assistance in constructing the JDBC URL, use the connection string designer built into the Sage Cloud Accounting JDBC Driver.Either double-click the JAR file or execute the jar file from the command-line.

    java -jar cdata.jdbc.sagebcaccounting.jar

    Fill in the connection properties and copy the connection string to the clipboard.

    scala> val sagebcaccounting_df = spark.sqlContext.read.format("jdbc").option("url", "jdbc:sagebcaccounting:").option("dbtable","SalesInvoices").option("driver","cdata.jdbc.sagebcaccounting.SageBCAccountingDriver").load()
  3. Once you connect and the data is loaded you will see the table schema displayed.
  4. Register the Sage Cloud Accounting data as a temporary table:

    scala> sagebcaccounting_df.registerTable("salesinvoices")
  5. Perform custom SQL queries against the Data using commands like the one below:

    scala> sagebcaccounting_df.sqlContext.sql("SELECT contact_name, total_amount FROM SalesInvoices WHERE sent = TRUE").collect.foreach(println)

    You will see the results displayed in the console, similar to the following:

Using the CData JDBC Driver for Sage Cloud Accounting in Apache Spark, you are able to perform fast and complex analytics on Sage Cloud Accounting data, combining the power and utility of Spark with your data.Download a free, 30 day trial of any of the 170+ CData JDBC Drivers and get started today.