初めまして。佐久間と申します。
今年3月の震災後、地震や放射性物質・電力消費量などの情報が以前よりも数多く、わかりやすく、また加工しやすくWeb上に広がるようになりました。
こういった情報を整理・加工して「こんな形にできたらもっといい情報提供になるのにな」とイメージは持っているけれど、どう作ったらいいのかわからない・・・
そんな方に向けてWeb上のデータを可視化する簡易地図レポートのざっくりとした作り方を紹介します。
[作成する簡易地図レポート]
1つはBing Mapsと連携してデータを表示するレポートで、もう1つはGISソフトでよく使われる図形と属性データを持ったシェープファイル(ShapeFile)を使用したレポートです。
[使用するデータ]
[使用する製品]
※一部を除けばExpress Editionでも可
使用する製品はSQL Server 2008 R2です。
HTMLからデータを抽出・変換する処理にはSQL Serverに付属のIntegration Services(以下SSIS)を使用します。
また、地図レポート部分には同じくSQL ServerについてくるReporting Servicesを使用します。
この連載ではSSISを使用するためにStandard以上のEditionを前提としていますが、SSISで行うデータ変換処理以外はすべて無償のExpress Editionでも実現できるので、データ変換処理をバッチでもPowerShellでもお好きな方法で置き換えていただければOS以外に特別なライセンスを購入することなくお試しいただけます。
[目次]
構成は下記の予定です。
自習書シリーズのようにきれいに詳しくとはいかないかもしれませんが、データを取得してから目で見る形に変換していく処理の全体像を掴むための手助けになったら嬉しいですね。
不定期更新になると思いますが、少しずつ更新していきます。
ではまた後日に。
レポートに表示するデータを格納するテーブルとデータ変換のために使用するワークテーブル、
都道府県等のマスタを作成します。
2. データを取得・変換する:Integration Services
2-1-1 HTMLからデータを抽出してTSVを作成する
2-1-2 ワークテーブルを空にする
2-1-3 TSVからSQL Serverへデータをインポートする
2-2. 変換(Transform)
2-2-1 都道府県IDを付与する
2-2-2 最大震度IDを付与する
2-2-3 座標データをGeography型に変換する
2-3. ロード(Load)
2-3-1 インデックスを無効化する
2-3-2 ワークテーブルのデータでレポート用テーブルのデータを洗い替える
2-3-3 インデックスを再構築する
HTMLから目的のデータを抽出し、型変換やIDの付与を行いレポートで使用するデータの形に
変換を行った上でレポート表示用のテーブルに流し込みます。
3. データを表示するレポートを作成する:Reporting Services
3-1-1. データソースの設定とチューニング
3-1-2. レポートの作成
3-2. シェープファイルへのマッピング
Bing Mapsとの連携とシェープファイルへのマッピングを行うことでデータの可視化を行います。
参考. Windows FormsやASP.Netから利用する
参考-2. ASP.Netから利用する
Windows FormsやASP.Netで作成した独自のアプリにReporting Servicesのレポートを取り込む方法を紹介します。