CData REST Drivers は、JSON/XML 形式のデータを標準SQL でリアルタイムに扱うことのできるドライバです。
今回お客様よりご要望があり、REST Drivers でJSON/XML 形式に加えて新たにCSV/TSV 形式がサポートされました。本記事で、REST Drivers でCSV 形式のファイルを扱う方法をご紹介します。
接続文字列に必要なプロパティ
REST Drivers でCSV 形式のファイルを扱う際に必要となる接続文字列の主なプロパティは以下のとおりです。
- URI: CSVファイルのURL
- Charset: CSVファイルのキャラクタセット(「UTF-8」など)
- Format: 「CSV」を指定
以下のドキュメントも参考にしてください。
CData JDBC Driver for REST - 接続文字列オプション
使用例
今回はDbVisualizer とCData REST JDBC Driver を使ってCSV ファイルを簡単にSQL でクエリする例をご紹介します。
REST JDBC Driver のダウンロード・インストール
以下のサイトの「ダウンロード」から30日間利用可能な試用版インストーラをダウンロード・インストールします。
REST JDBC Driver: JDBC Driver for REST - CData Software Japan
DbVisualizer のダウンロード・インストール
以下のサイトの「Recommended installer」でJRE 付きのDbVisualizer をダウンロード・インストールします。
Download the latest DbVisualizer version - For Windows, macOS, Linux
DbVisualizer でREST JDBC Driver をセットアップする方法は、以下の記事の「DbVisualizerによるJDBCのアクセス」のセクションを参照してください。
Device Web API ManagerとCData REST Driverでスマートフォンのデータをノーコードで取得する - CData Software Blog
クエリの実行
今回は厚生労働省「各都道府県の検査陽性者の状況」のCSV ファイルを読んでみます。接続文字列を以下のように設定します。
jdbc:rest:URI="https://www.stopcovid19.jp/data/covid19japan.csv";Charset=UTF-8;Format=CSV;
指定されたCSVファイルは「streamedtable」という名前のテーブルとして扱うことができます。データを閲覧してみます。
もちろん、SQLを使えますので、以下のように集計関数を使うこともできます。
SELECT
sum(npatients), sum(ncurrentpatients), sum(nexits), sum(ndeaths),
sum(nheavycurrentpatients), sum(nunknowns), sum(ninspections)
FROM streamedtable;
おわりに
本記事ではCData REST Drivers でCSV 形式を直接扱う方法をご紹介しました。
CData REST Drivers は30日間無料でお使いいただけます。REST API との連携をご検討の方はぜひお試しください。
関連コンテンツ