ความแตกต่างของ WMS และ WFS

หลายท่านต้องเคยได้ยินการพูดถึง Web Map Service หรือ WMS จากวิทยากร เจ้าหน้าที่ หรือหน่วยงานต่างๆ ที่มีการนำข้อมูลภูมิสารสนเทศไปแสดงบนเว็บไซต์ นอกจากนั้นในการพูดคุยกันในกลุ่มคนทำงานทางด้านนี้ บางครั้งมักจะได้ยินคำว่า “เปิด service” เช่น หน่วยงานเปิด service แล้วหรือยัง, มีการเปิด service ให้บริการมั๊ย, เปิด service ให้บริการชั้นข้อมูลไหนบ้าง, เปิด service เป็นแบบไหน เป็นต้น

แต่หลายท่านก็อาจจะยังไม่เข้าใจและมองภาพไม่ออก ว่า service นั้นคืออะไร ทำยังไง หรือจะนำไปใช้ประโยชน์อะไร นอกจากการดูชั้นข้อมูลต่างๆ ผ่านเว็บไซต์

ปกติเราจะคุ้นเคยกับการทำงานบนไฟล์พื้นฐานของชั้นข้อมูลภูมิสารสนเทศในเครื่องคอมพิวเตอร์ของตัวเอง ส่วนใหญ่ที่รู้จักกันก็คือ Shapefile และ GeoTif ที่แสดงข้อมูล Vector และ Raster บนโปรแกรมทางด้านภูมิสารสนเทศ เช่น ArcGIS, MapInfo, QGIS, uDig เป็นต้น การจะส่งข้อมูลให้คนอื่นดูหรือนำไปใช้งานต่อก็ทำได้โดยการก๊อปปี้ข้อมูล ซึ่งก็เป็นข้อจำกัดที่คนส่วนใหญ่สามารถเข้าถึงข้อมูลได้น้อยและต้องยุ่งยากกับการก๊อปปี้ที่บางครั้ง อาจจะมีไวรัสแถมมา ก๊อปปี้ไฟล์ไม่ครบ ระบบพิกัดไม่ถูกต้อง ไม่มีโปรแกรมเปิดใช้งาน เปิดไฟล์ไม่เป็น ฯ

การแก้ไขข้อจำกัดเหล่านี้ ให้ทุกคนสามารถเข้าถึงได้ง่าย สามารถดูและวิเคราะห์ข้อมูลร่วมกันได้ นอกจากนั้นยังนำไปพัฒนาเป็นเว็บแอฟพริเคชั่น เพื่อสร้างการประยุกต์ใช้งานชั้นข้อมูลได้อย่างหลากหลาย ซึ่งก็เป็นที่มาของการ “เปิด service”

ผมจะขออธิบายเป็นภาพรวมกว้างๆ ที่สามารถเข้าใจได้ง่ายก่อน ซึ่งจริงๆ แล้วในการทำงานจริงจะมีรายละเอียดอีกหลายอย่าง แต่อยากจะให้เข้าใจแนวคิดและทำให้มองเห็นภาพเพื่อให้สามารถนำไปคิดต่อยอดได้

service สำหรับงานทางด้านภูมิสารสนเทศที่นิยมเปิดใช้งานหรือทำกัน มีอยู่ 2 ชนิด คือ WMS (Web Map Service) และ WFS (Web Feature Service) ซึ่งข้อมูลที่ได้จาก WMS จะเป็นรูปภาพ PNG หรือ JPEG นำมาประกอบเข้าด้วยกันเป็นชั้นข้อมูลภูมิสารสนเทศ ซึ่งสามารถดูและแสดงรายละเอียดของ Attribute ได้ แต่จะส่งออกเป็น Shapefile หรือวิเคราะห์ข้อมูลไม่ได้ ส่วน WFS จะได้เป็น Feature Class ที่สามารถดู แสดงรายละเอียด Attribute ส่งออกเป็น Shapefile และวิเคราะห์ข้อมูลได้ ถ้าพิจารณาเงื่อนไขตามนี้ WFS จะดีกว่า WMS แน่นอน แต่ทั้งนี้ก็ต้องขึ้นอยู่กับนโยบายของหน่วยงานที่จะเปิด service ว่าต้องการให้ผู้ใช้งานสามารถใช้งานได้ในระดับไหน

concept

ตามรูปภาพข้างบนสามารถอธิบายได้ว่า
1. การจะสร้าง service ขึ้นมาได้นั้น จะต้องทำการติดตั้งโปรแกรมฐานข้อมูลภูมิสารสนเทศ PostgreSQL/PostGIS และโปรแกรมสร้าง service คือ GeoServer บนเครื่อง Server

2. อัปโหลดชั้นข้อมูล Shapefile ที่ต้องการไปไว้ที่ PostgreSQL/PostGIS ส่วนข้อมูลภาพถ่าย สามารถใช้ GDAL Library ทำ Pyramid และ Tiling เพื่อช่วยในการแสดงผลได้รวดเร็ว

PostgreSQL/PostGIS

3. กำหนดให้ GeoServer เปิด WMS และ WFS โดยอ้างอิงชั้นข้อมูลภูมิสารสนเทศจากข้อ 2 ใน PostgreSQL/PostGIS

WCS WFS WMS

4. service ที่ได้จาก GeoServer ทั้งที่เป็น WMS และ WFS จะเป็น URL เหมือนกับลิงค์เว็บไซต์ทั่วไป ซึ่งอาจจะมีการกำหนดหรือไม่กำหนด User Name และ Password ในการใช้งาน service ก็ได้ ยกตัวอย่างเช่น

WMS => http://localhost:8080/geoserver/_tak_ws/wms?

WFS => http://localhost:8080/geoserver/_tak_ws/wfs?

(การใช้งานจริงจะเปลี่ยน localhost:8080 เป็น domain name และ port บนเครื่อง Server)

1 service (WMS หรือ WFS) จะประกอบไปด้วยหลายชั้นข้อมูลภูมิสารสนเทศ

5. การเรียกใช้งาน service สามารถทำได้ 2 วิธี คือ โปรแกรมทางด้านภูมิสารสนเทศ (QGIS และ ArcGIS) และ Web Map API + เขียนโปรแกรม (OpenLayers, Google Map API, และ Leaflet)

6. ในที่นี้จะเรียกใช้งานบน QGIS

6.1 WMS
เรียกเปิด WMS และใส่ชื่อ service ลงไป
WMS

เลือกชั้นข้อมูลที่ต้องการให้แสดงขึ้นมา
Select Layer

ผลลัพธ์ WMS ที่ได้ สามารถแสดงผลและดู Attribute ได้ แต่ไม่สามารถวิเคราะห์และส่งออกเป็น Shapefile ได้
Layer

สามารถเปิด Shapefile ในเครื่องมาซ้อนทับได้
Overlay

6.2 WFS
เรียกเปิด WFS และใส่ชื่อ service ลงไป
WFS

เลือกชั้นข้อมูลที่ต้องการให้แสดงขึ้นมา
Select Layer

ผลลัพธ์ WFS ที่ได้ สามารถแสดงผล ดู Attribute วิเคราะห์ และส่งออกเป็น Shapefile ได้
Layer

วิเคราะห์ข้อมูลผ่าน WFS ร่วมกับชั้นข้อมูลในเครื่อง
CLIP

ส่งออก WFS ไปเป็น Shapefile
WFS to Shapefile

การจะนำข้อมูล WMS หรือ WFS จากหน่วยงานต่างๆ มาใช้งาน เราต้องทราบชื่อ service ซึ่งเป็น URL และนำมาเปิดในโปรแกรม หรือ Web Map API บางหน่วยงานก็จะมีชื่อ service ที่เปิดให้บริการอยู่ตามหน้าเว็บไซต์เลย แต่บางหน่วยงานก็จะต้องสอบถามเองจากเจ้าหน้าที่โดยตรง การเปิดใช้งาน service ส่วนมากจะเป็นแบบ WMS มากกว่า WFS

ใส่ความเห็น

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / เปลี่ยนแปลง )

Twitter picture

You are commenting using your Twitter account. Log Out / เปลี่ยนแปลง )

Facebook photo

You are commenting using your Facebook account. Log Out / เปลี่ยนแปลง )

Google+ photo

You are commenting using your Google+ account. Log Out / เปลี่ยนแปลง )

Connecting to %s