SlideShare a Scribd company logo
MySQLと空間データ(GIS)
~Software Design誌への
GIS連載と、公開されている地
理情報データをMySQLに取り
込むお話 とユーザ会からのお知らせ
2020/01/28
日本MySQLユーザ会
坂井 恵(@sakaik)
MySQL Casual Talks #13
自己紹介
• 坂井 恵(さかい けい)
• @sakaik
• 日本MySQLユーザ会 副代表
• Oracle Certified Professional, MySQL 5.7 Database Administrator
• 測量士補
• MySQLに対する接し方は「パフォーマンスより機能」派
ユーザ会からのお知らせ
日本MySQLユーザ会は 2020年に設立20周年を迎えます。
20年を記念して、20周年記念パー
ティを開催します!
日時: 2020年3月4日(水) 18:30~
会場: SCSK様(豊洲)
内容: 20年を記念してのセミナーと交流会
テーマ: 「MySQLとユーザ会の20年」
※開催3週間くらい前になったら参加受付を開始します(Connpassを予定)
カジュアルなみなさんにお願い
発表募集
• この20年(もっと短くてもいいです)で、MySQLが変わったなーと
いうのを感じられる発表
• ご自身がMySQLを触り始めた時と今との違い
• 今ならラクできているけど、当時はその機能がなくて苦労した話
発表してくださる方は、
twitter @sakaik まで連絡ください!
(10分程度)
LTも募集しています
• テーマ
「いまはむかしLT」
•昔になりきって発表してください
• 例:「バージョン4.1がでましたー! こんな新機能が便利です!」
• 昔の発表資料を引っ張り出してくるのもOK!
さて本題
ここまでのあらすじ
2018年4月。MySQL 8.0 が正式リリースされた。
そこに含まれていたのは、丸い地球。そう、地球上
のあらゆる地点の情報を、MySQLで扱えるように
なったのである。しかしそれは、大きな壁に向かう
挑戦の始まりでもあった。
INFORMATION_SCHEMA.ST_SPATIAL_REFERENCE_SYSTEMS に記された符
号の数々は、ここにたくさんの種類の地球があるこ
とを示していた。MySQL上の謎多き地球。
この謎に関心を持ち立ち向かった一人の男(文字数)
要約(ある男の話)
•位置の情報をデータとして持つ方法に興味を持ってしまった
•データの発生源や、値の意味・原理を知ることは大切
•世の中には「位置」を決めるための実在オブジェがたくさん
•そりゃ、見に行ってみたくなるでしょう
•色々なモノを見に行き、色々な事を知った。面白い!
•ふと気づくと「MySQLは、どこ行った!?」
•でも、手元に溜まった膨大な(当社比)知識と体験
膨大な体験(当社比)の
披露の場を得た!
連載内容
回 号 タイトル 行ったところ
1 2019/08月号 MySQL と空間情報 水準原点
2 2019/09月号 東経135度を求める旅 明石市(東経135度)
3 2019/10月号 位置情報の扱い方の基本 FOSS4G(北海道ほか)
4 2019/11月号 三角点を巡る旅① 日本の原点を訪ねて 日本経緯度原点
5 2019/12月号 三角点を巡る旅② 三角点探訪の実際 新潟の三角点
6 2020/01月号 三角点を巡る旅③ 長い距離を測る工夫~基
線測量
札幌基線、薫別基線(北海道)、三
方原基線(浜松)
7 2020/02月号 メートルで地球上の位置を表現?~平面直
角座標系
2系原点(阿蘇)、唐津城(佐賀)
8 2020/03月号 地図と測量の科学館へ行こう 科学館 、VLBI原点(つくば)
9 2020/04月号 日本の地図を作ってきた人々(予定) (2020年3月発売予定)
『MySQLの話をしない(こともある)MySQL連載!』
※連載に登場する ほぼ全ての写真は、筆者自身で撮影したもの!
連載の中で登場した場所
連載で伝えたかったこと
•位置情報は楽しい!
•位置情報は現実世界と密接に結びついている
(というか現実世界の、もっともわかりやすい投影)
「会社にこの本あったなぁ」
「家にあるわ!」
という方、ぜひMySQL GIS 連載をご覧ください!
補足
「空間情報」(Spatial Data)
簡易的に「位置情報」という言葉で語ったりしていますが、
ある「点」の情報だけだと思っていませんか?
・全国のコンビニのある場所とか
・ランチマップにおけるお店の場所を表す点とか
→線や面の情報も表すことができます(MySQLで扱えます)
線: (例)道路や川などの情報。ルート(経路)を表す情報
面: (例)都道府県や市区町村の形。建物の形。敷地の形。
→境界線を表すデータなので「境界データ」とも呼ばれる
空間情報のデータ
国土数値情報 ダウンロードサービス
http://nlftp.mlit.go.jp/ksj/index.html
e-Stat: 統計で見る日本/地図で見る統計
https://www.e-stat.go.jp/gis/
などをはじめとして、たくさんのデータが公開されている。
空間情報のデータ
データ公開フォーマット
• shapefile (シェープファイル)
• xml
• json
• csv
• excel / pdf
シェープファイルで公開されている空間情報データは非常に多い。
→シェープファイルをMySQLに取り込む方法を知っていると、
MySQL-GIS活用の幅が大きく広がる!
シェープファイルの取り込み方
を、
宮内はじめさんに、私の連載の中で書いてもらいました!
Software Design 2020年2月号
• GDALの ogr2ogr というツールを使います。
• いくつかの課題がありましたが、オラクル社MySQLチームの山﨑さんとと
もに、ノウハウを溜めて、安定して取り込みができるようになりました。
ogr2ogrより便利なもの
SD2月号より(宮内氏)
『シェープファイルをインポートするツール(shp2pgsql)が同梱されてい
るPostGISに比べて、MySQLに(略)ひと手間かかります』
解説
• ogr2ogrは、最初の環境をつくる所だけがちょっと面倒なんです
• PostGISには、shapefileを取り込むツールがついているんです
技術者魂に火が付いた!らしい
shp2pgsql (ライセンスはGPL)を改造して、shp2mysql を作っちゃった!
https://github.com/hajime-miyauchi/shp2mysql/
GitHubで公開されています
実は私も
• shapefileの仕様が公開されているので、これ、自力で読み取れるん
じゃないかと思っていた
• 年末年始に時間が取れるので、休みに入る前に電車の中で仕様書を読
んだりして把握
• とりあえず、特定の条件のファイルだけ読み取ってSQLを吐くものを
作成
• 見てもらいたくて、宮内さんと山﨑さんに連絡
→ 宮内「えっ、私も作ってて、ついさっき MacとLinuxでの確認完
了したところで・・・・」
12月29日のできごとでした。
MySQLへのシェープファイル取
り込みは多様化の時代へ!
宮内版 shp2mysql
• shp2pgsqlをベースに開発(C)
• Linux, Windows, MacOS版の実行ファイルが提供されている
• GPLなので勿論ソースコードも公開
坂井版 shp2sql (仮称)
• バイナリファイルを読んで解析するものをスクラッチで開発(Python)
• 本日時点では、まだ非公開
• 現在、Polygonデータの解析ができるようになったところ。順次Pointや
Linestring のデータを解析できるようにしていくフェーズ
• スクラッチで書いた理由は、ライセンス上の制約をなるべく受けないよう
にするため(あと、単純に技術的関心から)
ますます面白いことになりそうです。
まとめ
• Software Design 誌の連載、読んでね!
「なんで終わっちゃったんですか。もっと読みたい!」とお便りをしていた
だくと、続編か何かの連載枠をもらえるかもしれません(笑)
(でも正直なところ、お伝えしたかった大きなものはかなりカバーしたので、
枠をもらえるなら今度は、名所紹介ではなく、正面から技術と向かい合った
特集記事とか、書きたいですね)
• 公開されている shapefileデータをぜひ読み込んでみてね!
• より汎用的(というかツールとして歴史はある)にやるならまずは ogr2ogr
の使い方を学ぶのも良いと思います
• 手っ取り早く取り込んでみたいなら、宮内版 shp2mysql を!
• しばらくして坂井版ツールも公開されたらぜひ触ってみてください
あと、ユーザ会20周年イベントでお話してくださる方も募
集していますのでよろしくです。
ありがとうございました
私からの本日のおすすめツイート:
「宮内さんはすごい人! 」
Hmatsuさんの言う
「Poooooooo界隈の方」

More Related Content

PDF
MySQLとGISと私・この1年~MySQL Innovation Day LT
PDF
Code for Shiga / Biwako 2014年のハイライト
PDF
MySQL 8.0 にGIS機能がやってきた~ライトニングトーク~
PDF
周辺知識から理解するMySQL の GIS機能 ~ClubMySQL #4
PDF
MySQL 8.0で強化されたGIS機能のご紹介:「FOSS4G 2018 Hokkaido」での発表資料
PDF
MySQL 8.0で強化されたGIS機能のご紹介+α:「FOSS4G Tokai 2018 」での発表資料
PDF
MySQLに本格GIS機能がやってきた~MySQL8.0最新情報~@OSC2018北海道
PDF
MySQL 8.0で強化されたGIS機能のご紹介と周辺ツールとの連携について
MySQLとGISと私・この1年~MySQL Innovation Day LT
Code for Shiga / Biwako 2014年のハイライト
MySQL 8.0 にGIS機能がやってきた~ライトニングトーク~
周辺知識から理解するMySQL の GIS機能 ~ClubMySQL #4
MySQL 8.0で強化されたGIS機能のご紹介:「FOSS4G 2018 Hokkaido」での発表資料
MySQL 8.0で強化されたGIS機能のご紹介+α:「FOSS4G Tokai 2018 」での発表資料
MySQLに本格GIS機能がやってきた~MySQL8.0最新情報~@OSC2018北海道
MySQL 8.0で強化されたGIS機能のご紹介と周辺ツールとの連携について

Similar to MySQLと空間データ(GIS) (13)

PDF
20170714_MySQL 5.7 GIS(地理情報システム) by 日本オラクル株式会社 MySQL GBU 山﨑由章
PDF
札幌の人に知ってもらいたい三角点の話~FOSS4G2019 Hokkaido LT
PDF
MySQLのGIS機能とか超入門 ~MyNA会2018年7月
PDF
My sql casual9lt_pub
PDF
LOVE三角点~FOSS4G Niigata(2019) ライトニングトーク
PDF
令和元年のMySQL元年的話題~ニフクラミートアップ
PDF
MySQL8.0の「地理情報」を理解しよう入門~いまからはじめるGIS
PPTX
いまいまMySQL@OSC2016島根
PDF
QuantumGISを使ったPostgreSQL/PostGIS利用方法紹介
PDF
20200627_MySQL開発最新動向
PDF
MySQLコミュニティいろいろ
PDF
地理空間とOSGeoとPostGISとを簡単に紹介してみます
PDF
イベントドリブンMySQL~日本MySQLユーザ会の20年~
20170714_MySQL 5.7 GIS(地理情報システム) by 日本オラクル株式会社 MySQL GBU 山﨑由章
札幌の人に知ってもらいたい三角点の話~FOSS4G2019 Hokkaido LT
MySQLのGIS機能とか超入門 ~MyNA会2018年7月
My sql casual9lt_pub
LOVE三角点~FOSS4G Niigata(2019) ライトニングトーク
令和元年のMySQL元年的話題~ニフクラミートアップ
MySQL8.0の「地理情報」を理解しよう入門~いまからはじめるGIS
いまいまMySQL@OSC2016島根
QuantumGISを使ったPostgreSQL/PostGIS利用方法紹介
20200627_MySQL開発最新動向
MySQLコミュニティいろいろ
地理空間とOSGeoとPostGISとを簡単に紹介してみます
イベントドリブンMySQL~日本MySQLユーザ会の20年~
Ad

More from sakaik (19)

PDF
オンライン開催なので(略)福岡入門 @OSC2021Fukuoka
PDF
私とOSC~OSC2021秋・懇親会LT
PDF
MySQLマニュアルに関する思い出話と、最近差分を追っている話
PDF
伊勢IT交流会 2021.01_MySQLの空間情報と伊勢の人に知ってもらいたい地理情報関係の話
PDF
あなたもMySQLイベントで発表してみよう~登壇体験のスゝメ~
PDF
MySQL8.0.22リリースノートをみてわいわい言う勉強会
PDF
MySQL徹底入門第4版出版記念 全体説明と自分のパート
PDF
MySQL8.0.20リリースノートをみてわいわい言う勉強会
PDF
MySQLで扱う空間情報のきほん~MySQL Cafe #6
PDF
GTFS勉強会#1 DB屋が見たGTFS-JP ファースト・インプレッション
PDF
OSC2019-Hamanko LT 浜松の[三角点の]紹介
PDF
MySQL 8.0 で強化されたGIS機能のご紹介 @ FOSS4G Okayama
PDF
2018夏ClubDb2呑み会@ノムノ~ClubMySQLの紹介とか~
PDF
追加参考資料:MySQLにGIS機能がやってきた@OSC2018北海道
PPTX
OSC2017 Hokkaido. MySQL今こそインストールを極めよう~改めて考える環境構築~
PPTX
OSC2017 Nagoya これからデータベースmysqlを始める人のため
PPTX
いまいまMySQL@OSC2016福岡
PPTX
いまいまMySQL@OSC2016長岡
PPTX
AWSのRedHatにMySQL最速インストール
オンライン開催なので(略)福岡入門 @OSC2021Fukuoka
私とOSC~OSC2021秋・懇親会LT
MySQLマニュアルに関する思い出話と、最近差分を追っている話
伊勢IT交流会 2021.01_MySQLの空間情報と伊勢の人に知ってもらいたい地理情報関係の話
あなたもMySQLイベントで発表してみよう~登壇体験のスゝメ~
MySQL8.0.22リリースノートをみてわいわい言う勉強会
MySQL徹底入門第4版出版記念 全体説明と自分のパート
MySQL8.0.20リリースノートをみてわいわい言う勉強会
MySQLで扱う空間情報のきほん~MySQL Cafe #6
GTFS勉強会#1 DB屋が見たGTFS-JP ファースト・インプレッション
OSC2019-Hamanko LT 浜松の[三角点の]紹介
MySQL 8.0 で強化されたGIS機能のご紹介 @ FOSS4G Okayama
2018夏ClubDb2呑み会@ノムノ~ClubMySQLの紹介とか~
追加参考資料:MySQLにGIS機能がやってきた@OSC2018北海道
OSC2017 Hokkaido. MySQL今こそインストールを極めよう~改めて考える環境構築~
OSC2017 Nagoya これからデータベースmysqlを始める人のため
いまいまMySQL@OSC2016福岡
いまいまMySQL@OSC2016長岡
AWSのRedHatにMySQL最速インストール
Ad

MySQLと空間データ(GIS)