SlideShare a Scribd company logo
1 of 50
PostGIS入門
- 空間情報データベースを作ってみよう -
FOSS4G 2014 Hokkaido
jp.foss4g.hokkaido@gmail.com
• 代表的な空間情報DBMSであるPostGISを使用して、構築と解析の初歩までを学びます。
• 本セッションはDBMS、GISについての基礎知識を必要とします。
(質問は随時どうぞ!)
• PDF資料からコードをコピー&ペーストすると正しく動作しないことがあります。適宜タイプしなおしてくだ
さい。
• PostgreSQLとPostGISは予めインストールしてください(別途資料を参照)。
• 本資料はクリエイティブ・コモンズ表示-継承3.0非移植ライセンスの下に提供されています。
商用利用、改変もOKですが、頒布するには原著作者クレジット(FOSS4G Hokkaido)を表示し、
本資料と同一の許諾条件としてください。
はじめに
FOSS4G 2014 Hokkaido PostGIS入門 2
本日の配布データは以下になります
• フォルダ:docs
• PostGIS入門.pdf (本文書)
• PostGIS 2.2.0devマニュアル日本語訳.pdf
• PostgreSQL&PostGISのインストール.pdf (事前準備マニュアル)
• QGIS2.2_Install.pdf (事前準備マニュアル)
• フォルダ:data
• N01-07L-01-01.0a_GML.zip、N03-130401_01_GML.zip、P02-
06_01_GML.zip(国土数値情報データ。次ページで説明)
• hinan_20140623.csv (室蘭市避難所一覧CSV。次ページで説明)
• muroran_hinan_csv.sql (避難所CSVのインポートSQL)
• フォルダ:shapefiles
• 前記zipを展開したデータ
• フォルダ:tools
• 使用しない予定ですが、インストール漏れなどの際にお使いください
配布データについて
FOSS4G 2014 Hokkaido PostGIS入門 3
本ハンズオンは事前に以下の準備を行ってください
• PostgreSQL & PostGISのインストール
• QGISのインストール
• 国土数値情報からShapefileを取得する(北海道地区)
• 行政区域(H25) N03-130401_01_GML.zip
• 公共施設(H18) P02-06_01_GML.zip
• 道路(統一フォーマット H7) N01-07L-01-01.0a_GML.zip
• むろらんオープンデータライブラリから次のデータを取得する
• 避難場所 CSV (hinan_20140623.csv)
← 講習ではSQLファイルで配布します
事前準備について
FOSS4G 2014 Hokkaido PostGIS入門 4
 PostGIS概説
・・・PostGISについての説明、導入するメリットなど
 PostGISの準備
・・・実際に使い始めるまでの説明
 テーブルと図形の作成
・・・基礎的なジオメトリ(図形)の作成と表示
 データのインポート/エクスポート
・・・CSV、Shapefileなどから大量にデータをインポート、DBから外部形式にエクスポート
 検索する
・・・条件指定(Where)の説明、空間インデックスの説明
 加工する
・・・図形の合成、切り出しをSQLで実行する
本セッションの内容
FOSS4G 2014 Hokkaido PostGIS入門 5
PostGIS概説
FOSS4G 2014 Hokkaido PostGIS入門 6
PostGISとは?
オープンソースのDBMSであるPostgreSQLで地理空間情報を扱うための拡張機能(PostgreSQL
Extension)。
Refractions Research社によりGPLライセンスでリリースされている。
地理空間情報の管理、編集、検索、演算をSQLで行うことができる。
PHP、Java、PythonなどDBへのインターフェイスを持つ言語からも特別な拡張無しに利用できる。
今ではMapServer、GeoServer、QGIS、GRASSなどのOSS GISツールの他、ArcGIS、SISな
どの商用GISのバックエンドとしても利用できる。
2012年の1.5から2.0へのバージョンアップでは、モジュールからエクステンションに変更(PostgreSQL
9.1以降が対応)、地理データ列の定義方法変更、非推奨関数の多数削除など大きな変更が加え
られた。
PostGISとは
FOSS4G 2014 Hokkaido PostGIS入門 7
PostGISについて学ぶにはここをチェック
• PostGISオフィシャルサイト(Refractions Research)
• http://www.refractions.net/products/postgis/
• PostGISマニュアル日本語訳(農研機構)
• http://www.finds.jp/docs/pgisman/
• PostgreSQLオフィシャルサイト
• http://www.postgresql.org/
• 日本PostgreSQLユーザ会
• https://www.postgresql.jp/
• Linuxのパッケージは http://postgis.net/install/ を参照
(標準パッケージは古いことが多々あるようです)
• WindowsはOSGeo4W(http://trac.osgeo.org/osgeo4w/)でGDAL/OGRも使えるように
すると便利
PostGISについて学ぶ
FOSS4G 2014 Hokkaido PostGIS入門 8
主なDBMSのGIS拡張
 PostGIS
 PostgreSQL標準の幾何データ対応
 SpatiaLite(スペイシャライト、ファイルDBであるSQLiteの拡張)
 MySQL(5.6) OpenGIS対応
 Oracle Spatial(スペイシャル)
 SQL Server Spatialサポート
 ArcGIS ジオデータベース
主なGISファイル形式
 ESRI Shapefile(デファクトスタンダード)
 MapInfo(TAB、MIF/MID)
 GeoJSON(JavaScriptのオブジェクト配列)
 GML、KML(XMLの拡張)
DBMSとGIS
FOSS4G 2014 Hokkaido PostGIS入門 9
PostGIS(PostgreSQL)のメリット
• オープンソース(GPL)
• 標準規格への対応(OpenGIS Consortium、標準SQL)
• マルチプラットフォーム
• ネットワーク共有が簡単便利(TCP/IP、トランザクショナル)
• 豊富な連携ソフトウェア(GDAL/OGRなど)
• 情報・知見が得やすい
• 拡張性、可用性、保守性に優れる
☆つまり使いやすい
PostGIS(PostgreSQL)のデメリット
• ファイルベースのデータは手軽(インストール、運用、データコピーetc)
• サーバに負荷がかかり易い
PostGIS(GIS DB)を使うべき理由
FOSS4G 2014 Hokkaido PostGIS入門 10
スタンダードフォーマットであるShapefileとの比較
Shapefileとの比較
FOSS4G 2014 Hokkaido PostGIS入門 11
PostGIS Shapefile
サイズ制限 十分に大きい .shp(形状)と.dbf(属性)は2GBまで
座標点数制限 十分に大きい 7,000万ポイントが目安(2GB)
フィールド名制限 63バイト 10バイト
フィールド数制限 十分に大きい 255
文字列属性 TEXT、VARCHAR2など 固定長のみ(無駄が多い)
文字コード(日本語) 内部はUTF-8、EUC_JP
Shift-JIS(cp932)はクライアントのみ
Shift-JISが推奨、UTF-8のサポートが拡
がるが...
※本来はANSI
空間インデックス サポート(汎用検索ツリー) サポート(性能は良くないとされる、アプ
リ毎に異なるファイル)
共有アクセス 同テーブルへの読み書き可能
トランザクション、ロックが可能
高度で安全な共有は期待出来ない
図形タイプ(ジオメトリタイプ)
 (シングル・シンプル)ポイント、ライン、ポリゴン
 マルチポイント、マルチライン、マルチポリゴン
 ジオメトリコレクション、TIN、多面体サーフェイス
空間参照系(SRID)
 座標系、測地系、投影法、ジオイドなどの定義
 SRIDはQGISなどと共通
 spatial_ref_sysテーブルに格納されている
WKT(Well-Known Text)形式
 ベクタ図形情報をテキスト形式で表現するフォーマット
 OpenGIS Consortium(OGC)による標準定義
 DB(ジオメトリ)にはバイナリ形式(WKB)で格納されている
PostGISで使われる用語
FOSS4G 2014 Hokkaido PostGIS入門 12
PostGISの準備
FOSS4G 2014 Hokkaido PostGIS入門 13
PostgreSQL/PostGISのインストール
 Windowsはハンズオンデイの案内ページを参照してください
https://sites.google.com/site/foss4ghokkaido/home/handson
- PostgreSQL&PostGISのインストール方法
 Linux(*NIX)はパッケージシステム使用を推奨します。
(GDAL,GEOSなどの依存関係解決のため)
PostgreSQL/PostGISのインストール
FOSS4G 2014 Hokkaido PostGIS入門 14
作業用ログインロール(ユーザ)を追加します
今回は説明の都合上、セキュリティ甘めの設定なことをご了承ください
1. pgAdminⅢを起動(インストール資料のp17を参照)
2. 「ログインロール」を右クリック、「新しいログインロール」を選択
3. 名前とパスワードを入力。今回はdemoを作成
(スーパーユーザー特権と、データベース作成特権を与える)
4. pgAdminⅢで「データベース」を右クリック、「新しいデータベース」を選択
5. 名前はhandson、オーナーはdemo、他はデフォルトのまま
注)運用では他の設定を変更しても構いません
6. pgAdminⅢの接続を切断し(Dissconnet server)、サーバ(localhost)を右クリックし、「プロパ
ティ」を選択
7. 「DBメンテナンス」をhandson、「ユーザ名」をdemoに変更
ログインロール(ユーザ)を追加
FOSS4G 2014 Hokkaido PostGIS入門 15
作業用ログインロール(ユーザ)の追加
ログインロール(ユーザ)を追加
FOSS4G 2014 Hokkaido PostGIS入門 16
ロール名:demo
・スーパーユーザ
・Can create database
(データベース作成権限)
データベースを作成(createdb)
データベース作成
FOSS4G 2014 Hokkaido PostGIS入門 17
demo CREATE DATABASE
WITH ENCODING=‘UTF8’
OWNER=demo
CONNECTION LIMIT=-1;
handson
接続するユーザとデータベースを変更
接続先の変更
FOSS4G 2014 Hokkaido PostGIS入門 18
DBメンテナンス:handson
ユーザ名:demo
作成したデータベースにPostGISエクステンションを追加します
1. 作成したデータベース(handson)の「Extensions」を右クリック、「New Extension」を選択
2. 「名前」からpostgisを選択(もし見つからなければPostGISを再インストール)
3. データベースの「スキーマ」- publicで関数、テーブル、トリガ、ビューが追加されていることを確認
4. spatial_ref_sysテーブルの内容を確認
 PostGISエクステンションはデータベース毎に追加します
PostGISエクステンションのインストール
FOSS4G 2014 Hokkaido PostGIS入門 19
PostGISエクステンションを追加(create extension)
PostGISエクステンションのインストール
FOSS4G 2014 Hokkaido PostGIS入門 20
postgis
CREATE EXTENSION
postgis
st_XXX 関数が大量にできる
spatial_ref_sysテーブル
をデータビューで確認
テーブルと図形の作成
FOSS4G 2014 Hokkaido PostGIS入門 21
ここからはSQL文をタイプ&実行して進めます
ツールバーの「任意のSQLクエリーを実行」をクリックします
SQLの入力
FOSS4G 2014 Hokkaido PostGIS入門 22
handsonのdemo@localhost:5432
主キー(serial)idを持つポイントのテーブルを作成します
 「ジオメトリ型」を使用し、図形タイプと空間参照系を指定する
 ラインは(MULTI)LINESTRING、ポリゴンは(MULTI)POLYGON
 このテーブルの空間参照系はJGD2000緯度経度(SRID:4612)
 ジオメトリ(座標)の列名はgeomにするのが一般的
テーブルの作成
FOSS4G 2014 Hokkaido PostGIS入門 23
CREATE TABLE sample_point (
id SERIAL PRIMARY KEY,
geom GEOMETRY (POINT, 4612)
);
ちなみにPostGIS 1.xでは...
 AddGeometryCoumn関数は後方互換のため残されている
 ツールによっては、まだこちらが使われている
 ツールが古いなどの理由で互換性が必要な場合、PostGISに同梱されているlegacy.sqlを実行
する。
テーブルの作成(PostGIS 1.x)
FOSS4G 2014 Hokkaido PostGIS入門 24
CREATE TABLE sample_point (
id SERIAL PRIMARY KEY
);
SELECT AddGeometryColumn ('sample_point', 'the_geom', 4612, 'POINT', 2);
よく使われる空間参照系のSRID一覧
よく使われるSRID一覧
FOSS4G 2014 Hokkaido PostGIS入門 25
測地系 座標系 SRID
日本測地系
緯度経度 4301
UTM座標系 51N - 55N 102151 - 102156
平面直角座標系 1 - 19系 30161 - 30179
世界測地系
JGD2000
緯度経度 4612
UTM座標系 51N - 55N 3097 - 3101
平面直角座標系 1 - 19系 2443 - 2461
WGS84 緯度経度 4326
Google 球体メルカトル(m) 900913
3857 (EPSG)
INSERT文で図形を作成してみます
• 文字列 'POINT(141.347 43.071)' がWKT
• 対になっているXとYはスペースで区切る
• [geom]の出力はバイナリ形式(普通の人には読めない)
• ST_asText関数により読みやすい形式にする
図形の作成
FOSS4G 2014 Hokkaido PostGIS入門 26
INSERT INTO sample_point (geom)
VALUES (
ST_GeomFromText('POINT(141.347 43.071)', 4612)
);
SELECT geom FROM sample_point;
SELECT ST_asText(geom) FROM sample_point;
空間参照系を指定するテキストをジオメトリ型に変換
ラインジオメトリを持つテーブルを作成します
図形の作成
FOSS4G 2014 Hokkaido PostGIS入門 27
CREATE TABLE sample_line (
id SERIAL PRIMARY KEY,
geom GEOMETRY (LINESTRING, 4612)
);
INSERT INTO sample_line (geom)
VALUES (
ST_GeomFromText('LINESTRING(
141.347 43.071,
141.349 43.075,
141.342 43.075,
141.345 43.071
)', 4612)
); 頂点の区切りはカンマ(,)
ポリゴンジオメトリを持つテーブルを作成、図形を作成します
図形の作成
FOSS4G 2014 Hokkaido PostGIS入門 28
INSERT INTO sample_polygon (geom)
VALUES (
ST_GeomFromText('POLYGON(
(
141.347 43.071, 141.349 43.075, 141.342 43.075, 141.345 43.071,
141.347 43.071
)
)', 4612)
);
始点終点は一致させる(閉じる)
CREATE TABLE sample_polygon (
id SERIAL PRIMARY KEY,
geom GEOMETRY (POLYGON, 4612)
);
INSERT INTO sample_polygon (geom)
VALUES (
ST_GeomFromText('POLYGON(
(141.353 43.072, 141.345 43.070, 141.351 43.076,
141.353 43.072),
(141.351 43.072, 141.351 43.073, 141.350 43.073, 141.351 43.072)
)', 4612)
);
穴あきポリゴン
ポリゴンは()が増える
右回り・左回りどちらでもよい
ジオメトリ出力関数で図形を確認してみます
図形を確認する(ジオメトリ出力)
FOSS4G 2014 Hokkaido PostGIS入門 29
SELECT id, ST_asText(geom) FROM sample_polygon;
→ 1, POLYGON((141.347 43.071,141.349 43.075, ...))
→ 2, POLYGON((141.347 43.071,...),(141.347 43.072,...))
SELECT ST_asKML(geom) FROM sample_line;
→ <LineString><coordinates>141.347,... </coordinates></LineString>
WKT表現(ポピュラー)
KML、GeoJSON表現(ジオアプリ向け)
SELECT ST_asGeoJSON(geom) FROM sample_line;
→"{"type":"LineString","coordinates":[141.347,43.071], ...[141.345,43.071]]}
KML、GeoJSONとも属性値は含められないのでogr2ogrや自作プログラムで対処する
ジオメトリアクセサ関数で図形の構成を確認します
図形を確認する(ジオメトリアクセサ)
FOSS4G 2014 Hokkaido PostGIS入門 30
SELECT ST_X(geom), ST_Y(geom), ST_SRID(geom) FROM sample_point;
→ 141.347, 43.071, 4612
座標を取り出す
SELECT ST_asText(ST_PointN(geom, 3)) FROM sample_line;
→ POINT(141.342 43.075)
N番目の図形を取り出す
SELECT ST_NRings(geom), ST_X(ST_StartPoint(ST_ExteriorRing (geom)))
FROM sample_polygon;
→1, 141.347
→2, 141.347
ポリゴンは少し複雑です
始点:1から始まる
外環(LINESTRING)始点(Start Point)
テキスト情報だけでは良く判らないので図化します
PostGISだけでは「絵」が作れないので他のソフトを使用します
今回はQGISを利用します
1. QGIS(Desktop)を起動する
2. 「レイヤ」-「PostGISレイヤの追加」を選択する
3. 新規の接続先を作成する
1. 名称:適当
2. ホスト:localhost
3. データベース:handson
4. ユーザ名:demo
5. 接続テストして成功ならOK
4. 戻って「接続」し、テーブルを選んで「追加」する
図化する(QGIS)
FOSS4G 2014 Hokkaido PostGIS入門 31
画面はQGIS 2.2です
QGISで接続、表示する
FOSS4G 2014 Hokkaido PostGIS入門 32
PostGISレイヤの追加
接続情報は
前ページを参照
接続テストしてみる
名前の一覧
接続→テーブル一覧表示→選択して追加
データのインポート/エクスポート
FOSS4G 2014 Hokkaido PostGIS入門 33
XYデータをインポート(変換)
• CSVなどをPostgreSQLにインポート(ex. COPYコマンド)してからジオメトリを作成してみます
• 今回は配布データの muroran_hinan_csv.sql(pg_dumpで生成)で通常テーブルを作成
クエリーツールのファイル - 開くからSQLを読みこんで実行
• むろらんオープンデータライブラリから災害時の避難場所(CSV)を
テーブル muroran_hinan_csv にインポート(一部加工済み)した結果
データをインポート
FOSS4G 2014 Hokkaido PostGIS入門 34
平面直角12系(JGD2000)
X:東西、Y:南北
XY列をポイントジオメトリに変換、更に緯度経度に変換します
1. 数値をポイントジオメトリに変換し、空間参照系を付与する
2. JGD2000緯度経度に投影変換する
3. 今のテーブルにジオメトリ追加する
4. ジオメトリ属性をアップデート
XYからジオメトリ(投影変換)
FOSS4G 2014 Hokkaido PostGIS入門 35
SELECT ST_setSRID(ST_MakePoint(x, y), 2454) FROM muroran_hinan_csv;
平面直角(12)空間参照系の付与
SELECT ST_Transform(ST_setSRID(ST_MakePoint(x, y), 2454), 4612)
FROM muroran_hinan_csv;
緯度経度座標変換(投影変換)
ALTER TABLE muroran_hinan_csv ADD geom GEOMETRY(POINT, 4612);
UPDATE muroran_hinan_csv
SET geom = ST_Transform(ST_setSRID(ST_MakePoint(x, y), 2454), 4612);
• ST_setSRID()は空間参照系のメタ情報を付与するだけ。投影変換(座標変換)はされません
• ジオメトリ型にINSERT/UPDATEするときは自動的に投影変換されない
• 別の空間参照系に変換するにはST_Transform()を使う
• 平面直角座標系もPostGISではPOINT(東西(X) 南北(Y))。
生データを扱うときは気をつけましょう
• GPSログをラインにしたいときは・・・
変換のポイント
FOSS4G 2014 Hokkaido PostGIS入門 36
SELECT
gps_track,
ST_MakeLine(gps.geom ORDER BY gps_time) geom
FROM gps_points
GROUP BY gps_track;
• デファクトスタンダードであるShapefileをインポート&エクスポートします
• 今回はPostGIS付属のshp2pgsql/pgsql2shpを使用します
• WindowsではスタートメニューのPostGIS - PostGIS 2.0 Shapefile and DBF Loader
ExporterでGUIが起動できます
• CUIで使いたいときはインストールフォルダのbinにあるshp2pgsql.exe、pgsql2shp.exeを使用し
ます
• GUIはちょっと使いにくいかも(^_^;
• ↑GUIがかなり使いにくくなってるのでCUI(コマンドプロンプト)で作業します・・・
データをインポート・エクスポート(Shapefile)
FOSS4G 2014 Hokkaido PostGIS入門 37
1. コマンドプロンプトを起動し、PostgreSQLのインストールフォルダ(C:Program
FilesPostgreSQL9.3)にあるpg_env.batを実行
(binフォルダのプログラムが実行出来るようになる)
2. shp2pgsql とタイプして実行出来ることを確認
3. Shapefileのあるフォルダに移動(cd)
4. Prepareモードで実行してテーブル定義作成確認
5. Createモード(デフォルト)で実行してSQLを作成
shp2pgsqlはDBにアクセスしない
6. SQLを実行してDBにデータを投入
shp2pgsqlの使い方(コマンドプロンプト)
FOSS4G 2014 Hokkaido PostGIS入門 38
ファイル・フォルダの指定は
エクスプローラからコマンドプロンプトに
ドラッグドロップすると便利です
内容 Shapefile名 テーブル名
行政区域(Polygon) N03-13_01_130401 polygon_adm
公共施設(Point) P02-06_01-g_PublicFacility point_public
道路(Line) N01-07L-2K-01_Road line_road
1. "C:Program FilesPostgreSQL9.3pg_env.bat" (を実行)
2. shp2pgsql
3. cd <配布のShapefilesフォルダ>
4. shp2pgsql -p -I -S -s 4612 -W cp932 N03-13_01_130401 polygon_adm
-p Prepareモード
-I 空間インデックス作成
-S シンプルジオメトリで定義(デフォルトはマルチジオメトリ)
-s SRID ShapefileのSRID指定
-W encoding Shapefileの文字コード(通常のShapefileはcp932 or UTF-8)
5.shp2pgsql -c -D -I -S -s 4612 -W cp932 N03-13_01_130401 polygon_adm > polygon_adm.sql
-c Createモード(デフォルト)
-D データはダンプ形式(指定しないとINSERT文になるので遅い)
6. psql -U demo -d handson -f polygon_adm.sql
施設と道路データもインポートする
7. shp2pgsql -c -D -I -S -s 4612 -W cp932 P02-06_01-g_PublicFacility point_public | psql -U
demo -d handson
8. shp2pgsql -c -D -I -S -s 4612 -W cp932 N01-07L-2K-01_Road line_road | psql -U demo -d
handson
•-p,-cの代わりに-aで追記モードになります。
同じテーブルに異なるファイルの内容を次々に入力したい場合に便利です。
•Linux(OSGeo4W)も全く同じ使用方法です
shp2pgsqlの使い方(コマンドプロンプト)
FOSS4G 2014 Hokkaido PostGIS入門 39
ファイル名を指定
.shpは省略しても良い
テーブル名
インデックスについては後ほど
文字コード変換(SJIS→UTF8)
パイプラインで
渡しても良い
shp2pgsqlの使い方(コマンドプロンプト)
FOSS4G 2014 Hokkaido PostGIS入門 40
D&D
shp2pgsql -c ...
ファイルにリダイレクト
(パイプでもOK)
shp2pgsql
shp2pgsql -p ...
テーブル名にハイフンは
避けたい
• PostGISからShapefileをエクスポートするには pgsql2shp が良く使われます
• テーブルまたはビューを指定、あるいはSQLクエリ()が利用できます
• 文字コードはクライアントのエンコーディングに依存します(注意が必要)
• テーブル/ビューをエクスポート
1. SET PGCLIENTENCODING=SJIS
2. pgsql2shp -u demo handson point_public
• SQLクエリを利用
• pgsql2shp -u demo -f asahikawa handson "select * from polygon_adm where
n03_007 = '01204'"
pgsql2shpの使い方(エクスポート)
FOSS4G 2014 Hokkaido PostGIS入門 41
SETしないエクスポートも
試してみましょう
データベースとテーブル名を指定
ファイル名を指定
データベースとSQLクエリを指定旭川市の行政コード
検索する
FOSS4G 2014 Hokkaido PostGIS入門 42
前セクションでインポートした国土数値情報の簡単な説明
テーブル定義
FOSS4G 2014 Hokkaido PostGIS入門 43
行政区域
n03_001 都道府県名
n03_002 支庁名(市はNULL)
n03_003 郡・政令市名
n03_004 市区町村名
n03_007 行政区域コード(5桁)
公共施設
p02_001 行政区域コード
p02_002 公共施設大分類
p02_003 公共施設小分類
p02_004 名称
p02_005 所在地
P02_006 管理者コード
p02_007 原典資料名
道路
n01_001 道路種別コード
n01_002 路線名
n01_003 線名
n01_004 通称
PostGISを利用することにより、データベースで行える通常の属性検索に加えて、豊富な空間検索が利
用できます。
• 属性により札幌市の各区を検索し、面積を計算する
• 札幌市内の郵便局を区毎に数える(図形的に)
PostGISの検索機能
FOSS4G 2014 Hokkaido PostGIS入門 44
SELECT n03_003, n03_004, n03_007,
ST_Area(ST_Transform(geom, 2454)),
ST_Area(ST_Transform(geom, 32654))
FROM polygon_adm
WHERE n03_003 = '札幌市';
2454:平面直角(12)
32654:UTM54
SELECT
n03_004,
count(*)
FROM polygon_adm a, point_public p
WHERE n03_003 = '札幌市'
AND st_contains(a.geom, p.geom)
AND p.p02_002 = '18'
GROUP BY n03_004
郵便局:p02_002 = '18'
st_contains(a, b)
aがbを完全に含むならTRUE
空間インデックスの有無による検索速度を体験してみます
1. ○○町にある郵便局をカウント
2. 空間インデックスを削除
3. ふたたび1.で検索すると遅くなっているはず
4. 空間インデックスを再作成
5. ふたたび1.で検索する
6. 1.のSELECTの前にEXPLAIN句をつけて、2.~5.を実行してみる
空間インデックスの効果を体験する
FOSS4G 2014 Hokkaido PostGIS入門 45
SELECT count(*)
FROM polygon_adm a, point_public p
WHERE n03_004 like '%町' AND st_contains(a.geom, p.geom) AND p.p02_002 = '18'
DROP INDEX point_public_geom_gist;
DROP INDEX polygon_adm_geom_gist;
CREATE INDEX point_public_geom_gist ON point_public USING GiST (geom);
CREATE INDEX polygon_adm_geom_gist ON polygon_adm USING GiST (geom);
EXPLAIN SELECT count(*)
FROM polygon_adm a, point_public p
WHERE n03_004 like '%町' AND st_contains(a.geom, p.geom) AND p.p02_002 = '18'
加工する
FOSS4G 2014 Hokkaido PostGIS入門 46
• 図形を合成してみます。このSQLそれぞれ結果が1件のみになります(合成の結果)
• ST_Collect()とST_Union()の違い
図形の集合
FOSS4G 2014 Hokkaido PostGIS入門 47
SELECT n03_003, ST_Collect(geom)
FROM polygon_adm
WHERE n03_003 = '札幌市'
GROUP BY n03_003;
集合条件の指定
SELECT n03_003, ST_Union(geom)
FROM polygon_adm
WHERE n03_003 = '札幌市'
GROUP BY n03_003;
CREATE VIEW collect_polygon as
SELECT max(id) id, ST_Collect(geom)
FROM sample_polygon;
CREATE VIEW union_polygon as
SELECT max(id) id, ST_Union(geom)
FROM sample_polygon;
重複部の座標はそのまま 重複部の座標は無くなる
ある領域に含まれる部分だけを切り出してみます
• 札幌市の行政界線で道路を切り出します
1. line_roadテーブルは行政界で分割されているので、路線毎にマージされた作業用テーブルを作成
します。
2. ジオメトリ間の共有部分を求めるビュー(テーブル)を作成し、Shapefileにエクスポートします。
図形の切り出し
FOSS4G 2014 Hokkaido PostGIS入門 48
CREATE TABLE union_road AS
SELECT n01_002 roadname,
(ST_Dump(ST_LineMerge(ST_Union(geom)))).Geom geom
FROM line_road
GROUP BY n01_002;
定型文として覚えておくと便利
ジオメトリが、シンプル→マルチ→マルチ→シンプルと変換される
CREATE INDEX union_line_geom_gist ON union_road USING GiST (geom);
空間インデックスも忘れずに
CREATE VIEW sapporo_road AS
SELECT l.roadname, p.n03_004,
ST_Intersection(p.geom, l.geom) geom
FROM polygon_adm p, union_road l
WHERE p.geom && l.geom
AND St_Intersects(p.geom, l.geom)
AND n03_003 = '札幌市';
QGISはなぜか
エラーになってしまうので・・・
&&をつけると(少し!?)速くなる
QGISで表示して確認
図形の切り出し
FOSS4G 2014 Hokkaido PostGIS入門 49
• 外部データのインポート/エクスポートを頻繁に行うならLinuxがお勧めです
(Windows + GUIでやってみたら結構大変でした・・・)
• OSGeo4Wというパッケージを使うとWindowsでもFOSS4GツールがCUIで利用出来ます
• PostGISマニュアル日本語訳は日本特有の問題点、Tipsについても追記されているので
教科書として最適です(農研機構様に感謝)
ハンズオンは以上です
お疲れ様でした!
終わりに
FOSS4G 2014 Hokkaido PostGIS入門 50

More Related Content

What's hot

第22回オープンデータトーク 地理データ形式のこれから
第22回オープンデータトーク 地理データ形式のこれから第22回オープンデータトーク 地理データ形式のこれから
第22回オープンデータトーク 地理データ形式のこれからIWASAKI NOBUSUKE
 
SolrとElasticsearchを比べてみよう
SolrとElasticsearchを比べてみようSolrとElasticsearchを比べてみよう
SolrとElasticsearchを比べてみようShinsuke Sugaya
 
オープンデータとオープンソースGisを用いたweb上でのインタラクティブ可視化手法について
オープンデータとオープンソースGisを用いたweb上でのインタラクティブ可視化手法についてオープンデータとオープンソースGisを用いたweb上でのインタラクティブ可視化手法について
オープンデータとオープンソースGisを用いたweb上でのインタラクティブ可視化手法についてRyousuke Wayama
 
5社のGTFSをマージして、PostgreSQLにインポートしてみた
5社のGTFSをマージして、PostgreSQLにインポートしてみた5社のGTFSをマージして、PostgreSQLにインポートしてみた
5社のGTFSをマージして、PostgreSQLにインポートしてみたMasaki Ito
 
pg_bigmで全文検索するときに気を付けたい5つのポイント(第23回PostgreSQLアンカンファレンス@オンライン 発表資料)
pg_bigmで全文検索するときに気を付けたい5つのポイント(第23回PostgreSQLアンカンファレンス@オンライン 発表資料)pg_bigmで全文検索するときに気を付けたい5つのポイント(第23回PostgreSQLアンカンファレンス@オンライン 発表資料)
pg_bigmで全文検索するときに気を付けたい5つのポイント(第23回PostgreSQLアンカンファレンス@オンライン 発表資料)NTT DATA Technology & Innovation
 
地理空間とOSGeoとPostGISとを簡単に紹介してみます
地理空間とOSGeoとPostGISとを簡単に紹介してみます地理空間とOSGeoとPostGISとを簡単に紹介してみます
地理空間とOSGeoとPostGISとを簡単に紹介してみますboiledorange73
 
Redisの特徴と活用方法について
Redisの特徴と活用方法についてRedisの特徴と活用方法について
Redisの特徴と活用方法についてYuji Otani
 
PostgreSQL 15 開発最新情報
PostgreSQL 15 開発最新情報PostgreSQL 15 開発最新情報
PostgreSQL 15 開発最新情報Masahiko Sawada
 
Hadoop/Spark を使うなら Bigtop を使い熟そう! ~並列分散処理基盤のいま、から Bigtop の最近の取り組みまで一挙ご紹介~(Ope...
Hadoop/Spark を使うなら Bigtop を使い熟そう! ~並列分散処理基盤のいま、から Bigtop の最近の取り組みまで一挙ご紹介~(Ope...Hadoop/Spark を使うなら Bigtop を使い熟そう! ~並列分散処理基盤のいま、から Bigtop の最近の取り組みまで一挙ご紹介~(Ope...
Hadoop/Spark を使うなら Bigtop を使い熟そう! ~並列分散処理基盤のいま、から Bigtop の最近の取り組みまで一挙ご紹介~(Ope...NTT DATA Technology & Innovation
 
アサヒのデータ活用基盤を支えるデータ仮想化技術
アサヒのデータ活用基盤を支えるデータ仮想化技術アサヒのデータ活用基盤を支えるデータ仮想化技術
アサヒのデータ活用基盤を支えるデータ仮想化技術Denodo
 
テスト文字列に「うんこ」と入れるな
テスト文字列に「うんこ」と入れるなテスト文字列に「うんこ」と入れるな
テスト文字列に「うんこ」と入れるなKentaro Matsui
 
「GraphDB徹底入門」〜構造や仕組み理解から使いどころ・種々のGraphDBの比較まで幅広く〜
「GraphDB徹底入門」〜構造や仕組み理解から使いどころ・種々のGraphDBの比較まで幅広く〜「GraphDB徹底入門」〜構造や仕組み理解から使いどころ・種々のGraphDBの比較まで幅広く〜
「GraphDB徹底入門」〜構造や仕組み理解から使いどころ・種々のGraphDBの比較まで幅広く〜Takahiro Inoue
 
kubernetes初心者がKnative Lambda Runtime触ってみた(Kubernetes Novice Tokyo #13 発表資料)
kubernetes初心者がKnative Lambda Runtime触ってみた(Kubernetes Novice Tokyo #13 発表資料)kubernetes初心者がKnative Lambda Runtime触ってみた(Kubernetes Novice Tokyo #13 発表資料)
kubernetes初心者がKnative Lambda Runtime触ってみた(Kubernetes Novice Tokyo #13 発表資料)NTT DATA Technology & Innovation
 
Dockerfile を書くためのベストプラクティス解説編
Dockerfile を書くためのベストプラクティス解説編Dockerfile を書くためのベストプラクティス解説編
Dockerfile を書くためのベストプラクティス解説編Masahito Zembutsu
 
Dockerfileを改善するためのBest Practice 2019年版
Dockerfileを改善するためのBest Practice 2019年版Dockerfileを改善するためのBest Practice 2019年版
Dockerfileを改善するためのBest Practice 2019年版Masahito Zembutsu
 
マイクロサービス 4つの分割アプローチ
マイクロサービス 4つの分割アプローチマイクロサービス 4つの分割アプローチ
マイクロサービス 4つの分割アプローチ増田 亨
 
アプリケーション開発者のためのAzure Databricks入門
アプリケーション開発者のためのAzure Databricks入門アプリケーション開発者のためのAzure Databricks入門
アプリケーション開発者のためのAzure Databricks入門Yoichi Kawasaki
 
Snowflake Architecture and Performance
Snowflake Architecture and PerformanceSnowflake Architecture and Performance
Snowflake Architecture and PerformanceMineaki Motohashi
 
初心者向けMongoDBのキホン!
初心者向けMongoDBのキホン!初心者向けMongoDBのキホン!
初心者向けMongoDBのキホン!Tetsutaro Watanabe
 

What's hot (20)

第22回オープンデータトーク 地理データ形式のこれから
第22回オープンデータトーク 地理データ形式のこれから第22回オープンデータトーク 地理データ形式のこれから
第22回オープンデータトーク 地理データ形式のこれから
 
SolrとElasticsearchを比べてみよう
SolrとElasticsearchを比べてみようSolrとElasticsearchを比べてみよう
SolrとElasticsearchを比べてみよう
 
Hadoop入門
Hadoop入門Hadoop入門
Hadoop入門
 
オープンデータとオープンソースGisを用いたweb上でのインタラクティブ可視化手法について
オープンデータとオープンソースGisを用いたweb上でのインタラクティブ可視化手法についてオープンデータとオープンソースGisを用いたweb上でのインタラクティブ可視化手法について
オープンデータとオープンソースGisを用いたweb上でのインタラクティブ可視化手法について
 
5社のGTFSをマージして、PostgreSQLにインポートしてみた
5社のGTFSをマージして、PostgreSQLにインポートしてみた5社のGTFSをマージして、PostgreSQLにインポートしてみた
5社のGTFSをマージして、PostgreSQLにインポートしてみた
 
pg_bigmで全文検索するときに気を付けたい5つのポイント(第23回PostgreSQLアンカンファレンス@オンライン 発表資料)
pg_bigmで全文検索するときに気を付けたい5つのポイント(第23回PostgreSQLアンカンファレンス@オンライン 発表資料)pg_bigmで全文検索するときに気を付けたい5つのポイント(第23回PostgreSQLアンカンファレンス@オンライン 発表資料)
pg_bigmで全文検索するときに気を付けたい5つのポイント(第23回PostgreSQLアンカンファレンス@オンライン 発表資料)
 
地理空間とOSGeoとPostGISとを簡単に紹介してみます
地理空間とOSGeoとPostGISとを簡単に紹介してみます地理空間とOSGeoとPostGISとを簡単に紹介してみます
地理空間とOSGeoとPostGISとを簡単に紹介してみます
 
Redisの特徴と活用方法について
Redisの特徴と活用方法についてRedisの特徴と活用方法について
Redisの特徴と活用方法について
 
PostgreSQL 15 開発最新情報
PostgreSQL 15 開発最新情報PostgreSQL 15 開発最新情報
PostgreSQL 15 開発最新情報
 
Hadoop/Spark を使うなら Bigtop を使い熟そう! ~並列分散処理基盤のいま、から Bigtop の最近の取り組みまで一挙ご紹介~(Ope...
Hadoop/Spark を使うなら Bigtop を使い熟そう! ~並列分散処理基盤のいま、から Bigtop の最近の取り組みまで一挙ご紹介~(Ope...Hadoop/Spark を使うなら Bigtop を使い熟そう! ~並列分散処理基盤のいま、から Bigtop の最近の取り組みまで一挙ご紹介~(Ope...
Hadoop/Spark を使うなら Bigtop を使い熟そう! ~並列分散処理基盤のいま、から Bigtop の最近の取り組みまで一挙ご紹介~(Ope...
 
アサヒのデータ活用基盤を支えるデータ仮想化技術
アサヒのデータ活用基盤を支えるデータ仮想化技術アサヒのデータ活用基盤を支えるデータ仮想化技術
アサヒのデータ活用基盤を支えるデータ仮想化技術
 
テスト文字列に「うんこ」と入れるな
テスト文字列に「うんこ」と入れるなテスト文字列に「うんこ」と入れるな
テスト文字列に「うんこ」と入れるな
 
「GraphDB徹底入門」〜構造や仕組み理解から使いどころ・種々のGraphDBの比較まで幅広く〜
「GraphDB徹底入門」〜構造や仕組み理解から使いどころ・種々のGraphDBの比較まで幅広く〜「GraphDB徹底入門」〜構造や仕組み理解から使いどころ・種々のGraphDBの比較まで幅広く〜
「GraphDB徹底入門」〜構造や仕組み理解から使いどころ・種々のGraphDBの比較まで幅広く〜
 
kubernetes初心者がKnative Lambda Runtime触ってみた(Kubernetes Novice Tokyo #13 発表資料)
kubernetes初心者がKnative Lambda Runtime触ってみた(Kubernetes Novice Tokyo #13 発表資料)kubernetes初心者がKnative Lambda Runtime触ってみた(Kubernetes Novice Tokyo #13 発表資料)
kubernetes初心者がKnative Lambda Runtime触ってみた(Kubernetes Novice Tokyo #13 発表資料)
 
Dockerfile を書くためのベストプラクティス解説編
Dockerfile を書くためのベストプラクティス解説編Dockerfile を書くためのベストプラクティス解説編
Dockerfile を書くためのベストプラクティス解説編
 
Dockerfileを改善するためのBest Practice 2019年版
Dockerfileを改善するためのBest Practice 2019年版Dockerfileを改善するためのBest Practice 2019年版
Dockerfileを改善するためのBest Practice 2019年版
 
マイクロサービス 4つの分割アプローチ
マイクロサービス 4つの分割アプローチマイクロサービス 4つの分割アプローチ
マイクロサービス 4つの分割アプローチ
 
アプリケーション開発者のためのAzure Databricks入門
アプリケーション開発者のためのAzure Databricks入門アプリケーション開発者のためのAzure Databricks入門
アプリケーション開発者のためのAzure Databricks入門
 
Snowflake Architecture and Performance
Snowflake Architecture and PerformanceSnowflake Architecture and Performance
Snowflake Architecture and Performance
 
初心者向けMongoDBのキホン!
初心者向けMongoDBのキホン!初心者向けMongoDBのキホン!
初心者向けMongoDBのキホン!
 

Viewers also liked

20120126 セミナー 資料
20120126 セミナー 資料20120126 セミナー 資料
20120126 セミナー 資料scratch160
 
大規模タイル画像を生成した話((独)農研機構 寺元郁博様)
大規模タイル画像を生成した話((独)農研機構 寺元郁博様)大規模タイル画像を生成した話((独)農研機構 寺元郁博様)
大規模タイル画像を生成した話((独)農研機構 寺元郁博様)OSgeo Japan
 
オープンソースの 地理空間情報ソフトFOSS4GとOSGeo財団の紹介 OSC京都2013年
オープンソースの地理空間情報ソフトFOSS4GとOSGeo財団の紹介 OSC京都2013年オープンソースの地理空間情報ソフトFOSS4GとOSGeo財団の紹介 OSC京都2013年
オープンソースの 地理空間情報ソフトFOSS4GとOSGeo財団の紹介 OSC京都2013年KenichiSAKURAI
 
FOSS4Gで地理空間情報もかんたん
FOSS4Gで地理空間情報もかんたんFOSS4Gで地理空間情報もかんたん
FOSS4Gで地理空間情報もかんたんKosuke Asahi
 
FOSS4G KOREA 2012参加報告
FOSS4G KOREA 2012参加報告FOSS4G KOREA 2012参加報告
FOSS4G KOREA 2012参加報告Kosuke Asahi
 
大きく進歩したMapServer6の新機能((株)オークニー・丹羽誠様)
大きく進歩したMapServer6の新機能((株)オークニー・丹羽誠様)大きく進歩したMapServer6の新機能((株)オークニー・丹羽誠様)
大きく進歩したMapServer6の新機能((株)オークニー・丹羽誠様)OSgeo Japan
 
電子国土を使って観光マップを作成してみる
電子国土を使って観光マップを作成してみる電子国土を使って観光マップを作成してみる
電子国土を使って観光マップを作成してみるInoshachu, NPO
 
FOSS4G 2013 Osaka karaoke LT 課題スライド
FOSS4G 2013 Osaka karaoke LT 課題スライドFOSS4G 2013 Osaka karaoke LT 課題スライド
FOSS4G 2013 Osaka karaoke LT 課題スライドKosuke Asahi
 
Map server入門 - FOSS4G 2012 Hokkaido
Map server入門 - FOSS4G 2012 HokkaidoMap server入門 - FOSS4G 2012 Hokkaido
Map server入門 - FOSS4G 2012 HokkaidoHideo Harada
 
20分で語るFOSS4Gの10年
20分で語るFOSS4Gの10年20分で語るFOSS4Gの10年
20分で語るFOSS4Gの10年Toru Mori
 
Foss4 g2014pd xreport
Foss4 g2014pd xreportFoss4 g2014pd xreport
Foss4 g2014pd xreportToru Mori
 
Application insights で行ってみよう
Application insights で行ってみようApplication insights で行ってみよう
Application insights で行ってみようKazushi Kamegawa
 
JavaScript GIS ライブラリ turf.js 入門
JavaScript GIS ライブラリ turf.js 入門JavaScript GIS ライブラリ turf.js 入門
JavaScript GIS ライブラリ turf.js 入門Takahiro Kamada
 
20161030 foss4 g2016_yamakawa
20161030 foss4 g2016_yamakawa20161030 foss4 g2016_yamakawa
20161030 foss4 g2016_yamakawaOSgeo Japan
 
地理空間オープンデータの可視化をオープンソースGISで簡単に!
地理空間オープンデータの可視化をオープンソースGISで簡単に!地理空間オープンデータの可視化をオープンソースGISで簡単に!
地理空間オープンデータの可視化をオープンソースGISで簡単に!Ko Nagase
 
FOSS4Gと地理院地図
FOSS4Gと地理院地図FOSS4Gと地理院地図
FOSS4Gと地理院地図OSgeo Japan
 

Viewers also liked (20)

20120126 セミナー 資料
20120126 セミナー 資料20120126 セミナー 資料
20120126 セミナー 資料
 
大規模タイル画像を生成した話((独)農研機構 寺元郁博様)
大規模タイル画像を生成した話((独)農研機構 寺元郁博様)大規模タイル画像を生成した話((独)農研機構 寺元郁博様)
大規模タイル画像を生成した話((独)農研機構 寺元郁博様)
 
オープンソースの 地理空間情報ソフトFOSS4GとOSGeo財団の紹介 OSC京都2013年
オープンソースの地理空間情報ソフトFOSS4GとOSGeo財団の紹介 OSC京都2013年オープンソースの地理空間情報ソフトFOSS4GとOSGeo財団の紹介 OSC京都2013年
オープンソースの 地理空間情報ソフトFOSS4GとOSGeo財団の紹介 OSC京都2013年
 
FOSS4Gで地理空間情報もかんたん
FOSS4Gで地理空間情報もかんたんFOSS4Gで地理空間情報もかんたん
FOSS4Gで地理空間情報もかんたん
 
FOSS4G KOREA 2012参加報告
FOSS4G KOREA 2012参加報告FOSS4G KOREA 2012参加報告
FOSS4G KOREA 2012参加報告
 
電子国土Part2
電子国土Part2電子国土Part2
電子国土Part2
 
FOSS4G Osaka 2013
FOSS4G Osaka 2013FOSS4G Osaka 2013
FOSS4G Osaka 2013
 
大きく進歩したMapServer6の新機能((株)オークニー・丹羽誠様)
大きく進歩したMapServer6の新機能((株)オークニー・丹羽誠様)大きく進歩したMapServer6の新機能((株)オークニー・丹羽誠様)
大きく進歩したMapServer6の新機能((株)オークニー・丹羽誠様)
 
電子国土を使って観光マップを作成してみる
電子国土を使って観光マップを作成してみる電子国土を使って観光マップを作成してみる
電子国土を使って観光マップを作成してみる
 
FOSS4G 2013 Osaka karaoke LT 課題スライド
FOSS4G 2013 Osaka karaoke LT 課題スライドFOSS4G 2013 Osaka karaoke LT 課題スライド
FOSS4G 2013 Osaka karaoke LT 課題スライド
 
Map server入門 - FOSS4G 2012 Hokkaido
Map server入門 - FOSS4G 2012 HokkaidoMap server入門 - FOSS4G 2012 Hokkaido
Map server入門 - FOSS4G 2012 Hokkaido
 
20分で語るFOSS4Gの10年
20分で語るFOSS4Gの10年20分で語るFOSS4Gの10年
20分で語るFOSS4Gの10年
 
Foss4 g2014pd xreport
Foss4 g2014pd xreportFoss4 g2014pd xreport
Foss4 g2014pd xreport
 
Foss4g資料西林
Foss4g資料西林Foss4g資料西林
Foss4g資料西林
 
Application insights で行ってみよう
Application insights で行ってみようApplication insights で行ってみよう
Application insights で行ってみよう
 
JavaScript GIS ライブラリ turf.js 入門
JavaScript GIS ライブラリ turf.js 入門JavaScript GIS ライブラリ turf.js 入門
JavaScript GIS ライブラリ turf.js 入門
 
20161030 foss4 g2016_yamakawa
20161030 foss4 g2016_yamakawa20161030 foss4 g2016_yamakawa
20161030 foss4 g2016_yamakawa
 
FOSS4G と北海道地図
FOSS4G と北海道地図FOSS4G と北海道地図
FOSS4G と北海道地図
 
地理空間オープンデータの可視化をオープンソースGISで簡単に!
地理空間オープンデータの可視化をオープンソースGISで簡単に!地理空間オープンデータの可視化をオープンソースGISで簡単に!
地理空間オープンデータの可視化をオープンソースGISで簡単に!
 
FOSS4Gと地理院地図
FOSS4Gと地理院地図FOSS4Gと地理院地図
FOSS4Gと地理院地図
 

Similar to FOSS4G 2014 Hokkaidoハンズオン - PostGIS入門

PostGIS Handson | FOSS4G Tokyo 2014
PostGIS Handson | FOSS4G Tokyo 2014PostGIS Handson | FOSS4G Tokyo 2014
PostGIS Handson | FOSS4G Tokyo 2014Hideo Harada
 
FOSS4G 2012 Tokyo GRASSハンズオン(GRASSを用いた衛星・GISデータ処理の基礎)
FOSS4G 2012 Tokyo GRASSハンズオン(GRASSを用いた衛星・GISデータ処理の基礎)FOSS4G 2012 Tokyo GRASSハンズオン(GRASSを用いた衛星・GISデータ処理の基礎)
FOSS4G 2012 Tokyo GRASSハンズオン(GRASSを用いた衛星・GISデータ処理の基礎)IWASAKI NOBUSUKE
 
20121109 foss4g handsonaok
20121109 foss4g handsonaok20121109 foss4g handsonaok
20121109 foss4g handsonaok和人 青木
 
FOSS4G 2011 Tokyo GRASSハンズオン
FOSS4G 2011 Tokyo GRASSハンズオンFOSS4G 2011 Tokyo GRASSハンズオン
FOSS4G 2011 Tokyo GRASSハンズオンIWASAKI NOBUSUKE
 
Osc shimane-2016-do-postgres-dream-of-graph-database
Osc shimane-2016-do-postgres-dream-of-graph-databaseOsc shimane-2016-do-postgres-dream-of-graph-database
Osc shimane-2016-do-postgres-dream-of-graph-databaseToshi Harada
 
FOSS4Gを利用したWebでの地理空間情報公開入門
FOSS4Gを利用したWebでの地理空間情報公開入門FOSS4Gを利用したWebでの地理空間情報公開入門
FOSS4Gを利用したWebでの地理空間情報公開入門Kosuke Asahi
 
FOSS4Gでオープンデータもかんたん
FOSS4GでオープンデータもかんたんFOSS4Gでオープンデータもかんたん
FOSS4GでオープンデータもかんたんKosuke Asahi
 
PostgreSQL 9.2 新機能 - 新潟オープンソースセミナー2012
PostgreSQL 9.2 新機能 - 新潟オープンソースセミナー2012PostgreSQL 9.2 新機能 - 新潟オープンソースセミナー2012
PostgreSQL 9.2 新機能 - 新潟オープンソースセミナー2012Shigeru Hanada
 
20170909 reafletでお手軽可視化 on_r_20分ver_up用
20170909 reafletでお手軽可視化 on_r_20分ver_up用20170909 reafletでお手軽可視化 on_r_20分ver_up用
20170909 reafletでお手軽可視化 on_r_20分ver_up用Nobuaki Oshiro
 
Jpug study-pq 20170121
Jpug study-pq 20170121Jpug study-pq 20170121
Jpug study-pq 20170121Kosuke Kida
 
オープンソースRDBMS新機能ランダウンOSC2017TokyoSpring
オープンソースRDBMS新機能ランダウンOSC2017TokyoSpringオープンソースRDBMS新機能ランダウンOSC2017TokyoSpring
オープンソースRDBMS新機能ランダウンOSC2017TokyoSpringMeiji Kimura
 
PostgreSQL 9.2 新機能 - OSC 2012 Kansai@Kyoto
PostgreSQL 9.2 新機能 - OSC 2012 Kansai@KyotoPostgreSQL 9.2 新機能 - OSC 2012 Kansai@Kyoto
PostgreSQL 9.2 新機能 - OSC 2012 Kansai@KyotoShigeru Hanada
 
NoSQLデータベースと位置情報
NoSQLデータベースと位置情報NoSQLデータベースと位置情報
NoSQLデータベースと位置情報Koji Ichiwaki
 
20190925_DBTS_PGStrom
20190925_DBTS_PGStrom20190925_DBTS_PGStrom
20190925_DBTS_PGStromKohei KaiGai
 
20190418_PGStrom_on_ArrowFdw
20190418_PGStrom_on_ArrowFdw20190418_PGStrom_on_ArrowFdw
20190418_PGStrom_on_ArrowFdwKohei KaiGai
 
pgGeocoderのご紹介
pgGeocoderのご紹介pgGeocoderのご紹介
pgGeocoderのご紹介Ko Nagase
 
Jjugccc2017spring-postgres-ccc_m1
Jjugccc2017spring-postgres-ccc_m1Jjugccc2017spring-postgres-ccc_m1
Jjugccc2017spring-postgres-ccc_m1Kosuke Kida
 

Similar to FOSS4G 2014 Hokkaidoハンズオン - PostGIS入門 (20)

PostGIS Handson | FOSS4G Tokyo 2014
PostGIS Handson | FOSS4G Tokyo 2014PostGIS Handson | FOSS4G Tokyo 2014
PostGIS Handson | FOSS4G Tokyo 2014
 
FOSS4G 2012 Tokyo GRASSハンズオン(GRASSを用いた衛星・GISデータ処理の基礎)
FOSS4G 2012 Tokyo GRASSハンズオン(GRASSを用いた衛星・GISデータ処理の基礎)FOSS4G 2012 Tokyo GRASSハンズオン(GRASSを用いた衛星・GISデータ処理の基礎)
FOSS4G 2012 Tokyo GRASSハンズオン(GRASSを用いた衛星・GISデータ処理の基礎)
 
20121109 foss4g handsonaok
20121109 foss4g handsonaok20121109 foss4g handsonaok
20121109 foss4g handsonaok
 
FOSS4G 2011 Tokyo GRASSハンズオン
FOSS4G 2011 Tokyo GRASSハンズオンFOSS4G 2011 Tokyo GRASSハンズオン
FOSS4G 2011 Tokyo GRASSハンズオン
 
Osc shimane-2016-do-postgres-dream-of-graph-database
Osc shimane-2016-do-postgres-dream-of-graph-databaseOsc shimane-2016-do-postgres-dream-of-graph-database
Osc shimane-2016-do-postgres-dream-of-graph-database
 
FOSS4Gを利用したWebでの地理空間情報公開入門
FOSS4Gを利用したWebでの地理空間情報公開入門FOSS4Gを利用したWebでの地理空間情報公開入門
FOSS4Gを利用したWebでの地理空間情報公開入門
 
FOSS4Gでオープンデータもかんたん
FOSS4GでオープンデータもかんたんFOSS4Gでオープンデータもかんたん
FOSS4Gでオープンデータもかんたん
 
Chugokudb18_2
Chugokudb18_2Chugokudb18_2
Chugokudb18_2
 
PostgreSQL 9.2 新機能 - 新潟オープンソースセミナー2012
PostgreSQL 9.2 新機能 - 新潟オープンソースセミナー2012PostgreSQL 9.2 新機能 - 新潟オープンソースセミナー2012
PostgreSQL 9.2 新機能 - 新潟オープンソースセミナー2012
 
Qgislecture 0
Qgislecture 0Qgislecture 0
Qgislecture 0
 
20170909 reafletでお手軽可視化 on_r_20分ver_up用
20170909 reafletでお手軽可視化 on_r_20分ver_up用20170909 reafletでお手軽可視化 on_r_20分ver_up用
20170909 reafletでお手軽可視化 on_r_20分ver_up用
 
Jpug study-pq 20170121
Jpug study-pq 20170121Jpug study-pq 20170121
Jpug study-pq 20170121
 
オープンソースRDBMS新機能ランダウンOSC2017TokyoSpring
オープンソースRDBMS新機能ランダウンOSC2017TokyoSpringオープンソースRDBMS新機能ランダウンOSC2017TokyoSpring
オープンソースRDBMS新機能ランダウンOSC2017TokyoSpring
 
PostgreSQL 9.2 新機能 - OSC 2012 Kansai@Kyoto
PostgreSQL 9.2 新機能 - OSC 2012 Kansai@KyotoPostgreSQL 9.2 新機能 - OSC 2012 Kansai@Kyoto
PostgreSQL 9.2 新機能 - OSC 2012 Kansai@Kyoto
 
NoSQLデータベースと位置情報
NoSQLデータベースと位置情報NoSQLデータベースと位置情報
NoSQLデータベースと位置情報
 
20190925_DBTS_PGStrom
20190925_DBTS_PGStrom20190925_DBTS_PGStrom
20190925_DBTS_PGStrom
 
20190418_PGStrom_on_ArrowFdw
20190418_PGStrom_on_ArrowFdw20190418_PGStrom_on_ArrowFdw
20190418_PGStrom_on_ArrowFdw
 
pgGeocoderのご紹介
pgGeocoderのご紹介pgGeocoderのご紹介
pgGeocoderのご紹介
 
Osckyoto2012 osgeojp foss4g
Osckyoto2012 osgeojp foss4gOsckyoto2012 osgeojp foss4g
Osckyoto2012 osgeojp foss4g
 
Jjugccc2017spring-postgres-ccc_m1
Jjugccc2017spring-postgres-ccc_m1Jjugccc2017spring-postgres-ccc_m1
Jjugccc2017spring-postgres-ccc_m1
 

FOSS4G 2014 Hokkaidoハンズオン - PostGIS入門