製品をチェック

Azure Data Lake Storage Driver の30日間無償トライアルをダウンロード

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

製品の詳細

Azure Data Lake Storage アイコン Azure Data Lake Storage JDBC Driver 相談したい

Azure Data Lake Storage データに連携するJava アプリケーションを素早く、簡単に開発できる便利なドライバー。

Azure Data Lake Storage データをDatabricks にロードして分析処理を行う方法:CData JDBC Driver

CData JDBC ドライバを使って、クラウドデータ処理基盤のDatabricks で Azure Data Lake Storage データ を分析処理。

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

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

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を利用してAzure Data Lake Storage データを扱う方法を紹介します。

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

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

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

Notebook で Azure Data Lake Storage データ データにアクセスする:Python

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

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

関連コンテンツ

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

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