各製品の資料を入手。
詳細はこちら →MySQL Workbench からHDFS のデータをクエリする方法
MySQL Workbench からHDFS のリアルタイムデータにクエリを実行します。
最終更新日:2022-06-10
この記事で実現できるHDFS 連携のシナリオ
こんにちは!ドライバー周りのヘルプドキュメントを担当している古川です。
ODBC Driver for HDFS とSQL Gateway を使用することで、MySQL インターフェースを使ってHDFS にクエリを実行できます。この記事では、MySQL Workbench からHDFS のデータにSQL クエリを投げてデータを取得する方法をご紹介します。
CData ODBC ドライバとは?
CData ODBC ドライバは、以下のような特徴を持ったリアルタイムデータ連携ソリューションです。
- HDFS をはじめとする、CRM、MA、会計ツールなど多様なカテゴリの270種類以上のSaaS / オンプレミスデータソースに対応
- 多様なアプリケーション、ツールにHDFS のデータを連携
- ノーコードでの手軽な接続設定
- 標準 SQL での柔軟なデータ読み込み・書き込み
CData ODBC ドライバでは、1.データソースとしてHDFS の接続を設定、2.MySQL Workbench 側でODBC Driver との接続を設定、という2つのステップだけでデータソースに接続できます。以下に具体的な設定手順を説明します。
CData ODBC ドライバのインストールとHDFS への接続設定
まずは、本記事右側のサイドバーからHDFS ODBC Driver の無償トライアルをダウンロード・インストールしてください。30日間無償で、製品版の全機能が使用できます。
未指定の場合は、データソース名(DSN)で必要な接続プロパティの値を指定します。ドライバーのインストールの最後にODBC アドミニストレーターが開きます。Microsoft ODBC データソースアドミニストレーターでDSN を作成及び設定する方法については、ヘルプドキュメントの[はじめに]チャプターを参照してください。
HDFS 接続プロパティの取得・設定方法
HDFS への認証には、次の接続プロパティを設定します。
- Host:HDFS インスタンスのホストに設定してください。
- Port: HDFS インスタンスのポートに設定してください。デフォルトのポートは"50070" です。
SQL Gateway を構成する
HDFS への接続を仮想MySQL データベースとして設定する方法については、SQL Gateway の解説記事 を参照してください。クライアントからのMySQL リクエストを受けるMySQL リモートサービスを構築します。このサービスは、SQL Gateway のUI で構成できます。
MySQL Workbench からHDFS をクエリ
以下のステップでは、MySQL Workbench からSQL Gateway で作成された仮想HDFS のデータベースに接続し、HDFS のデータをリアルタイムで操作するための基本的なクエリを発行する方法を説明します。
SQL Gateway を介してHDFS に接続
- MySQL Workbench で、[add a new MySQL connection]をクリックします。
- 接続(CData SQL Gateway for HDFS)に名前を付けます。
- Hostname、Port、Username のパラメータを設定し、SQL Gateway に接続します。
- Store in Vault をクリックしてパスワードを設定し、保存します。
- Test Connection をクリックして接続が正しく構成されていることを確認し、OK をクリックします。

HDFS のデータをクエリしてみる
- 作成した接続(CData SQL Gateway for HDFS)を開きます。
- [File]->[New Query Tab]と進みます。
- SELECT * FROM `CData HDFS Sys`.Files; のようなHDFS のデータを取得するSQL を書いて、実行します。
- 無事、HDFS のデータが取得できました。

おわりに
MySQL Workbench からリアルタイムHDFS のデータにアクセスすることで、MySQL データベースと同じようにHDFS をクエリおよび更新できます。CData ODBC Driver for HDFS とCData SQL Gateway の30日の無償評価版はこちらです。
CData ODBC ドライバは日本のユーザー向けに、UI の日本語化、ドキュメントの日本語化、日本語でのテクニカルサポートを提供しています。