- ODBC Drivers
- Java JDBC Drivers
- ADO.NET Providers
- SQL SSIS Components
- BizTalk Adapters
- Excel Add-Ins
- Power BI Connectors
- Tableau Connectors
- PowerShell Cmdlets
- Delphi & C++Builder
- Data Sync
- API Server
IBM Cloud Object Storage データをDatabricks にロードして分析処理を行う方法:CData JDBC Driver
CData JDBC Driver for IBM Cloud Object Storage を使って、クラウドデータ処理基盤のDatabricks で IBM Cloud Object Storage data を分析処理。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を利用してIBM Cloud Object Storage データを扱う方法を紹介します。

※製品について詳しい情報をご希望の方は以下からお進みください。
- IBM Cloud Object Storage にほかのBI、ETL、開発ツールから接続したい:IBM Cloud Object Storage データ連携ガイドおよびチュートリアルのリストへ
- IBM Cloud Object Storage Drivers について詳細を知りたい:ドライバー詳細情報ページへ
- ほかのデータソースに連携したい:CData Drivers 一覧へ
- ドライバーの30日の無償トライアル版を使いたい:トライアル版ダウンロードページへ
- 製品の利用やライセンスについて相談したい:sales@cdata.co.jp までメールにてご相談ください。
Databricks に JDBC Driver for IBM Cloud Object Storageをインストールする
- Databricks の管理画面に移動し、対象のクラスターを選択します。
- 「Libraries」タブから「Install New」をクリックします。ここから接続に必要なJDBC jarファイルをアップロードします。
- CData JDBC Driver のインストールディレクトリ(デフォルト:C:\Program Files\CData\CData JDBC Driver for IBMCloudObjectStorage 2019J\lib)に配置されている「cdata.jdbc.ibmcloudobjectstorage.jar」ファイルをドラッグ・アンド・ドロップして、対象のクラスターにインストールします。



これでドライバーの配置などの準備は完了です。
Notebook で IBM Cloud Object Storage data データにアクセスする:Python
- それでは Notebook を立ち上げて、IBM Cloud Object Storage data データにアクセスしましょう。 今回は Python を使いますが、Scalaでも同様に実行可能です。
- LangauageはPythonを選択し、先程JDBCをインストールしたクラスターを選択します。
- Notebook が立ち上がったら、以下のコードをそれぞれ実行していきます。
- 最初に接続情報を定義します。 URLはIBM Cloud Object Storage data のログイン情報とセキュリティトークンを指定します。CData JDBC Driver用の特殊ライセンスをRTKとして指定します。RTK の入手方法については、CData サポートまでご連絡ください。
- 次に先程の接続情報をもとに、CData JDBC Driver経由でIBM Cloud Object Storage data のデータをデータフレームとして読み込みます。
- 読み込んだ結果は以下のコマンドで確認できます。これでDatabricks上でIBM Cloud Object Storage data のデータを扱えるようになりました。
- Databricks の SparkSQLでデータを処理したい場合は、Temp Viewとして登録します。
- 以下のように SparkSQLでデータを取得し、分析することができます。



# Step 1: Connection Information
driver = "cdata.jdbc.ibmcloudobjectstorage.IBMCloudObjectStorageDriver"
url = "jdbc:ibmcloudobjectstorage:ApiKey=myApiKey;CloudObjectStorageCRN=MyInstanceCRN;Region=myRegion;OAuthClientId=MyOAuthClientId;OAuthClientSecret=myOAuthClientSecret;"
table = "account"
# Step 2: Reading the data
remote_table = spark.read.format("jdbc")\
.option("driver", driver)\
.option("url", url)\
.option("dbtable", table)\
.load()
# Step 3: Querying the data
display(remote_table.select("name"))

# Step 4: (Optional) Create a view or table
remote_table.createOrReplaceTempView("SAMPLE_VIEW")
%sql
SELECT Name,AnnualRevenue FROM SAMPLE_VIEW Order by AnnualRevenue desc limit 5

なお、データフレームは対象のNotebook内だけのデータなので、他のユーザーと一緒に利用する場合はテーブルとして保存しておきましょう。
remote_table.write.format("parquet").saveAsTable("SAMPLE_TABLE")
このようにCData JDBC Driver をアップロードすることで、簡単にDatabricks でIBM Cloud Object Storage data データをノーコードで連携し、分析に使うことが可能です。
是非、CData JDBC Driver for IBM Cloud Object Storage 30日の無償試用版 をダウンロードして、お試しください。