SlideShare a Scribd company logo
1 of 14
Download to read offline
1
MySQLをd^H^Hでgisる
MySQL Casual Talks vol.9
LT
@meijik
免責事項
• 本プレゼンテーションにおいて示されている
見解は、私自身の見解であって、私の所属す
る会社・団体の見解を必ずしも反映したもの
ではありません。ご了承ください。
2
3
GIS
• GIS : Geographic Information System 地理情報
システム
• Opensource RDBMS御三家Firebird, MySQL,
PostgreSQLのうち
• MySQLのお話が今日のLT
– 本体のみで対応しています。
• PostgreSQLは拡張機能として実装していま
す(PostGIS)
• Firebirdは対応していませんし予定もないorz
4
FOSS DBマーケット
におけるGISのはじまり
• MySQL 4.1.0でGISのサポート追加
– 2003年4月にリリースされた
• R-tree インデックスサポートがMyISAMに追加
• 限定された空間拡張
• Spatial 拡張をもつ初めてのメジャーなFOSS DB
• PostGIS リリース1.0.0
– 2005年1月にリリースされた(2001年に最初の
バージョン0.1) ベースはPostgreSQL 8.0
• よりリッチな機能セット。MySQLが持っていたFOSS
GISマーケットシェアをすぐに引き取る
• その後約一年おきにリビジョンアップ
5
FOSS DBマーケット
におけるGISの続き
• PostGIS リリース 1.5.0 (2010年2月リリース)
– ジオグラフィ(Geography) サポート
– 多くの新機能および機能改善
• MySQL 5.6.2
– 2011年4月にリリースされた。(5.6のGAは2013
年2月。5.6.10GA)
– SQL/MM 標準空間関数
• 既存のMBR関数への追加
• 2012年 PostGISはバージョン2.0となり
FOSS GIS マーケットを席巻
6
MySQL 5.7 : 生まれ変わったGIS
• GIS チーム専任の専門家を雇用、古いアル
ゴリズムと関連するコードの多くを破棄
– FOSS Boost.Geometry library (1.58)で置換
• OGC 空間関数サポートを完了
– 標準化されたnamespace
• GEOMETRY型をInnoDBでネイティブサポート
– SPATIAL INDEX のサポートをInnoDB に追加
(R-treeを利用)
• Geohash と GeoJSON のサポートを追加
7
GeoHash
• 位置情報は通常、緯度経度で表します。
• たとえば本日の会場、東京ミッドタウンは
• 緯度(latitude) 35.665577, 経度(longitude)
139.730451
• http://www.geocoding.jp/?q=%E6%9D%B1%E4%
BA%AC%E3%83%9F%E3%83%83%E3%83%89
%E3%82%BF%E3%82%A6%E3%83%B3
• GeoHashは緯度経度の二つの座標を一つ
の文字列にまとめたもの。以下のクエリで。
– ST_GeoHash(longitude, latitude, max_length)
8
GeoHash(続き)
• 東京ミッドタウンを長さ20のGeoHashで表現
するとxn76gssx53rvvky38czd |
• GeoHashはグリッドになるので、緯度経度の
ようにポイントではありません。
– 文字列なのでB-treeインデックスがはれる
– 文字列の長さで精度が調整できる。
• たとえば六本木ヒルズを長さ20のGeoHashで表現す
るとxn76geg9r2r9st76ztz2
9
PostGISとMySQLのGIS機能
• PostGISがGIS機能については先行している
ので、それとの比較はよい指標。
• 詳しくは国府⽥ 諭さんがPostgreSQLカン
ファレンス2015で発表した「何が違うの
か?PostGISと最新版MySQLのGIS機能を
徹底比較」のプレゼン資料を参照のこと。
– 日ごろPostGISを利用している方なので、説明が
大変Good ! 以下のブログエントリからdownload
– http://kenpg.bitbucket.org/blog/201511/29.html
10
国府田さん曰く
• MySQL : ピンポイントで、重要な所に注⼒し
ている
– kNN 検索、GeoJSON 対応
– Workbench でのGISデータビュー(正直うらやま
しい)
• PostGIS:豊富な集約関数、グループ的な
データを作る/ばらす等、RDBMSならではの
メリットは圧倒的
• 「今後オープンソースのGIS-DBが発展する
ことを期待」とのことです 
11
MySQL Workbenchの
Spatial View
• MySQL 5.7のGISを便利に使ってみよう
• MySQLでGISる !
12
宣伝1:CROSS2016
• エンジニアサポートCROSS2016にて、パネ
ルディスカッションのセッションオーナーとして
参加します。
• 今こそRDBの時代だ!・・いや待て、その前
に~最近のRDB四方山話
– MySQLの漢をはじめ、豪華なスピーカー
• 2016年2月5日、横浜大さん橋ホール 11:20
• 事前登録無料なので(平日ですが)是非!
宣伝2: 書籍情報
• おうちで学べるデータベースのきほん
– DBの初心者はこちらをどうぞ。
– 増刷出来(パチパチ)
• 入手方法
– じゃんけんで勝つ。
– もしくは、Amazonでポチる w。
• 残念ながらGISはのってない。
13
14
THANK YOU
• ご清聴ありがとうございました。

More Related Content

More from Meiji Kimura

オープンソースRDBMS新機能ランダウンOSC2017TokyoSpring
オープンソースRDBMS新機能ランダウンOSC2017TokyoSpringオープンソースRDBMS新機能ランダウンOSC2017TokyoSpring
オープンソースRDBMS新機能ランダウンOSC2017TokyoSpringMeiji Kimura
 
MySQLの限界に挑戦する
MySQLの限界に挑戦するMySQLの限界に挑戦する
MySQLの限界に挑戦するMeiji Kimura
 
オープンソース・データベースの最新事情
オープンソース・データベースの最新事情オープンソース・データベースの最新事情
オープンソース・データベースの最新事情Meiji Kimura
 
NULLとの戦い RDBMS実装編
NULLとの戦い RDBMS実装編NULLとの戦い RDBMS実装編
NULLとの戦い RDBMS実装編Meiji Kimura
 
MySQLインストールのお作法
MySQLインストールのお作法MySQLインストールのお作法
MySQLインストールのお作法Meiji Kimura
 

More from Meiji Kimura (6)

My sql casual12lt
My sql casual12ltMy sql casual12lt
My sql casual12lt
 
オープンソースRDBMS新機能ランダウンOSC2017TokyoSpring
オープンソースRDBMS新機能ランダウンOSC2017TokyoSpringオープンソースRDBMS新機能ランダウンOSC2017TokyoSpring
オープンソースRDBMS新機能ランダウンOSC2017TokyoSpring
 
MySQLの限界に挑戦する
MySQLの限界に挑戦するMySQLの限界に挑戦する
MySQLの限界に挑戦する
 
オープンソース・データベースの最新事情
オープンソース・データベースの最新事情オープンソース・データベースの最新事情
オープンソース・データベースの最新事情
 
NULLとの戦い RDBMS実装編
NULLとの戦い RDBMS実装編NULLとの戦い RDBMS実装編
NULLとの戦い RDBMS実装編
 
MySQLインストールのお作法
MySQLインストールのお作法MySQLインストールのお作法
MySQLインストールのお作法
 

My sql casual9lt_pub