製品をチェック

Apache Kafka Driver の30日間無償トライアルをダウンロード

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

製品の詳細

Apache Kafka アイコン Apache Kafka JDBC Driver 相談したい

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

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

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

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

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

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

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

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

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

Notebook で Kafka データ データにアクセスする:Python

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

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

関連コンテンツ

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

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