Tableau 2018.1 新機能紹介:SQL Serverの空間データに直接接続できるように #tableau

2018.05.01

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

はじめに

ごきげんよう。大阪オフィス唯一の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まわり

  • Amazon RDS for SQL Server
    • db.t2.micro
    • 汎用(SSD)
    • 20GB
  • SQL Server 2017 Express Edition

Tableau Desktop

  • Tableau Desktop 2018.1.0

データ

全国のバス路線の経路(線)、名称、区分(民間路線バス、公営路線バス、コミュニティバス、デマンドバス)、事業者名、バス系統、運行頻度について整備したもの

検証手順

データのアップロード

上記サイトからバスルートのデータをダウンロードしたら、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で直接空間データ関連のクエリを発行することもできますので、ますます分析の幅が広がりそうです。