40
SOA概念暨 SOA概念暨 WMSWFSWPS實例解說 林峰田 教授兼院長 林峰田 教授兼院長 國立成功大學規劃與設計學院 fengtyanlin@gmail.com 1

SOA WMS WFS WPS實例解說 - myweb.ncku.edu.twmyweb.ncku.edu.tw/~ftlin/course/GIS/SOA概念暨WMSWFSWPS.pdf · 內容大綱 • 服務導向架構概念介紹 •gis的網路服務

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

  • SOA概念暨SOA概念暨WMS、WFS、WPS實例解說實例解說

    林峰田教授兼院長林峰田教授兼院長

    國立成功大學規劃與設計學院

    [email protected]

    1

  • 內容大綱內容大綱

    服務導向架構概念介紹• 服務導向架構概念介紹• GIS的網路服務GIS的網路服務

    – WMS/WFS/WPS結語• 結語

    2

  • I. 概念介紹

    3

  • 資訊系統架構的演進資訊系統架構的演進

    主機架構• 1980’s:主機架構 (mainframe)– CPU、儲存空間、資料、程式均存在於同一硬儲存空間 資料 程式均存在於同一硬體內

    – 集中式架構集中式架構• 1990’s:主從式架構 (Client-server)

    – 客戶端(client)可以透過專屬的網路環境,向伺服器(server)請求服務(service),例如:資料的提供

    • 2004:服務導向架構 (Service Oriented2004 服務導向架構 (Service Oriented Architecture) 4

  • 來源:http://www.microsoft.com/taiwan/msdn/columns/soa/SO&EAD_2005010602.htm 5

  • 何謂SOA?何謂SOA?

    服務導向架構• 服務導向架構 (Service Oriented Architecture)• 在網際網路的環境下,透過標準的界面,在網際網路的環境下 透過標準的界面將分散的各地的硬體設備(儲存空間)、資料庫、(空間)分析功能,組合而成一個資訊系統。資訊系統。

    6

  • SOA的各種角色SOA的各種角色

    服務元件供應者• 服務元件供應者– 提供(部份的)硬體、資料庫、分析功能等服務元件– 人口、交通、土地、經濟等資料庫,分別由不同的「資料服務者」所提供;疊圖分析、環域分析、最短徑分析 另由不同的「分析服務者」所提供徑分析…另由不同的「分析服務者」所提供

    • 整合者依據某一特定目的 整合不同的資料服務及分析服– 依據某一特定目的,整合不同的資料服務及分析服務,提供「應用服務」

    使用者• 使用者– 透過網際網路,向應用服務者要求服務。

    7

  • 來源:http://www.microsoft.com/taiwan/msdn/columns/mvp/200412_smartclient.htm#f8

  • 例:Microsoft的 SOA架構

    來源:http://www.microsoft.com/taiwan/msdn/columns/soa/SO&EAD_2005010602.htm 9

  • II. GIS的網路服務

    10

  • 皆是由開放式地理資訊• WMS、WFS、WPS皆是由開放式地理資訊系統協會(OGC)所提出的網路服務標準( )http://www.opengeospatial.org/W b M S i 網路地圖服務• Web Map Service – 網路地圖服務

    • Web Feature Service – 網路圖徵服務W S 網路圖徵服務• Web Processing Service – 網路程序服務

    11

  • 網路服務基本架構OpenGIS

    網路服務基本架構

    Web Browser

    Map Data

    Map ImageWMS/

    Information

    /WFS Geo DatabaseS

    User

    12

  • WMS 網路地圖服務WMS – 網路地圖服務

    是一種能從地理資訊中 依使用者要求 動• WMS是一種能從地理資訊中,依使用者要求,動態產生對應地圖影像的服務。

    ‧地理資訊包括各種地圖資料檔如shapefile,以及各種地理資料庫。

    ‧地圖影像則是可透過一般網頁瀏覽器,直接顯示於電腦螢幕上的影像檔,如PNG、GIF、JPEG。於電腦螢幕上的影像檔 如PNG GIF JPEG

    • 我們可以直接透過瀏覽器,輸入URL呼叫WMS的標準操作 像是G tC biliti G tM的標準操作,像是GetCapabilities、GetMap。

    13

  • • http://www.czone.tcg.gov.tw/liteview6.5/servlet/MapGuideLiteView?REQUEST=GETMAP&VERSION=1.1.1

    &FORMAT=image/jpeg&SRS=EPSG:4326&STYLES &LAYERS TP88 1 MWF&STYLES=&LAYERS=TP88-1.MWF&WIDTH=498&HEIGHT=502&BBOX=121.432,24.962,121.681,25.213&BBOX 121.432,24.962,121.681,25.213

    • 以上URL會嘗試連結到CZONE台北市市容查報的WMS伺服器索取地圖影像:送出要求的WMS伺服器索取地圖影像:送出要求REQUEST=GETMAP、檔案格式FORMAT=image/jpeg、座標系統SRS=EPSG:4326、圖層LAYERS=TP88-1 MWF、範標系統SRS=EPSG:4326 圖層LAYERS=TP88-1.MWF 範圍BBOX=121.432,24.962,121.681,25.213

    14

  • WMS 客戶端程式WMS –客戶端程式

    雖然我們可直接透過 呼叫使用 但更常• 雖然我們可直接透過URL呼叫使用WMS,但更常見的作法是透過客戶端程式,這些程式有可能是

    也有可能不是web-based也有可能不是。• Web-based WMS Client實例

    ArcExplorer Web Service Editionhttp://www.geographynetwork.com/maps/arcexplorerweb.htmlp g g p y p p

    InterGraph OGC Viewerhttp://www wmsviewer com/main asphttp://www.wmsviewer.com/main.asp

    • 非Web-Based WMS Client實例與Gaia 2 與 Google Earth

    15

  • ArcExplorer Web Service EditionArcExplorer Web Service Edition• 市府資料倉儲 – 里界圖 tw_admiv

    http://giswh.taipei.gov.tw/liteview6.5/servlet/MapGuideLiteView?

    16

  • InterGraph OGC ViewerInterGraph OGC Viewer• 世界地圖與操作介面

    17

  • WMS 客戶端程式WMS –客戶端程式

    非 實例• 非Web-based WMS Cilent實例 - Gaia 2

    18

  • Google EarthGoogle Earth• 在Google Earth上套疊自訂WMS圖層在Google Earth上套疊自訂WMS圖層

    19

  • WMS的發佈 伺服器程式WMS的發佈 – 伺服器程式

    由 所開發的 與 皆有提• 由ESRI所開發的ArcGIS Server與ArcIMS皆有提供將圖層發布成WMS的功能。

    • MapServer - http://mapserver.gis.umn.edu/• MapGuide Open Source - http://mapguide.osgeo.org/MapGuide Open Source http://mapguide.osgeo.org/• GeoServer - http://geoserver.org/可讀取多種檔案格式如可讀取多種檔案格式如 PostGIS, Oracle Spatial, ArcSDE, DB2, MySQL, Shapefiles, GeoTIFF, GTOPO30

    亦支援多種檔案格式輸出如 KML GML Sh fil亦支援多種檔案格式輸出如 KML, GML, Shapefile, GeoRSS, Portable Document Format, GeoJSON, JPEG, GIF, SVG, PNG

    20

  • WFS 網路圖徵服務WFS – 網路圖徵服務

    • WMS所提供的地圖僅只是影像檔,我們無法去編輯或是對其做進一步的空間分析。

    • WFS則是提供一個讓我們能夠在各種不同的作業平台上,直接透過標準網路呼叫取得地理圖徵的方法,台上 直接透過標準網路呼叫取得地理圖徵的方法我們可以把地理圖徵想像成地圖的原始碼。

    • WFS傳遞資料的標準格式為GML(地理標記語言)• WFS傳遞資料的標準格式為GML(地理標記語言)GML是一種用以記載地理圖徵的標準XML語言WFS 1.0.0使用GML 2.1.2支援基本的地理圖徵WFS 1.1.0使用GML 3.1.1支援更多進階的地理圖徵

    21

  • WFS 網路圖徵服務WFS – 網路圖徵服務

    包含三種主要操作 基本資料取得 與三種選• WFS包含三種主要操作(基本資料取得)與三種選擇性操作(進階資料編輯)

    22

  • WFS 客戶端程式WFS –客戶端程式

    如同 一樣 我們可以直接傳送 要求給• 如同WMS一樣,我們可以直接傳送URL要求給WFS服務器並取得回應,但由於WFS傳回的檔案格式為 所以我們會需要能夠判讀 的格式為GML,所以我們會需要能夠判讀GML的客戶端程式。

    • WMS傳回的基本上是點陣式的影像檔;WFS傳回的GML則是屬於向量式圖徵,再由這些個別的圖徵如Point、Line、Polygon組成完整的地圖,我們可以使用客戶端程式的Identify或Info功能查詢這些圖徵的屬性資料。

    23

  • WFS 客戶端程式WFS –客戶端程式• Gaia 3 – 讀取WFS圖層

    24

  • WFS 客戶端程式WFS –客戶端程式• Gaia 3 – 讀取WFS圖層及屬性查詢

    25

  • WFS的發佈 伺服器程式WFS的發佈 – 伺服器程式

    由 所開發的 支援 功能• 由ESRI所開發的ArcIMS支援WFS功能• MapServer - http://mapserver.gis.umn.edu/p p p g• GeoServer - http://geoserver.org/支援WFS功能並可自動將一份圖資同時發佈成支援WFS功能並可自動將一份圖資同時發佈成WMS與WFS,上述客戶端程式Gaia即是讀取由GeoServer所發佈的檔案。GeoServer所發佈的檔案。

    26

  • WPS 網路程序服務WPS – 網路程序服務

    是爲了讓 分析運算功能能夠透過網際網• WPS是爲了讓GIS分析運算功能能夠透過網際網路執行而設計的標準。

    • 我們可以將圗徵資料(通常是GML格式)與分析運算所需的參數透過網路傳送給WPS伺服器,再從服務器取得分析結果。

    Data InformationWPS

    27

  • WPS 網路程序服務WPS – 網路程序服務

    包含三種標準操作• WPS包含三種標準操作WPS

    GetCapabilities Process 1

    Process 2DescribeProcess

    Process NExecute

    28

  • WPS 網路程序服務WPS – 網路程序服務

    首先使用 操作取得伺服器所提供• 首先使用GetCapabilities操作取得伺服器所提供的基本Process描述。http://140.112.40.104:8080/wps/WebProcessingService?Request=GetCapabilities&Service=WPS

    接著使用D ib P 查詢所欲使用的P• 接著使用DescribeProcess查詢所欲使用的Process取得其標準輸入/輸出格式。

    http://140.112.40.104:8080/wps/WebProcessingService?Request=DescribeProcess&Service=WPS&Identifier=org.n52.wps.server.algorithm.SimpleBufferAlgorithm

    • 最後將指定的輸入傳送給Execute操作,並取得輸出結果。出結果

    29

  • WPS 客戶端程式WPS –客戶端程式

    客戶端程式能夠自動發送 請求• WPS客戶端程式能夠自動發送GetCapabilites請求給WPS伺服器並取得可使用的程序;當我們選擇了特定程序後則會發送 請求 並了特定程序後則會發送DescribeProcess請求,並列出所需參數,比如選擇要做分析的圖層、輸入特定數據等等 最後再將參數以 格式傳送給特定數據等等;最後再將參數以XML格式傳送給WPS伺服器並取得分析解果。

    • 目前支援WPS的客戶端程式並不多,我們使用uDig – User-friendly Desktop Internet GIS加上52north.org 的WPS Client Plugin爲例

    30

  • WPS 操作實例解說WPS –操作實例解說

    以下將示範以 從 伺服器讀取一特定圗層• 以下將示範以uDig從WFS伺服器讀取一特定圗層,再將該圖層傳送給另一WPS伺服器作分析並取得分析結果得分析結果。

    WFS伺服器提供向量圖資

    WPS伺服器提供分析服務

    讀取圖層A

    發送請求與圖層A

    傳回結果圖層B

    使用者uDig介面

    讀取圖層 傳回結果圖層B

    uDig介面31

  • WPS 操作實例解說WPS –操作實例解說• 路徑平滑分析 – 原始圖層資料

    32

  • WPS 操作實例解說WPS –操作實例解說• 路徑平滑分析 – 分析輸出結果

    33

  • WPS 操作實例解說WPS –操作實例解說• 環域分析 – 選定要做buffer的圖徵

    34

  • WPS 操作實例解說WPS –操作實例解說• 環域分析 – 輸出buffer結果圖層

    35

  • WPS的發佈 伺服器程式WPS的發佈 – 伺服器程式

    相較於 實作 的案例就比較少• 相較於WMS、WFS,實作WFS的案例就比較少• 52north WPS - http://52north.orgp g• deegree WPS - http://www.deegree.org/

    才會• GeoServer預計在下個版本,才會正式加入對WPS的支援

    • ESRI ArcGIS Server已具備發布Geoprocessing Service的功能,然而此係由ESRI自行研發,需透過ESRI介面(web application or ArcMap)使用,並非是參照OGC WPS的標準。

    36

  • 相容性議題相容性議題

    制定 的用意 即是希望• OGC制定WMS、WFS、WPS的用意,即是希望GIS能夠在一個開放的、共通的標準下,不受作業平台限制的被廣泛使用業平台限制的被廣泛使用。

    • 理論上我們僅需使用基本的HTTP GET/POST呼叫,例如前面所述的URL就能夠使用這些服務。

    • 但實際上這種URL傳遞或XML代碼並不適合由使但實際上這種URL傳遞或XML代碼並不適合由使用者直接操作,所以我們仍需使用客戶端程式。

    • 因此在不同伺服器程式與不同客戶端程式之間難• 因此在不同伺服器程式與不同客戶端程式之間難免就會存在一些相容性的問題。

    37

  • 相容性議題 座標系統相容性議題 – 座標系統台灣地區圖資發佈成WMS WPS時最常見的問• 台灣地區圖資發佈成WMS、WPS時最常見的問題點就是座標系統。台灣地區圖資多採用TM2座標系統,如TWD67以及TWD97。標系統,如TWD67以及TWD97。

    • 絕大多數WMS、WFS軟體內定使用EPSG代碼來指定座標系統,比如EPSG:4326即是代表我們所指定座標系統 比如EPSG:4326即是代表我們所熟知的WGS84座標系統。

    • 然而TWD67及TWD97並未註冊有EPSG代碼,因此只能使用EPSG:0或EPSG:NONE來表示,進而導致客戶端軟體在讀圖時可能出現錯誤或是無法正確定位圖層。正確定位圖層。

    • AutoDesk MapGuide定義了ADSK:TM2來表示TM2座標系統。TM2座標系統

    38

  • 台北市政府WMS測試台北市政府WMS測試

    台北市地理資訊資料倉儲系統• 台北市地理資訊資料倉儲系統http://giswh.taipei.gov.twp g p ghttp://giswh.taipei.gov.tw/liteview6.5/servlet/MapGuideLiteView?

    • 台北市民政局CZONE市容查報台北市民政局CZONE市容查報http://www.czone.tcg.gov.tw/http://www.czone.tcg.gov.tw/liteview6.5/servlet/MapGuideLiteView?

    39

  • III 結語III. 結語

    是必然的趨勢• SOA是必然的趨勢• 國土資訊系統正積極推動SOA國土資訊系統正積極推動SOA• 許多單位已經有建置SOA的經驗• 各單位應發布主管的權責資料,提供常用的分析功能的分析功能

    • 在SOA架構下,可以取得即時性、正確性的資料 以及專業的分析功能模組 進而的資料,以及專業的分析功能模組,進而組裝成客製化的應用系統

    40