Table of Contents
QGIS đọc dữ liệu để từ xa (remote data) thông qua HTTP URL Tình hình là cái vấn đề về dung lượng lưu trữ nhìn về lâu dài nó cấp bách lắm nếu không có điều kiện đầu tư ổ cứng :v Tuy nhiên, dữ liệu mình muốn chia sẻ với nhiều người và muốn có thể dùng được nhanh chóng, gọn lẹ thì chỉ có cách để dữ liệu đâu đó trên Internet rồi kết nối phần mềm đến đọc thôi.
Và về xa là mình muốn tạo ứng dụng cho phép người dùng có thể sử dụng dữ liệu của chính họ để publish các ứng dụng WebMap, các services bản đồ để chia sẻ thông tin đến nhiều người, góp phần mang dữ liệu địa lý, bản đồ đến gần với nhiều người hơn. Chứ giờ nhắc đến làm bản đồ, làm địa lý mà mọi người cứ nhìn như ông từ trên sao Hỏa xuống không à =))Lại và.. vì thế mình mới tìm hiểu vấn đề load remote data trong QGIS, để xem có cách nào để QGIS đọc dữ liệu trực tiếp từ các hosting không? Gợi ý của việc này xuất phát từ việc bản QGIS3 có chức năng cho load vector data thông qua Protocol như HTTP, HTTPS, FTP và thậm chí là cloud mặc dù không biết cloud nào :v [caption id="attachment_1673" align="alignnone" width="1002"]

http://dev.dothanhlong.orgMình xuất dữ liệu ra một số định dạng dữ liệu hay dùng như Shapefile, GeoJson, GeoPackage, SpatialSQLite và các dạng nén zip của chúng. Trong đó thằng tối ưu về dung lượng nhất là zip của Shapefile và GeoPackage, thằng nặng nhất là SpatialSQLite. [caption id="attachment_1681" align="alignnone" width="714"]

Đường dẫn (URL) truy cập đến dữ liệu
http://dev.dothanhlong.org/data/qgis/[caption id="attachment_1682" align="alignnone" width="482"]

Mở dữ liệu Shapefile trong QGIS thông qua URL
http://dev.dothanhlong.org/data/qgis/shp/vietnam_provinces.shp[caption id="attachment_1684" align="alignnone" width="1279"]


Source /vsicurl/http://dev.dothanhlong.org/data/qgis/shp/vietnam_provinces.shp[caption id="attachment_1687" align="alignnone" width="599"]

Mở remote GeoJson trong QGIS
http://dev.dothanhlong.org/data/qgis/vietnam_provinces.geojson[caption id="attachment_1688" align="alignnone" width="1276"]

Mở GeoJson Zip trong QGIS thông qua URL
http://dev.dothanhlong.org/data/qgis/vietnam_provinces_geojson.zipỒ, ngạc nhiên chưa, được luôn này [caption id="attachment_1689" align="alignnone" width="1277"]



Source /vsizip//vsicurl/http://dev.dothanhlong.org/data/qgis/vietnam_provinces_geojson.zipỒ, thì ra nếu mà dữ liệu dạng nén zip thì nó cần thêm vsizip phía trước vsicurl Vậy. Để đọc được dữ liệu từ url thì cần thêm tiếp đầu vsicurl để nó load data về
vsicurlNếu dữ liệu là dạng nén zip thì cần thêm vsizip để phần mềm giải nén ra
vsizip
Test với QGIS 2.x
Với QGIS 2.x thì mình nhớ là không có chức năng mở dữ liệu từ URL sẵn, vậy mình sẽ thử Đới với QGIS 2.18.22 (Cái mình đang sài) thì chức năng mở file vector có cho protocol nhưng không ghi rõ là loại gì [caption id="attachment_1695" align="alignnone" width="796"]
Mở dữ liệu GeoJson với QGIS 2
http://dev.dothanhlong.org/data/qgis/vietnam_provinces.geojson[caption id="attachment_1697" align="alignnone" width="477"]


Mở dữ liệu zip geojson trên QGIS 2
http://dev.dothanhlong.org/data/qgis/vietnam_provinces_geojson.zipFail, không mở được. Nó không nhận dạng được dữ liệu [caption id="attachment_1698" align="alignnone" width="1292"]

/vsizip//vsicurl/http://dev.dothanhlong.org/data/qgis/vietnam_provinces_geojson.zipSau khi thêm /vsizip//vsicurl/ thì ok [caption id="attachment_1699" align="alignnone" width="1276"]

Mở remote Shapefile trong QGIS 2.x
http://dev.dothanhlong.org/data/qgis/shp/vietnam_provinces.shp[caption id="attachment_1700" align="alignnone" width="477"]



- vsizip: Để giải nén
- vsicurl: Để load remote data
Vậy là chúng ta có thể tha hồ lưu trữ dữ liệu Online để có thể truy cập mọi lúc, mọi nơi mà không cần download dữ liệu về máy Ở Vọc vạch lần sau mình sẽ tets thử trên các hosting miễn phí xem có load được hay không, vì dù sao thì VPS hoặc Hosting xịn không phải ai cũng có ^^]]>
Warning: Undefined variable $comments_number in /shared/webdir2/dothanhlong.org/wp-content/themes/business-hub/comments.php on line 35
Warning: Undefined variable $comments_number in /shared/webdir2/dothanhlong.org/wp-content/themes/business-hub/comments.php on line 39
0 thoughts on “QGIS đọc dữ liệu để từ xa (remote data) thông qua HTTP URL”