วันจันทร์ที่ 10 ตุลาคม พ.ศ. 2559

ZOO-Project: Open WPS platform

     

       ZOO-Project  คือแพลตฟอร์มการบริการประมวลผลบนเว็บแบบรหัสเปิด (open source) ที่ริเริ่มโดย GeoLab และดูแลโดยเครือข่ายชุมชนผู้ใช้งานและนักพัฒนาทางด้านภูมิสารสนเทศทั่วโลก โดยมีประธานของโครงการคือ Gérald FENOY โปรแกรมเมอร์ชาวฝรั่งเศส และยังมีคณะกรรมในการพัฒนาโครงการนี้อยู่ทั่วโลก อาทิเช่น Nicolas BOZON (ฝรั่งเศส), Maria BROVELLI (อิตาลี), Massimilano CANNATA (สวิสเซอร์แลนด์), Hirofumi HAYASHI (ญี่ปุ่น), Daniel KASTL (เยอรมัน), Jeff McKENNA (แคนาดา), Markus NETELER (เยอรมัน), Venkatesh RAGHAVAN (ญี่ปุ่น) และ Angelos TZOTSOS (กรีซ) ซึ่ง ZOO-Project จะประกอบด้วย 4 ส่วนหลัก ๆ นับตั้งแต่การสร้างซึ่งจะได้แก่ ZOO-Kernel, ZOO-Services, ZOO-API และ ZOO-Client
ZOO-Kernel คือ WPS เซิร์ฟเวอร์ และเป็นหัวใจของ ZOO-Project ซึ่งดำเนินงานตามข้อกำหนดของ OGC WPS 1.0.0 ที่เขียนด้วยภาษา C สามารถทำงานบน Linux, Mac OSX และวินโดว์ ซึ่งมีลักษณะเหมือนกับโปรแกรม CGI ซึ่งทำงานร่วมกับเว็บเซิร์ฟเวอร์ เช่น Apache หรือ IIS โดย ZOO-Kernel จะทำหน้าในการประมวลผลข้อมูลเชิงพื้นที่ สามารถจัดการและ WPS ห่วงโซ่บริการโดยการโหลด libraries และ code ที่เขียนในภาษาการเขียนโปรแกรมที่แตกต่างกันแบบไดนามิกได้ จึงทำให้ ZOO-Kernel สามารถดำเนินการ WPS Services ที่เขียนได้หลากหลายภาษา เช่น C/C++, Fortran 77/90, Ruby, Perl, Java, PHP, Python หรือ JavaScript. ZOO Service จะทำงานร่วมกันกับ ZOO-Kernel บนพื้นฐานของ Library เช่น GDAL, GRASS GIS, OrfeoToolbox (OTB), SAGA GIS และ CGAL โดยนำเอาโมดูลของแต่ละ Library มาพัฒนาให้อยู่ในมาตรฐาน WPS
ZOO-Services เป็นเครื่องมือที่สามารถนำมาพัฒนาและเรียนใช้สำหรับพัฒนาเป็นเซอร์วิสที่สามารถพร้อมใช้งานบริการการประมวลผลเว็บที่สร้างขึ้นโดยการเรียกใช้ไลบรารี่แบบรหัสเปิดซึ่งแหล่งที่มาที่สามารถเชื่อถือได้ เช่น GDAL, GRASS GIS, OrfeoToolbox (OTB), CGAL และ SAGA GIS
ZOO-API เป็น JavaScript API ที่รันบนฝั่งเซิร์ฟเวอร์สำหรับการสร้างหรือผูกมัด (chaining) และกำกับการผูกมัด (orchestrating) ของการให้บริการ WPS ได้ และสามารถสร้าง web application ที่ง่ายแต่มีประสิทธิภาพ และปริมาณ code ที่น้อยเพื่อลดความซับซ้อนของ code ให้น้อยที่สุด
ZOO-Client เป็นฝั่งผู้ใช้งานโดยเรียกใช้ JavaScript API สำหรับการโต้ตอบกับ WPS เซิร์ฟเวอร์ และการดำเนินการร้องขอบริการตามมาตรฐาน OGC จาก web application

เขียนโดย: ชิงชัย หุมห้อง (10 ตุลาคม 2559)
Reference: http://zoo-project.org