Dựa trên sự tìm hiểu về tính năng, khả năng hỗ trợ và cung cấp của các giải pháp Web GIS Server nguồn mở và miễn phí, tơi đã chọn cơng nghệ Google Map API vì khả năng hỗ trợ lớn từ cộng đồng, nhà cung cấp và sự gần gũi, dễ sử dụng đối với người dùng. Hơn nữa, việc xây dựng một hệ thống bản đồ số phạm vi thế giới với các thơng tin chính xác và có thể chồng lớp ảnh viễn thám lên là một vấn đề phức tạp (phát triển trên nền tảng Map Server / Geo Server), vì vậy thay vì phát triển 1 hệ thống từ đầu thì tơi tiếp cận cơng nghệ Google Map API và tìm hiểu về các tính năng của nó.
Sau đó, tơi có thể tùy biến các tính năng và cơng nghệ Google cung cấp để tạo nên các công cụ tương tác với bản đồ trực tuyến một cách hiệu quả và chính xác. Kết quả là có thể rút ngắn rất nhiều thời gian phát triển GIS Map Server và có thể tập trung vào việc xây dựng các tính năng trực quan hóa, quản lý, phân tích, thống kê dữ liệu AOT từ ảnh viễn thám MODIS. Và dễ dàng bổ sung thêm các tính năng mới dựa trên nền tảng cơng nghệ nguồn mở, miễn phí đang thực hiện, cho phép nhiều người dùng.
Như vậy, công việc xây dựng hệ thống WebGIS mã nguồn mở tập trung vào việc tìm hiểu lý thuyết và các công nghệ, ngơn ngữ lập trình Web, framework, thư viện nguồn mở,...Để rồi chọn ra được 1 hướng đi phù hợp nhất với việc xây dựng 1 hệ thống với nhiều tính năng phong phú, đa dạng, tiện ích nhưng cũng phải có khả năng tùy biến, nâng cấp, mở rộng dễ dàng. Các công nghệ và kỹ thuật này sẽ được sử dụng để giải quyết bài toán thực tế. Ở đây, ở Bảng 3.1 tôi liệt kê ra danh sách các cơng nghệ để có cái nhìn tổng quan về việc phát triển hệ thống WebGIS nguồn mở:
Bảng 3.1. Các công nghệ, kỹ thuật dùng để xây dựng hệ thống WebGIS nguồn mở
STT Tên cơng nghệ Mục đích
1 Google Map API Cung cấp bản đồ số trực tuyến, phiên bản mới nhất là version 3, dựa trên nền tảng Javascript 2 Google Chart API Cung cấp tính năng lập biểu đồ thống kê trực
tuyến dựa trên nền tảng Javascript
3 Google Fusion Table API Cung cấp tính năng tạo database có kiểu dữ liệu khơng gian, import dữ liệu từ shapefile
hoặc KML, hỗ trợ truy vấn không gian và hiển thị kết quả trên Google Map
4 Google Visualization Cung cấp tính năng truy vấn dữ liệu tới Google Fusion Table, Google Spreadsheet, tạo bảng DataTable, biểu đồ Google Chart 5 Linux Mint Hệ điều hành Linux nguồn mở miễn phí giống
Ubuntu, nhưng có thêm nhiều tiện ích khác được cộng đồng phát triển xây dựng và tích hợp. Tìm hiểu cách cài đặt, cấu hình các phần mềm nguồn mở, hoạt động của Linux Shell 6 Apache Web Server Phần mềm nguồn mở cung cấp tính năng xây
dựng hệ thống Web ngay trên máy tính cá nhân. Cho phép tùy biến và cấu hình với nhiều tính năng tùy theo mục đích sử dụng 7 PHP Ngơn ngữ lập trình Web Server nguồn mở.
Dựa trên framework CodeIgniter miễn phí, xây dựng hệ thống Web chuẩn MVC dễ bảo trì, nâng cấp
8 Python Ngôn ngữ kịch bản nguồn mở chạy được trên nhiều hệ điều hành. Cung cấp nhiều thư viện xử lý đồ họa, ảnh viễn thám. Đặc biệt là thư viện GDAL xử lý ảnh viễn thám và thư viện
đồ họa PIL để xử lý ảnh đồ họa và ghi ra các loại định dạng ảnh khác nhau
9 PostgreSQL/PostGIS Cơ sở dữ liệu hỗ trợ khả năng truy vấn không gian mạnh mẽ và khả năng mở rộng các tính năng do người dùng tự xây dựng.
10 JQuery/JQuery UI Bộ thư viện Javascript nguồn mở và rất nhiều tiện ích đi kèm để tương tác với HTML DOM và CSS. JQuery UI cung cấp các tính năng xây dựng Web Control đơn giản và mạnh. 11 Ajax Công nghệ Web cho phép thực hiện các truy
đổi phần mong muốn trên Website thay vì phải tải lại tồn bộ trang Web. Dữ liệu trả về thường là dạng XML hoặc JSON.