PostGIS學習筆記(開篇)

PostGIS事實上算是筆者開始寫博客的第一篇內容。而事實上那篇博文的內容並不豐富,筆者對PostGIS的瞭解仍然很少,然而17年在OSGeo課程學習時對PostGIS又有了進一步瞭解,並逐步發現它的強大。恰好最近又趕上一個問題,也使我萌發了開坑PostGIS的想法。git

1 PostGIS簡介

PostGIS是對象關係型數據庫系統PostgreSQL的一個擴展,PostGIS提供以下空間信息服務功能:空間對象、空間索引、空間操做函數和空間操做符。同時,PostGIS遵循OpenGIS的規範。PostGIS的版權被歸入到GNU的GPL中,也就是說任何人能夠自由獲得PostGIS的源碼並對其作研究和改進。正是因爲這一點,PostGIS獲得了迅速的發展,愈來愈多的愛好者和研究機構參與到PostGIS的應用開發和完善當中。github

以上引自百度百科。sql

下面是個人第一篇博客。數據庫

桌面GIS鏈接Postgresql總結函數

安裝能夠在網上搜索教程,在鏈接ArcGIS、QGIS拓展內容可見上文。post

2 關鍵問題

最近須要的一個工做是基於土地覆被數據和其餘數據作一個簡單的適宜用地提取。其實總結起來就是各類基礎的空間疊加分析,可是卻趕上了一個關鍵問題。土地覆被數據分辨率爲300 m,下圖即爲土地覆被數據(已提取了須要的土地覆被類型)。爲了面積準確性,進行柵格轉矢量的時候並無選擇簡化面。結果致使數據量很是巨大。學習

打開屬性表能夠發現,研究區一共有3146163條數據。測試

而後須要和另一個結果作空間疊加(Intersection,相交),獲得適宜用地的空間分佈。結果因爲數據量太大運行時間較長。在ArcGIS平臺測試結果如圖。花了21分鐘27秒。大數據

筆者同時嘗試着使用了ArcGIS Pro來進行大數據量的矢量相交計算。計算時間爲13分鐘6秒。ui

也有人給的建議是選用PostGIS進行計算。因而進行了測試。

須要設置SRID和geometry。接下來在PostGIS的SQL查詢裏運行以下的SQL查詢。

SELECT ST_Intersection(suitablewgs84.geometry, ecooutwgs84.geometry) 
FROM public.suitablewgs84 INNER JOIN public.ecooutwgs84 on ST_Intersects(suitablewgs84.geometry, ecooutwgs84.geometry)

多是目前學習不夠深刻,速度彷佛不夠快。而這也是本部分學習筆記的開篇。

先放一些PostGIS的資料。

postgresql學習資料

PostGIS

相關文章
相關標籤/搜索