Tableau 2018.1 新機能紹介:SQL Serverの空間データに直接接続できるように #tableau
はじめに
ごきげんよう。大阪オフィス唯一のDI部メンバー、tamaです。
2018年4月24日より、Tabelau 2018.1が正式版としてリリースされています。
弊社ではベータ版の時点から新機能に関するエントリを投下しておりますが、正式版リリースということで、さらに新機能に関してご紹介していきます。
今回はTableau Desktopの新機能「SQL Serverの空間データに直接接続」をご紹介します。
SQL Server の空間データについて
そもそも空間データとは
空間データ(または地理情報とも)は、地上の地形や境界の、地理的位置を識別するデータです。空間データには、座標などの地図上にマッピング可能なデータが格納されています。
参考
SQL Serverにおける空間データ
いくつかのデータベースが、上記のような地理空間データに対応していますが、SQL Serverも例外ではありません(SQL Server 2008から対応)。SQL Serverは2つの空間データ型をサポートしています。
- geometry型
- ユークリッド座標系に基づいてデータを格納します。地球を平面空間に見立て、そこに線・点・およびポリゴンを表すX座標およびY座標を表現します。
- 建物などの3次元データを扱う場合はこの型が用いられることが多いです。
- geography型
- 球体地球座標系に基づいてデータを格納します。 線・点・およびポリゴンを表す緯度経度を表現します。
- 緯度経度なので、GPSデータを扱う場合はこの型が用いられることが多いです。
そして、今回Tableau Desktop 2018.1において、SQL Serverの空間データを直接接続してそのまま空間データとして扱えるようになったわけですが、Tabelauが対応しているSQLServerの空間データはgeography型のみなので、そこに注意しましょう。(下記参考リンクの一番下参照)
参考
- 空間データ (SQL Server) | Microsoft Docs
- 空間データ型の概要 | Microsoft Docs
- Connect to Spatial Data in Microsoft SQL Server
実際に試してみた
検証環境
下記の環境を準備しました。
SQL Serverまわり
- Amazon RDS for SQL Server
- db.t2.micro
- 汎用(SSD)
- 20GB
- SQL Server 2017 Express Edition
Tableau Desktop
- Tableau Desktop 2018.1.0
データ
- 国土数値情報 バスルート
- こちらのシェープファイルを使用(SQL Serverにアップロード)
- もちろん奈良県のデータを使用します。
全国のバス路線の経路(線)、名称、区分(民間路線バス、公営路線バス、コミュニティバス、デマンドバス)、事業者名、バス系統、運行頻度について整備したもの
検証手順
データのアップロード
上記サイトからバスルートのデータをダウンロードしたら、SQL Serverにテーブル作成&バスルートデータを追加します。(今回はAlteryx Designerを使用してアップロードしました。シェープファイルをAlteryxで加工したりDBに上げたりする方法については、別エントリを書いてご紹介したい…)
確認
DB接続クライアント(dbeaverを使用)でテーブルとカラムを確認します。ちゃんと空間データ(geometry型)として上がっていますね。これをTableauから直接空間データとして扱えればOKです。
Tableau Desktop 2018.1で読み込んで見る
直接SQL Serverに接続し、さきほど作成したテーブルを選択してみたところ、ちゃんと「spatial」として読み込めています!
ビジュアライゼーションしてみる
後は基本的に「SpatialObj」をダブルクリックすれば、空間データを地図上に描画してくれます。そこからは好きなようにビジュアライゼーションしましょう。上記画像は平日平均運行本数で色分けしてみたVizになります。
適当に運行本数の多い路線を見てみたところ、私が小学校〜大学生前半くらいまで常用していたバス路線でした。ここらへんの住宅街は駅が遠いのでバスを使うしかないんですよねえ…。
おわりに
今回はSQLServer内の空間データをそのままTabelauで扱える機能について見てきました。今までデータベースに空間データを貯めていても、Tabelauで分析する場合はいちいち別ファイルとして出力しないといけなかったので、データベースに多くの空間データが溜め込まれている環境では特に嬉しい機能ですね。TabelauからカスタムSQLで直接空間データ関連のクエリを発行することもできますので、ますます分析の幅が広がりそうです。