TOSを使ってMicrosoft Azure SQL Data Warehouseを操作する|Talend Open Studio によるビッグデータ分析(第10回)
- TAG : azure | ETLツール | Microsoft Azure SQL DW | talend | Tech & Science | クラウドサービス | データハンドリング
- POSTED : 2015.11.06 08:45
f t p h l
目次
JDBCドライバを直接指定することでAzure SQL Database/Azure SQL Data Warehouseに接続できる
前回までは、クラウド環境としてAWSを中心に説明してきました。AWSはクラウドシェアの1位ですが、Microsoft社のAzureクラウドも様々なサービスがリリースされています。今回は、AzureクラウドのDB操作として、Azure SQL Data Warehouse(以下、Azure SQL DW)に接続する方法をご説明したいと思います。
(参照:Azure SQL Data Warehouse関連記事)
TOSのSQL Server接続ではAzureデータベースには接続できない
過去にご紹介した方法を使って、メタデータから「DB接続の作成」画面を開いて、SQL ServerとしてAzure SQL DWに接続しようとすると、下記のようなダイヤログが表示され、DB接続されません。
大概のDB接続失敗の場合は、接続先情報やパスワードが間違っている事が多いですが、今回の場合は違います。上記の画面の「詳細」ボタンを押すと下記のような画面が表示されます。エラーメッセージを見ると「Client driver version is not supported」と見慣れないメッセージが出力されているのが分かります。どうやら、TOSからSQL Serverに接続するための「jTDS JDBC Driver」が、Azure SQL DWに対応していないようです。
JDBCドライバを直接指定してAzure SQL DWに接続する
SQL ServerのJDBCドライバを入手
JDBCドライバとは、TalendがDBに接続する時に中継するライブラリ(実行ファイルのようなもの)です。JDBCドライバは、DB種類ごとに異なるため、Azure SQL DWに対応した最新のSQL ServerのJDBCドライバを入手する必要があります。(SQL ServerのJDBCドライバは、SQL Server、Azure SQL DW、Azure SQL Databaseに対応しています)
SQL ServerのJDBCドライバは、Microsoft社のホームページから入手可能です。ダウンロードページの「ダウンロード」をクリックするとダウンロードリストが表示されますので、「sqljdbc_4.0.2206.100_jpn.exe」をダウンロードしてください。(他のJDBCドライバも対応しているかもしれませんが試していません)
ダウンロードが完了しましたら、ダウンロードファイル(自己解凍形式)を実行して、解凍後の「sqljdbc4.jar」をパソコン上の任意の場所に保存してください。
JDBCドライバの接続方法
過去にご紹介した方法を使って、メタデータから「DB接続の作成」画面を開いてください。この時、DB種類(DB Type)を「SQL Server」ではなく、「General JDBC」にするのがポイントです。その他の設定情報は下記のようになります。
- JDBC URL:jdbc:sqlserver://[接続先サーバー名]:1433;database=[DB名]
- ドライバJar:sqljdbc4.jar (「…」をクリックしてファイルを選択)
- クラス名:com.microsoft.sqlserver.jdbc.SQLServerDriver (「…」をクリックしてリスト表示)
- User name:DBのユーザー名
- パスワード:DBのパスワード
- Schema:dbo (接続チェックを行うと項目が表示される)
- マッピングファイル:id_MSSQL (「…」をクリックして選択)
General JDBC接続からでは基本的な機能しか使えない
作成したDB接続メタデータから過去にご紹介した方法を使って、自動的にテーブル情報から「スキーマ情報の取得」が行えるため非常に便利です。(日付型などは自動取得後に変更が必要) しかし、今回のGeneral JDBCを使ったDB接続メタデータからは、汎用的なDBコンポーネントしか使えないため、基本的なDB操作しかできません。そのため、DB固有の機能はコンポーネントで用意されていないため、データファイルのインポート命令などは、手作業で命令文を書く必要があります。
現在(2015.11.06)、Azure SQL DWは、プレビュー版(試用版)のため、利用者は多くありません。今後、正式リリースされ、多くの人が利用するようになった時には、有志によってAzure SQL DW専用のTalendコンポーネントが開発され、無料で配布されるかもしれません。
【連載、Talend Open Studio によるビッグデータ分析】
- ”Talend”と”RapidMiner Studio”、2つのETLツールを比較してみた
- Talendのインストールと初期設定(Windows 8.1編) ~Javaのバージョンに気を付けろ~
- Talendで簡単なジョブの作成
- フォルダ中のファイルを変換して1つにまとめる
- フィルタリングと文字列置換とプログラムによる変換方法
- DB間のデータコピーを2つのコンポーネントだけで行う
- Amazon Redshiftへのデータインポートを2つのコンポーネントだけで行う
- Talendがバッチ処理の開発方法を変える ~スマートな開発を行おう~
- Talendの無償版(TOS)と有償版(Enterprise)の違い
- TOSを使ってMicrosoft Azure SQL Data Warehouseを操作する (本稿)
- TOSでギガ単位の適切なテストデータを作成する
- Web API からの取得結果をデータベースに登録する処理をノンプログラミングで実現する
f t p h l