TỔNG QUAN VỀ HỆ THÔNG TIN ĐỊA LÝ
Giới thiệu tổng quan về GIS
Hệ thống thông tin địa lý (GIS) ra đời từ những năm 1960 và đã phát triển mạnh mẽ trong thập kỷ qua GIS là công cụ máy tính giúp lập bản đồ và phân tích các sự vật, hiện tượng trên trái đất Công nghệ GIS kết hợp cơ sở dữ liệu thông thường với các phương pháp phân tích thống kê và địa lý, trong đó phân tích địa lý sử dụng hình ảnh từ các bản đồ.
GIS là sự kết hợp của nhiều lĩnh vực khoa học như địa lý, bản đồ, tin học và toán học Kể từ thập niên 80, GIS đã trở nên phổ biến trong các lĩnh vực thương mại, khoa học và quản lý, với nhiều định nghĩa khác nhau về công nghệ này.
GIS là hệ thống bao gồm phần cứng và phần mềm máy tính, kết hợp với thông tin địa lý mô tả không gian Hệ thống này được thiết kế để thu thập, lưu trữ, cập nhật, thao tác, phân tích và thể hiện tất cả các loại thông tin có liên quan đến không gian.
GIS là hệ thống máy tính chuyên dụng cho việc xử lý dữ liệu trong hệ tọa độ quy chiếu, bao gồm cơ sở dữ liệu và các phương thức thao tác dữ liệu hiệu quả.
- Một hệ thống đƣợc gọi là GIS nếu nó có các công cụ hỗ trợ cho việc thao tác với dữ liệu không gian
Cơ sở dữ liệu GIS là một hệ thống tổ chức dữ liệu không gian và phi không gian, cho phép lưu trữ và quản lý thông tin về các đối tượng bản đồ, mối quan hệ giữa chúng và các đặc điểm của khu vực liên quan.
Từ các định nghĩa trên, ta có thể hiểu một cách tổng quát về GIS nhƣ sau Theo [2]
Hệ thống công cụ nền máy tính cho phép thu thập, lưu trữ, truy cập, biến đổi, phân tích và thể hiện dữ liệu về các vị trí trên bề mặt trái đất, đồng thời tích hợp thông tin này vào quá trình ra quyết định.
1.1.2 Các thành phần của Gis
GIS được kết hợp bởi 5 thành phần cơ bản: Con người, phần cứng, phần mềm, dữ liệu và phương pháp phân tích
Hình 1.1 Các thành phần của GIS
Phần cứng là thành phần quan trọng trong hệ thống máy tính cho hoạt động của hệ thống thông tin địa lý (GIS) Nó bao gồm máy tính, máy in, màn hình, thiết bị nhập dữ liệu và các thiết bị mạng cần thiết để triển khai GIS trong môi trường mạng.
Một phần mềm GIS thường có 4 chức năng chính:
- Nhập thông tin không gian và thông tin thuộc tính từ các nguồn khác nhau
- Lưu trữ, điều chỉnh, cập nhật và tổ chức các thông tin không gian và thông tin thuộc tính
- Phân tích biến đổi thông tin trong cơ sở dữ liệu nhằm giải quyết các bài toán tối ƣu và mô hình mô phỏng không gian- thời gian
- Hiển thị và trình bày thông tin dưới các dạng khác nhau, với các biện pháp khác nhau
Dữ liệu trong hệ thống thông tin địa lý là những thông tin phức tạp và thường xuyên thay đổi, bao gồm mô tả số của bản đồ, mối quan hệ giữa các hình ảnh và các đặc tính của chúng Dữ liệu địa lý được xác định qua vị trí trên bề mặt Trái Đất bằng hệ thống tọa độ chuẩn, có thể áp dụng cho khu vực nhỏ hoặc theo hệ tọa độ quốc gia, quốc tế.
Cơ sở dữ liệu địa lý bao gồm hai loại dữ liệu chính: dữ liệu không gian và dữ liệu phi không gian Mỗi loại dữ liệu này có những đặc điểm riêng biệt và khác nhau về yêu cầu lưu trữ, hiệu quả, xử lý và hiển thị thông tin.
Dữ liệu không gian cung cấp thông tin về kích thước và vị trí địa lý của các đối tượng trên bề mặt trái đất Những dữ liệu này biểu diễn các đối tượng địa lý tương ứng với các sự vật đã được định vị trong thế giới thực.
Dữ liệu phi không gian, hay còn gọi là dữ liệu thuộc tính, là loại dữ liệu dưới dạng văn bản dùng để mô tả các đặc điểm của các đối tượng địa lý.
Con người đóng vai trò quan trọng trong việc điều hành và quản lý các hệ thống GIS, do tính chất lớn và phức tạp của chúng Sự đa dạng về đối tượng người dùng với các mục đích khác nhau là một yếu tố cần thiết trong việc tối ưu hóa hiệu quả của các hệ thống này.
Người dùng GIS là những cá nhân sử dụng phần mềm GIS để giải quyết các vấn đề không gian theo mục đích riêng của họ Thường thì, họ là những chuyên gia hoặc những người đã được đào tạo bài bản trong lĩnh vực GIS.
Người xây dựng bản đồ sử dụng nhiều lớp bản đồ từ các nguồn khác nhau để chỉnh sửa và tạo ra những bản đồ đáp ứng yêu cầu cụ thể.
- Người xuất bản: Sử dụng phần mềm GIS để kết xuất ra bản đồ dưới nhiều định dạng khác nhau
- Người phân tích: Giải quyết các vấn đề như tìm kiếm, xác định vị trí…
- Người xây dựng dữ liệu: Là những người chuyên nhập dữ liệu bản đồ bằng các cách khác nhau: vẽ, chuyển đổi từ định dạng khác, truy nhập CSDL…
- Người quản trị CSDL: Quản lý CSDL GIS và đảm bảo hệ thống vận hành tốt
- Người thiết kế CSDL: Xây dựng các mô hình dữ liệu lôgic và vật lý
1.1.2.5 Phương pháp phân tích Ðây là phần rất quan trọng để đảm bảo khả năng hoạt động của hệ thống, là yếu tố quyết định sự thành công của việc phát triển công nghệ GIS Hệ thống GIS cần đƣợc điều hành bởi một bộ phận quản lý, bộ phận này đƣợc giao nhiệm vụ xây dựng hoặc cải tạo các phần mền GIS để đáp ứng các nhu cầu cụ thể
1.1.3 Các chức năng của GIS
Hệ thống thông tin địa lý có sáu chức năng chính: Thu thập, lưu trữ, truy vấn, phân tích, hiển thị và xuất dữ liệu
Các mô hình dữ liệu GIS
Mô hình dữ liệu vector xem các đối tượng như tập hợp các thực thể không gian và mối quan hệ giữa chúng Khi được biểu diễn trong cấu trúc dữ liệu vector, các đối tượng không gian được tổ chức thành các điểm, đường và vùng, và được thể hiện trên một hệ thống tọa độ cụ thể.
Điểm là hình thức cơ bản nhất của dữ liệu vector, được thể hiện như một vector có độ dài bằng không và được xác định bởi một cặp tọa độ (x,y) duy nhất Ngoài tọa độ, các dữ liệu mô tả điểm như ký hiệu và tên gọi cũng được lưu trữ Điểm thường biểu diễn các tính năng không có miền bao hoặc độ dài, và thường là những tính năng có kích thước quá nhỏ so với tỷ lệ của bản đồ, như vị trí các cột đèn, nơi xảy ra tai nạn, hoặc các trung tâm địa chỉ và chủ sở hữu.
Đường, hay thực thể đường (line entity), được định nghĩa là tập hợp các thực thể địa lý được xác định bằng các đoạn thẳng nối giữa ít nhất hai cặp tọa độ Đường cơ bản nhất là đoạn nối giữa hai điểm có tọa độ (Xi, Yi) và (Xj, Yj), có thể đi kèm với dữ liệu ký hiệu để thể hiện trên bản đồ Điểm đầu và điểm cuối của đường được gọi là nút (node), trong khi các điểm tạo nên đường được gọi là đỉnh (vertices) Đường thường được sử dụng để biểu diễn các đối tượng có chiều dài xác định mà không có miền bao, hoặc những đối tượng rất hẹp so với tỷ lệ bản đồ, như đường phố, sông suối và hệ thống nước.
Vùng Polygons là đối tượng hai chiều, có vị trí, chiều dài và chiều rộng, được khép kín bởi các đường Tọa độ của vùng nằm tại ranh giới chính là tọa độ của các điểm (nút hoặc vertex) trong các đường hình thành vùng Khi có tọa độ nào nằm trong vùng mà không được ghi nhận trong cơ sở dữ liệu, GIS có thể nhanh chóng và chính xác sử dụng các mô-đun nội suy để xác định tọa độ đó.
Vùng đƣợc dùng để biểu diễn các tính năng có miền bao xác định: ruộng đất, ao, hồ, vùng lũ lụt…
Hình 1.2 Biểu diễn bản đồ vector [1]
1.2.1.2 Cấu trúc trong dữ liệu Vector 1.2.1.2.1 Cấu trúc Spaghetti:
Cấu trúc dữ liệu Spaghetti xác định mỗi điểm bằng cặp tọa độ (x,y), trong đó mỗi đường được biểu diễn bằng chuỗi các cặp tọa độ (x i ,y i) Các vùng cũng được xác định tương tự nhưng với tọa độ điểm đầu và điểm cuối trùng nhau Đặc biệt, cấu trúc này không lưu trữ các đặc trưng giống nhau của các đối tượng không gian trên cùng một hệ tọa độ, dẫn đến việc tại đường chung của hai vùng kề nhau, có hai đường độc lập.
Trong bài viết này, chúng ta xem xét hai vùng, vùng a và vùng b, có chung cung AB Cấu trúc Spaghetti được sử dụng để biểu diễn hai vùng này Vị trí của điểm A được xác định bởi tọa độ (x A, y A) và điểm B bởi tọa độ (x B, y B) Cung AB nối liền hai điểm A và B với các tọa độ (x A, y A) và (x B, y B) Vùng a bao gồm các điểm (x A, y A), (x a1, y a1), …, (x a5, y a5) và kết thúc tại (x B, y B) trước khi quay lại điểm A Tương tự, vùng b bao gồm các điểm (x A, y A), (x b1, y b1), (x b2, y b2), (x b3, y b3) và cũng kết thúc tại (x B, y B) rồi quay lại điểm A.
Cấu trúc Spaghetti là một phương pháp phổ biến trong lập bản đồ số, nhưng không phù hợp cho phân tích GIS do không thể mô tả các mối quan hệ không gian một cách hiệu quả.
Cấu trúc Topology là một phương án khả thi để giải quyết vấn đề quan hệ không gian trong hệ thống thông tin địa lý Cấu trúc này còn được gọi là cấu trúc cung-nút (arc-node), được xây dựng trên mô hình dữ liệu với cung là phần tử cơ sở Việc xác định các đối tượng không gian dựa trên các định nghĩa liên quan đến cấu trúc Topology.
Mỗi cung đƣợc xác định bởi hai điểm đầu và điểm cuối gọi là nút, còn các điểm giữa cung xác định hình dạng của cung gọi là đỉnh
Các cung giao nhau tại nút, kết thúc một cung phải là nút
Vùng là tập hợp các cung nối liền và khép kín, tạo thành đường biên của vùng Một vùng có thể được xác định bởi hai đường cong khép kín, lòng vào nhau và không cắt nhau.
Trong cấu trúc Topology, không gian được mô tả qua bốn bảng dữ liệu: bảng tọa độ cung, bảng topology cung, bảng topology nút và bảng topology vùng Các bảng này liên kết với nhau thông qua cung, cho phép phân tích mối quan hệ giữa các đối tượng không gian trên cùng một hệ tọa độ.
Hình 1.3 Dữ liệu topology vector
Cung Nút đầu Nút cuối Vùng trái Vùng phải
- Bảng Topology vùng xác định những cung làm đường biên của vùng, phần bên ngoài bản đồ cũng được xem như một vùng không xác định cung đường biên
- Bảng Topology nút xác định mỗi nút thuộc những cung nào
- Bảng Topology cung xác định quan hệ của nút và vùng với cung
Từ ba bảng phân tích, chúng ta có thể hiểu rõ mối quan hệ giữa các phần tử trong bản đồ Bảng thứ tư ghi lại tọa độ của các cung, bao gồm tọa độ của các nút và đỉnh, giúp liên kết vị trí của từng phần tử trên bản đồ với thế giới thực.
1.2.3 Mô hình dữ liệu Raster 1.2.3.1 Giới thiệu mô hình dữ liệu Raster
Cấu trúc raster là một trong những cấu trúc dữ liệu đơn giản nhất trong GIS
Tổ chức theo ô vuông của dữ liệu không gian, hay còn gọi là cấu trúc dữ liệu Raster, sử dụng các điểm ảnh (pixel) để biểu diễn các đặc trưng địa lý Pixel là phần tử cơ bản trong cấu trúc này, giúp thể hiện rõ ràng các đặc trưng không gian.
Dữ liệu tọa độ cung
Nút đầu (x,y) Đỉnh vertex(x,y) Nút cuối (x,y)
Dữ liệu tọa độ cung địa lý f(x,y) trong bảng 1.5 thể hiện giá trị pixel, phản ánh tính chất của đối tượng không gian, với mỗi đối tượng được gán một mã số nhất định Giá trị bằng không thường chỉ các pixel ngoài khu vực nghiên cứu Dữ liệu Raster, liên quan đến hình ảnh và dữ liệu liên tục, có khả năng biểu diễn nhiều đối tượng từ hình ảnh bề mặt đất đến ảnh vệ tinh Mặc dù định dạng dữ liệu Raster đơn giản, nó hỗ trợ nhiều loại dữ liệu khác nhau như số nguyên, số thực và ký tự Độ chính xác của mô hình raster phụ thuộc vào kích thước và độ phân giải của pixel, với mỗi điểm, đường và vùng được xác định bởi số lượng pixel tương ứng Tóm lại, mô hình dữ liệu raster chủ yếu phản ánh các đối tượng dạng vùng và ứng dụng cho các bài toán như phân loại và chồng xếp.
1.2.3.2 Đặc điểm dữ liệu raster
Raster được hình thành từ một mảng hai chiều gồm các điểm ảnh hay cell, với mỗi cell là một đơn vị đồng nhất đại diện cho một khu vực cụ thể trên bề mặt trái đất Tất cả các cell đều có kích thước giống nhau, và góc tọa độ của hệ được xác định tại cell nằm ở góc trên bên trái Mỗi cell được xác định rõ ràng.
Biểu đồ dữ liệu raster được xác định bởi chỉ số dòng và chỉ số cột, đồng thời chứa các giá trị số nguyên hoặc số thực, thể hiện kiểu hoặc giá trị thuộc tính trên bản đồ.
Tổng quan về WebGIS
WebGIS là một hệ thống thông tin địa lý (GIS) kết hợp với các thành phần của web, cho phép người dùng truy cập, phân tích và chia sẻ dữ liệu địa lý qua internet Các định nghĩa về WebGIS thường phản ánh sự đa dạng của GIS, đồng thời nhấn mạnh tính năng tương tác và khả năng kết nối toàn cầu của các ứng dụng web.
WebGIS là một hệ thống phức tạp cho phép truy cập trực tuyến, cung cấp các chức năng như bắt giữ hình ảnh, lưu trữ, tích hợp dữ liệu, thao tác, phân tích và hiển thị thông tin không gian.
WebGIS là một hệ thống thông tin địa lý (GIS) được phân phối qua mạng máy tính, nhằm mục đích thống nhất và phổ biến thông tin địa lý Hệ thống này cho phép giao tiếp và hiển thị dữ liệu địa lý trên World Wide Web, mang lại sự tiện lợi và hiệu quả trong việc truy cập thông tin cho người dùng.
Dịch vụ web thông tin địa lý, hay còn gọi là WebGIS, được phát triển để cung cấp thông tin địa lý qua công nghệ web service Để xây dựng WebGIS hiệu quả, trước tiên cần đảm bảo tuân thủ kiến trúc ba tầng phổ biến của ứng dụng web Tùy thuộc vào từng loại công nghệ và phương pháp phát triển, WebGIS có thể được mở rộng thành kiến trúc đa tầng (n-tầng).
Mô hình WebGIS có cấu trúc 3 tầng cơ bản, bao gồm tầng trình bày, tầng giao dịch và tầng dữ liệu Điều này cho phép quản lý và hiển thị thông tin địa lý một cách hiệu quả Tham khảo thêm tại nguồn: http://gis.ascc.net/STIS/eng/main2-3.html.
1.3.1.1.Tầng trình bày (Presentation tier)
Presentation layers include web browsers such as Internet Explorer and Mozilla Firefox, which access web pages via predefined URLs Client applications can range from websites and applets to Flash content, all developed using W3C standards Additionally, clients may also refer to desktop applications like MapInfo and ArcMap.
1.3.1.2 Tầng giao dịch (Bussines tier)
Tầng này thường tích hợp trong các webserver như Tomcat, Apache, hoặc Internet Information Server Nhiệm vụ chính của ứng dụng phía server là tiếp nhận yêu cầu từ client, truy xuất dữ liệu từ cơ sở dữ liệu, và trình bày dữ liệu theo cấu hình hoặc yêu cầu của client Kết quả trả về có thể là hình ảnh bitmap (jpeg, gif, png) hoặc dạng vector như SVG, KML, GML, tùy thuộc vào yêu cầu Khi dữ liệu vector được gửi về, client sẽ đảm nhiệm việc trình bày hình ảnh bản đồ và có thể xử lý các bài toán không gian Thông thường, các yêu cầu và phản hồi đều tuân theo chuẩn HTTP POST hoặc GET.
1.3.1.3 Tầng dữ liệu (Data tier)
Tầng dữ liệu là nơi lưu trữ dữ liệu địa lý, bao gồm dữ liệu không gian và phi không gian, được quản lý bởi các hệ quản trị cơ sở dữ liệu như ORACLE, MS SQL SERVER, ESRI SDE, và POSGRESQL, hoặc thông qua các file dữ liệu flat như shapefile, tab, XML Việc thiết kế, cài đặt và xây dựng dữ liệu phụ thuộc vào từng quy trình và quy mô của hệ thống, từ đó lựa chọn hệ quản trị cơ sở dữ liệu phù hợp.
Kiến trúc 3 tầng là lựa chọn phổ biến cho ứng dụng web, nhưng để giải quyết các vấn đề phức tạp, cần kết nối và trao đổi giữa các thành phần hệ thống Điều này khiến kiến trúc 3 tầng trở nên kém linh hoạt và khó vận hành Trong bối cảnh này, kiến trúc n tầng phát triển để phục vụ cho các hệ thống thông tin, thường áp dụng cho các hệ thống phân tán, cho phép các hệ thống độc lập kết hợp thành một hệ thống lớn hơn Để đáp ứng yêu cầu người dùng trong kiến trúc n tầng, cần truy cập và xử lý thông qua nhiều tầng giao dịch của các hệ thống và thành phần khác nhau, thường thể hiện qua sự tương tác trực tiếp giữa client và nhiều hệ thống.
WebGIS cung cấp nhiều chức năng đa dạng, nhưng hai chức năng chính mà người dùng thường chú ý là chức năng hiển thị dữ liệu và chức năng phân tích, thiết kế thông tin địa lý.
- Hiển thị toàn bộ các lớp bản đồ
Third Tier Second Tier First Tier
(Data tier) ( Bussines tier ) ( Presentation)
Client (Web browser) Java applets
Client (Web browser) HTML Viewer
Client (Web browser) ActiveX Viewer
Hình 1.9 Mô hình 3 lớp trong kiến trúc WebGIS
- Hiển thị các lớp bản đồ theo tùy chọn
- Thay đổi tỉ lệ hiển thị bản đồ(phóng to, thu nhỏ)
- Di chuyển khu vực hiển thị
- Hiển thị thông tin về đối tƣợng cụ thể
Chức năng phân tích và thiết kế
- Thực hiện việc tìm kiếm các dữ liệu phù hợp với yêu cầu
- Chỉnh sửa đối tƣợng sẵn có thông tin về màu sắc thông qua 1 chuẩn bản đồ
- Tạo bản đồ chuyên đề
1.3.3 Ứng dụng của WebGIS a Thống kê và quản lý kinh tế - xã hội
- Thống kê, quản lý dân số
- Quản lý mạng lưới giao thông(đường thủy – đường bộ)
- Thống kê, quản lý mạng lưới y tế, giáo dục
- Điều tra và quản lý hệ thống cơ sở hạ tầng b Quản lý rừng
- Theo dõi sự thay đổi của rừng
- Nghiên cứu tình trạng xói mòn đất c Nghiên cứu hỗ trợ các chương trình quy hoạch phát triển
- Đánh giá khả năng thích nghi của cây trồng, vật nuôi và động vật hoang dã
- Định hướng và xác định các vùng phát triển tối ưu trong sản xuất nông nghiệp
- Hỗ trợ quy hoạch và quản lý các vùng bảo tồn thiên nhiên
- Đánh già khả năng và định hướng quy hoạch các vùng đô thị, công nghiệp lớn.
NGHIÊN CỨU VỀ OGC VÀ CÔNG NGHỆ WEBGIS NGUỒN MỞ
Giới thiệu về OGC (Open Geospatial Consortium)
Vào giữa thập niên 80 của thế kỷ 20, Hệ thống thông tin địa lý (GIS) đã trở thành công cụ quan trọng trong các lĩnh vực quốc phòng và quản lý tài nguyên thiên nhiên, đặc biệt là trong các cơ quan chính phủ Các doanh nghiệp, ngành giao thông vận tải và kỹ thuật công trình cũng đã tích cực áp dụng công nghệ GIS để nâng cao hiệu quả trong lĩnh vực của họ.
Người dùng đánh giá cao sức mạnh và tiềm năng của các ứng dụng GIS mới, đặc biệt là tính năng lập bản đồ và công cụ phân tích không gian Tuy nhiên, sự hạn chế trong khả năng mở rộng và chia sẻ dữ liệu không gian giữa các hệ thống, cùng với chi phí cao cho mỗi phần mềm, đã dẫn đến sự thất vọng trong cộng đồng người dùng.
Mặc dù có nhiều sản phẩm GIS thương mại, một số cơ quan và tổ chức phát triển phần mềm GIS riêng do hạn chế về kinh phí, dẫn đến sự không đồng nhất trong dữ liệu địa lý Việc tích hợp dữ liệu từ nhiều nguồn trở nên khó khăn, như trường hợp bản đồ đường ống nước của sở Tài nguyên thiên nhiên và môi trường không tương thích với đường dây điện của sở Điện lực do sử dụng lưới chiếu khác nhau Điều này gây tốn kém thời gian và chi phí trong quản lý chung Do đó, chi phí và nhu cầu đồng bộ hóa dữ liệu là vấn đề quan trọng cần được chú ý trong sự phát triển rộng rãi của GIS.
Các nhà khoa học và nghiên cứu mã nguồn mở nhận thấy nhu cầu và lợi ích của việc đồng bộ hóa dữ liệu GIS, do đó đã hợp tác để thành lập một tổ chức nghiên cứu phát triển nhằm tích hợp các cơ sở dữ liệu địa lý, bất kể phần mềm nào được sử dụng cho dữ liệu nền.
In October 1994, the Open Geospatial Consortium, Inc was established with eight founding members, including Camber Corporation, the University of Arkansas-CAST, the Environmental Design Research Center at the University of California – Berkeley, Intergraph Corporation, PIC Remote Sensing, QUABA, the US Army Corps of Engineers Research Laboratory (USACERL), and the USDA Natural Resources Conservation Service.
The Open Geospatial Consortium (OGC) has established the "OpenGIS" trademark, which is officially protected by the Community Intellectual Property This protection is crucial for empowering OGC to develop in alignment with its esteemed position and the quality of its products.
OpenGIS (OpenGIS Specifications) thật sự “mở” và cung cấp trung lập (vendor – neutral).
Dịch vụ OGC cho GIS
Trên thế giới hiện nay, có nhiều công nghệ GIS như ESRI, GEOMEDIA, MAPINFO, và DOLSOFT, mỗi công nghệ hỗ trợ các định dạng dữ liệu và hệ quản trị cơ sở dữ liệu khác nhau Tổ chức OGC được thành lập nhằm mục đích tạo điều kiện cho các hệ thống GIS có thể giao tiếp hiệu quả với nhau Giải pháp cho vấn đề này là áp dụng kiến trúc hướng dịch vụ (SOA) thông qua các dịch vụ web OGC (OWS).
2.2.1 Khái niệm và nguyên lý hoạt động của kiến trúc hướng dịch vụ (SOA) 2.2.1.1 Khái niệm
Kiến trúc hướng dịch vụ (SOA) là một phương pháp thiết kế và tích hợp phần mềm theo dạng modul, tương tự như phần mềm hướng đối tượng Tuy nhiên, trong SOA, mỗi modul không chỉ là một gói phần mềm mà là một dịch vụ phân tán có thể truy cập qua mạng Hệ thống SOA bao gồm nhiều dịch vụ được cung cấp trên mạng, tích hợp với nhau để thực hiện các tác vụ theo yêu cầu của khách hàng.
Dịch vụ là yếu tố then chốt trong Kiến trúc Hướng Dịch vụ (SOA), đóng vai trò như một module thực hiện quy trình nghiệp vụ Một trong những mục đích chính của SOA là cho phép các ứng dụng giao tiếp mà không cần biết chi tiết kỹ thuật bên trong SOA thiết lập chuẩn giao tiếp rõ ràng, độc lập với nền tảng hệ thống, giúp tái sử dụng dịch vụ Điều này nâng cao cấp độ phát triển ứng dụng, tập trung vào quy trình nghiệp vụ và che giấu sự phức tạp kỹ thuật Sự trừu tượng trong dịch vụ cho phép doanh nghiệp tích hợp các thành phần hiện có vào ứng dụng mới mà không cần chỉnh sửa mã nguồn hay tái cấu trúc hệ thống Hệ thống SOA tuân thủ bốn nguyên tắc chính.
Sự phân định rạch ròi giữa các dịch vụ được thực hiện thông qua thành phần giao tiếp, quy định định dạng và thông điệp được chấp nhận trong quá trình trao đổi Điều này cho phép các đối tượng bên ngoài truy cập thông tin và chức năng của dịch vụ một cách dễ dàng, chỉ cần gửi thông điệp theo định dạng đã được định nghĩa mà không cần quan tâm đến cách xử lý của dịch vụ Sự tách biệt giữa thành phần giao tiếp và thành phần xử lý trong kiến trúc dịch vụ là yếu tố then chốt để đạt được điều này.
Tính tự trị của các dịch vụ là yếu tố quan trọng, yêu cầu chúng hoạt động như những thực thể độc lập, không phụ thuộc vào dịch vụ khác Để đảm bảo tính bền vững cao, dịch vụ cần phải được thiết kế sao cho không bị sụp đổ khi xảy ra sự cố.
Các dịch vụ chia sẻ lược đồ cần cung cấp các thành phần giao tiếp ra bên ngoài, hỗ trợ chia sẻ cấu trúc thông tin và ràng buộc dữ liệu thông qua các lược đồ dữ liệu chuẩn, đảm bảo tính độc lập ngôn ngữ và hệ nền Điều này giúp hệ thống trở nên liên kết và dễ dàng mở rộng.
Tính tương thích của hệ thống dịch vụ phụ thuộc vào việc các dịch vụ phải đáp ứng các chính sách và yêu cầu như mã hóa và bảo mật Để đảm bảo sự tương tác hiệu quả giữa các dịch vụ, mỗi dịch vụ cần công khai các yêu cầu và chính sách của mình.
Kiến trúc hướng dịch vụ (SOA) phân chia các chức năng của hệ thống thành những dịch vụ độc lập, mỗi dịch vụ có thể được chia nhỏ hơn nữa Dịch vụ là yếu tố cốt lõi trong SOA, và tất cả các quy trình, chính sách, nguyên lý hay phương pháp trong SOA đều tập trung vào khái niệm dịch vụ Các công cụ trong SOA được thiết kế để tạo ra và triển khai dịch vụ, trong khi cơ sở hạ tầng thực thi cũng được tối ưu hóa cho việc quản lý và thực hiện các dịch vụ SOA giải quyết các vấn đề với cách tiếp cận lấy ứng dụng làm trung tâm, có thể tóm gọn qua các nguyên lý cơ bản.
Ứng dụng cần mở ra khả năng cho phép các ứng dụng mới và hiện có có thể sử dụng hiệu quả Đồng thời, nó cũng phải có khả năng kết nối với các dịch vụ khác để nâng cao tính năng và trải nghiệm người dùng.
Mô hình cơ bản của SOA được trình bày trong Hình 2.1, cho phép các ứng dụng khác nhau kết hợp lại để tạo ra các dịch vụ cao cấp hơn, được gọi là ứng dụng tổ hợp.
- Sự khác biệt về công nghệ không thành vấn đề và khả năng tương tác trở thành mục tiêu then chốt
Các chuẩn mở cần được phê duyệt để tạo điều kiện cho việc tích hợp giữa các doanh nghiệp Sự phối hợp trong quy trình nghiệp vụ giữa nhiều nhà cung cấp, đối tác và cả khách hàng là rất quan trọng.
Cần chú trọng quản lý và đảm bảo khả năng quản trị của hệ thống để duy trì tính linh hoạt, tránh xáo trộn và xung đột giữa ba nguyên tắc cơ bản.
SOA nhấn mạnh việc giảm thiểu rào cản truyền thống để tăng khả năng tái sử dụng ứng dụng, từ đó giải quyết vấn đề tích hợp và bảo trì hệ thống phần mềm, một thách thức lớn cho các nhà phát triển công nghệ thông tin hiện nay Hiểu rõ các tính chất cơ bản của hệ thống SOA là rất quan trọng để xây dựng và đánh giá hiệu quả hoạt động của nó.
The basic W3C Web Services, which include SOAP, WSDL, and UDDI, are complemented by the OGC Web Services, consisting of 16 essential specifications recognized as open standards for information exchange among various Geographic Information Systems (GIS).
1 Catalog Interface (CAT) Định nghĩa các giao diện chuẩn có khả năng hỗ trợ các ứng dụng thiết lập các chức năng truy vấn, liệt kê và khám phá đối với các máy chủ lưu trữ các catalog gốc và không thuần nhất, phân tán
2 Coordinate Transformation Services (CT) Cung cấp các giao diện cho việc chuyển đổi tọa độ, hệ quy chiếu và vị trí
3 Filter Encoding (Filter) Tài liệu này định nghĩa việc mã hóa dưới dạng XML cho các biểu thức lọc (truy vấn) dữ liệu
Công nghệ mã nguồn mở dựng để xây dựng WebGIS
PostgreSQL là một hệ quản trị cơ sở dữ liệu mã nguồn mở và hướng đối tượng, hỗ trợ nhiều hệ điều hành khác nhau như Linux, UNIX (bao gồm AIX, BSD, HP-UX, SGI IRIX) và Mac.
PostgreSQL là một hệ quản trị cơ sở dữ liệu mạnh mẽ, hỗ trợ nhiều hệ điều hành như OS X, Solaris, Tru64 và Windows Nó sở hữu các tính năng nâng cao như kiểm soát truy cập đồng thời với nhiều phiên bản (MVCC), khôi phục dữ liệu theo thời điểm, quản lý dung lượng bảng, sao chép không đồng bộ, và giao dịch lồng nhau Ngoài ra, PostgreSQL cho phép sao lưu trực tuyến và nội bộ, thực hiện các truy vấn phức tạp, tối ưu hóa hiệu suất, và cung cấp các công cụ quản lý và gỡ lỗi Hệ thống này cũng hỗ trợ bộ ký tự quốc tế, bảng mã nhiều byte và Unicode, cho phép định dạng và phân loại ký tự văn bản một cách linh hoạt Đặc biệt, PostgreSQL nổi bật với khả năng mở rộng, giúp nâng cao khả năng quản lý dữ liệu và hỗ trợ nhiều người dùng truy cập đồng thời.
2.3.1.1 Các công cụ quản trị PostgreSQL
Công cụ dòng lệnh psql là một trong những công cụ phổ biến nhất trong PostgreSQL, cho phép người dùng kết nối với cơ sở dữ liệu, thực hiện các truy vấn và quản lý cơ sở dữ liệu một cách hiệu quả.
pgAdmin III là một công cụ đồ họa mạnh mẽ và miễn phí dành cho việc quản trị cơ sở dữ liệu trong PostgreSQL Nó cung cấp nhiều tính năng hữu ích như tạo, xóa, sao chép và phục hồi cơ sở dữ liệu hoặc bảng Người dùng có thể dễ dàng xem và cập nhật dữ liệu trong các bảng thông qua giao diện thân thiện của pgAdmin III.
- PostGIS là một module mở rộng bổ sung vào PostgreSQL hỗ trợ quản lý dữ liệu không gian
- PostGIS hỗ trợ lưu trữ dữ liệu không gian, các hàm phân tích không gian như:
Mapbuilder là một ứng dụng mã nguồn mở được thiết kế để triển khai Web Map Client, cho phép kết nối với server thông qua chuẩn OpenGIS Ứng dụng này sử dụng JavaScript và XLS để hiển thị dữ liệu bản đồ trực tiếp trên trình duyệt web.
Mapbuilder bao gồm các thành phần sau:
- MapBuilder - Lib: Là một thƣ viện nguồn mở của các widgets bản đồ trên trình duyệt (browser based mapping widgets)
OpenLayer offers a unified interface for various mapping information layers, including Google, Yahoo, MSN, and WMS It is utilized by several map rendering widgets to enhance user experience and functionality.
Sarissa is an ECMAScript library that serves as a wrapper for native XML APIs This library includes classes for encapsulating XML documents, loading XML data from URLs or strings, transforming it using XSLT, and performing queries based on XPath.
- Overlib: Là một thƣ viện JavaScript cung cấp các popup nhỏ giống nhƣ tooltips
- Walter Zorn’s JS Graphics: Thƣ viện JavaScript VectorGraphics cung cấp khả năng đồ họa cho JavaScript
- Scalebar: Công cụ cung cấp thanh tỉ lệ (calebar tool)
Single file compression involves using functions to compress an entire library into a single file, MapbuilderCompressed.js, which enhances the loading speed of JavaScript to the browser and accelerates the browser's JavaScript compilation The primary goal of Mapbuilder is to optimize performance.
- Client là trình duyệt web
- Sử dụng Javascript, XML và XLS
- Thiết kế theo mô hình mobule
Mapbuilder là một công cụ phát triển cộng đồng được thiết kế theo mô hình Model-View-Control (MVC) Khác với các hệ quản trị nội dung truyền thống, Mapbuilder lưu trữ tất cả các mô hình ngay trên trình duyệt web, giúp giảm thiểu tương tác với server.
Mô hình được coi là thông tin của ứng dụng, thường là một tài liệu XML nhận từ server qua một file có định dạng cố định từ một URL Các mô hình cung cấp các phương thức "get" và "set" để cập nhật thông tin và trạng thái của mô hình.
View là phần hiển thị thông tin trong mỗi mô hình Nó có khả năng tự đăng ký với mô hình như một thông báo, thể hiện cách thức hoạt động hiệu quả trong việc cập nhật và hiển thị dữ liệu.
"Listener" là phương pháp để triệu gọi các sự kiện khác nhau View cho phép người dùng gửi yêu cầu đến quản trị viên, trong khi đó, trong Mapbuilder, view thực hiện việc gọi đến các widgets.
Controller thực hiện việc biên dịch các yêu cầu từ view thông qua các action của model Nó có khả năng sửa đổi và quản lý trạng thái của một model Trong Mapbuilder, Controller sẽ gọi đến các công cụ cần thiết.
Cách ngăn cách giữa model và view cho phép nhiều view sử dụng chung một model, tạo điều kiện thuận lợi cho việc mở rộng ứng dụng.
MapBuilder cho phép gọi và lưu trữ nhiều mô hình khác nhau trong cùng một ứng dụng web Các mô hình này thực hiện các chức năng khác nhau, với khả năng chứa một mảng các mô hình con trong các nút của chúng.
XÂY DỰNG DỊCH VỤ WEBGIS ỨNG DỤNG PHÂN TÍCH SỒ LIỆU THỐNG KÊ THÀNH PHỐ ĐỒNG HỚI TỈNH QUẢNG BÌNH
Phân tích
Trong thời đại hiện nay, số liệu thống kê kinh tế - xã hội đóng vai trò quan trọng trong việc hoạch định chính sách và phục vụ nhu cầu của nhà đầu tư, công ty sản xuất và người dân Mỗi lĩnh vực khác nhau yêu cầu các loại số liệu và thông tin riêng biệt, vì vậy việc quản lý số liệu thống kê để cung cấp thông tin chính xác và nhanh chóng là rất cần thiết Cần có một hệ thống lưu trữ hiệu quả và phần mềm hỗ trợ phù hợp để tập hợp các số liệu thành một hệ thống thống nhất Hiện tại, số liệu thường được cung cấp dưới dạng bảng biểu cố định mà chưa khai thác đầy đủ khía cạnh không gian của dữ liệu Việc kết hợp dữ liệu thuộc tính và dữ liệu không gian sẽ nâng cao khả năng thống kê và cải thiện chất lượng thông tin.
Trong quá trình khảo sát các trang web thông tin về thành phố Đồng Hới, tỉnh Quảng Bình, tôi nhận thấy rằng chưa có trang nào cung cấp số liệu thống kê kinh tế - xã hội qua hệ thống thông tin địa lý GIS, mặc dù nhu cầu về thông tin này đang ngày càng tăng cao từ cả cá nhân lẫn tổ chức Do đó, tôi quyết định phát triển một ứng dụng thống kê kinh tế - xã hội cho thành phố Đồng Hới nhằm đáp ứng nhu cầu này.
3.1.2 Phân tích hệ thống và định hướng công nghệ
Cùng với sự phát triển của công nghệ thông tin, công nghệ GIS đã có những bước tiến dài trên toàn cầu Dữ liệu GIS ngày càng được các cơ quan, tổ chức và cá nhân quan tâm thu thập, lưu trữ và xây dựng thành các hệ thống GIS Trong tương lai, dữ liệu sẽ được chia sẻ dưới dạng dịch vụ cung cấp bản đồ và dữ liệu, cho phép người dùng kết nối đến các máy chủ để tìm hiểu thông tin cần thiết Việc xây dựng ứng dụng công nghệ GIS trên nền Web sẽ phục vụ nhu cầu tìm kiếm thông tin thống kê, tích hợp các nguồn dữ liệu Hệ thống sẽ giả lập máy chủ cung cấp dữ liệu dưới định dạng thống nhất GML (WFS) và phát triển ứng dụng truy cập, tích hợp dữ liệu từ máy chủ này nhằm tạo ra thông tin thống kê cho người dùng.
Trong phạm vi của đề tài này ứng dụng được xây dựng theo các bước sau:
Bước 1:Tạo dữ liệu bản đồ
- Lấy dữ liệu từ nhiều nguồn khác nhau( Từ niên giám thống kê, từ trang web của thành phố Đồng Hới)
- Chỉnh sửa bản đồ bằng các công cụ ARC GIS
Bước 2:Cài đặt và sử dụng PostgresSQL+PostGIS
- Cài đặt và sử dụng PostgresSQL
- Cài đặt Plugin PostGIS và sử dụng nó để lấy dữ liệu vào PostgresSQL từ dữ liệu bản đồ
- Tạo database bản đồ trong PostgresSQL+Kết nối lấy dữ liệu vào bảng từ dữ liệu bản đồ
Bước 3:Tạo Stype cho bản đồ bằng công cụ uDig
- Tải uDig và cài đặt
- Sử dụng uDig để tạo stype cho bản đồ
Bước 4:Cài đặt và sử dụng Geoserver
- Tạo Stores(Kết nối đến PostgresSQL)
- Tạo Styles(Import từ file XML đã tạo bằng công cụ uDig)
- Xem trước bản đồ bằng Layer Preview
Bước 5:Xây dựng website bằng ASP.NET
- Bố trí vùng để đặt bản đồ trong website
Bước 6: Sử dụng thư viện Openlayers
- Đẩy bản đồ đã xây dựng lên trang web bằng thƣ viện Openlayers
Mô hình hệ thống
Hệ thống sử dụng phương pháp thống kê và phân tích để thu thập thông tin kinh tế - xã hội, từ đó xây dựng dữ liệu cho các lớp bản đồ chứa thông tin không gian và thuộc tính Dữ liệu không gian bao gồm ranh giới hành chính của các xã, phường tại thành phố Đồng Hới, trong khi dữ liệu thuộc tính được lấy từ niên giám thống kê và trang web chính thức của thành phố Đồng Hới, tỉnh Quảng Bình.
Quá trình nghiên cứu và xây dựng hệ thống được thực hiện như sơ đồ dưới đây:
Thiết kế
WebGIS thống kê kinh tế - xã hội được thiết kế dành cho người dùng thông thường, không cần kiến thức chuyên sâu về GIS Hệ thống này được phát triển dựa trên kiến trúc Client - Server, giúp người dùng dễ dàng truy cập và sử dụng thông tin.
Hệ thống thiết kế với 3 tầng khác nhau nhƣ sau:
Tầng trình bày được xây dựng bằng JavaScript, HTML và DHTML, có nhiệm vụ xử lý các thao tác và lưu trữ thông tin cho từng người dùng Tầng này đóng vai trò trung gian, truyền nhận dữ liệu giữa người sử dụng và web server.
- Tầng ứng dụng : chia làm 2 thành phần : Mapbuilder và GeoServer Cả 2 đều đƣợc phát triển dựa trên công nghệ Java
Mapbuilder đóng vai trò trung gian giữa client và GeoServer, đảm nhận việc phát sinh giao diện và các đoạn script để tương tác với client Nó gửi yêu cầu từ client tới GeoServer và nhận dữ liệu trả về để chuyển ngược lại cho client.
Hghhg Phân tích, thiết kế CSDL Thu thập dữ liệu
Xây dựng CSDL Thiết kế trang Web
Hình 3.1 Sơ đồ hệ thống
GeoServer là một công cụ quan trọng trong việc xử lý các thao tác liên quan đến bản đồ như phóng to, thu nhỏ, di chuyển và tra cứu thông tin Nó hoạt động như một cầu nối giữa Mapbuilder và cơ sở dữ liệu, nhận yêu cầu từ Mapbuilder, truy xuất thông tin từ cơ sở dữ liệu, xử lý dữ liệu và gửi kết quả trở lại Mapbuilder.
- Tầng cơ sở dữ liệu : đóng vai trò trung gian giữa tầng ứng dụng với cơ sở dữ liệu
3.4.2 Thiết kế chức năng 3.4.2.1 Sơ đồ chức năng chính
Hình 3.2: Sơ đồ các chức năng chính
3.4.2.2 Mô tả chức năng 3.4.2.2.1 Quản trị
Chức năng đăng nhập cho phép người dùng truy cập vào hệ thống, tuy nhiên chỉ những người quản trị được cấp quyền mới có thể thực hiện việc này và xử lý dữ liệu Để tiến hành đăng nhập, người dùng cần cung cấp tên đăng nhập và mật khẩu của mình.
Quản lý và cập nhật dữ liệu là chức năng quan trọng mà người quản trị sử dụng sau khi đăng nhập vào website Chức năng này cho phép người dùng xem danh sách các đối tượng trong một lớp, đồng thời thực hiện các thao tác như thêm, xóa, sửa và cập nhật thông tin của các đối tượng đó.
(1.2) Quản lý và cập nhật dữ liệu
Tìm kiếm theo tiêu chí nhập vào
Hiển thị không gian kết quả
(2.1) Các công cụ tương tác với bản đồ:
(2.1.1) Phóng to: Phóng to bản đồ theo phạm vi hình chữ nhật do người dùng vẽ trên bản đồ
(2.1.2) Thu nhỏ: Thu nhỏ bản đồ theo phạm vi hình chữ nhật do người dùng vẽ trên bản đồ
Dịch chuyển bản đồ theo các hướng như đông, tây, nam, bắc, đông bắc, tây bắc, đông nam và tây nam Để xem thông tin chi tiết về một đối tượng trên bản đồ, người dùng cần chọn lớp và đối tượng mong muốn.
Tìm kiếm theo tiêu chí nhập vào cho phép người dùng lựa chọn lớp và nhập các tiêu chí cần tìm để tìm kiếm đối tượng Kết quả sẽ trả về danh sách được mô tả sơ lược, đồng thời người dùng có thể chọn xem chi tiết từng đối tượng trong danh sách kết quả.
(2.2.2) Hiển thị không gian kết quả tìm: Cho phép người dùng xem vị trí không gian của kết quả tìm trên bản đồ
3.4.3 Thiết kế giao diện 3.4.3.1 Giao diện quản trị
Hình 3.3: Sơ đồ web dành cho người quản trị Đăng nhập
Sơ đồ web người dùng
Thông tin về các xã, phường trong thành phố
Tìm kiếm Ảnh Liên kết web
Bottom Bản đồ tỉnh Lai Châu
Trang chủ Bản đồ Giới thiệu Hướng dẫn
Hình ảnh Hỏi đáp Liên hệ
Hình 3.4: Sơ đồ web dành cho người dùng
Hình 3.5: Giao diện trang chủ
Trang chủ Bản đồ các xã, phường
Chú giải Liên kết web
Xây dựng hệ thống
Hệ thống cung cấp thông tin về thống kê kinh tế - xã hội của các xã, phường tại thành phố Đồng Hới, cho phép người dùng truy cập bản đồ toàn thành phố sau khi đăng nhập Người sử dụng có thể lựa chọn và xem các dữ liệu kinh tế - xã hội như sản lượng nông nghiệp và số lượng học sinh của từng xã, phường theo từng năm Đồng thời, người quản trị có khả năng thêm mới, chỉnh sửa hoặc xóa các đối tượng trong hệ thống.
Hình 3.6: Giao diện bản đồ
3.5.1 Cài đặt và sử dụng PostgresSQL+PostGIS 3.5.1.1 Cài đặt hệ quản tr ị cơ sở dữ liệu PostgreSQL
Người dùng chạy file “postgresql-8.4.6-1-windows.exe” (được tải tại trang web: http://www.postgresql.org/) để tiến hành cài đặt
Tiếp theo người dùng chạy file “postgis_1_5_pg84.exe” để cài đặt extension PostGIS
(tải tại trang web: http://postgis.refractions.net/)
After installing PostgreSQL 8.4 and the PostGIS extension, a PostGIS database template named template_postgis is created, which includes pre-configured tables and functions to effectively manage spatial data.
Hình 3.7 Sơ đồ tổ chức trang Web
Trang chủ Bản đồ Giới thiệu Hướng dẫn
Xem tin tức, sự kiện
Hình ảnh Hỏi đáp Liên hệ
Sau đó chọn biểu tƣợng pgAdmin III để khởi động PostgreSQL và tạo cơ sở dữ liệu cho ứng dụng
Nhấn phải chuột tại “Database”, chọn New Databases để tạo một cơ sở dữ liệu hoàn toàn mới hỗ trợ lưu cơ sở dữ liệu không gian
Hình 3.8 Cấu trúc template_postgis
Để tạo cơ sở dữ liệu mới trong pgAdmin III của PostgreSQL, hãy đặt tên cho cơ sở dữ liệu, ví dụ như QLCX, chọn Postgres làm chủ sở hữu và template_postgis làm mẫu Các tùy chọn còn lại có thể để mặc định.
OK để tạo cơ sở dữ liệu
Hình 3.11 Cấu trúc tạo Database
Sau khi tạo cơ sở dữ liệu QLCX, nhấn phải chuột trên Database và chọn Restore…
Chọn file qlcx.backup đã tạo sẵn Nhấn OK
Sau khi restore thành công, các bảng đƣợc tạo trong mục Tables
Hình 3.12 Restore Database vào CSLD
Hình 3.13 Cấu trúc bảng trong CSDL
3.5.1.1 Import shapefile vào PostgreSQL/PostGIS – Kết nối gvSIG với CSDL
When installing PostgreSQL, it is essential to select extensions such as PostGIS for spatial data support, PgAdmin III for a graphical interface, and psql for command line access Following the installation, the PostGIS extension creates a PostGIS database template named template_postgis, which includes pre-defined tables and functions to facilitate spatial data management.
To create a new spatial database in PostgreSQL using pgAdmin III, log in and select "New database." Name the database "qlcx," keep the default owner as Postgres, and choose the template "template_postgis."
Hình 3.14 Cấu trúc template_postgis
Hình 3.15 Tạo mới GIS database trên cơ sở template_postgis
Chọn CSDL “qlcx” vừa mới tạo, vào menu Plugins chọn PostGIS Shapefile and DBF loader để Import shapefile vào CSDL “qlcx”
Xuất hiện cửa sổ Shape File to PostGIS Importer, chọn shapefile và Import vào
Hình 3.16 Menu Plugins trong PostgreSQL
Hình 3.17 Cửa sổ Shape File to PostGIS Importer
Kết quả là table “cayxanh” và import đầy đủ các records của shapefile cayxanh.shp
3.5.1.2 Đƣa CSDL trong postgreSQL lên GeoServer và tạo kiểu hiển thị (style) cho các lớp dữ liệu
Để tạo không gian lưu trữ dữ liệu từ Databases donghoi trong PostgreSQL, trong giao diện của GeoServer, bạn vào mục Data, chọn Workspaces và nhấn vào Add new workspaces Sau đó, một hộp thoại sẽ xuất hiện để bạn thực hiện các bước tiếp theo.
Hình 3.18 Dữ liệu bảng cây xanh trong pgAdmin III
Hình 3.19 Hộp thoại tạo Workspace
Nhập tên Workspaces vào mục Name là donghoi và chọn Submit
To create a store that retrieves data from PostgreSQL within the donghoi Workspaces, navigate to the Data section in the GeoServer interface, select Stores, and then click on Add new store to open the dialog box.
Chọn PostGIS – PostGIS Database xuất hiện hộp thoại:
Hình 3.20 Hộp thoại tạo Store
Hình 3.21 Hộp thoại thông tin về kho dữ liệu
Chọn Workspaces là donghoi (tên của Workspaces trong GeoServer) và schema là donghoi (tên của Databases trong postgreSQL)
To create data layers from the donghoi data store in GeoServer, navigate to the Data section in the interface, select Layers, and then click on Add a new resource Next, choose donghoi:donghoi, which represents the name of the Workspaces and Store, and a dialog box will appear.
Hình 3.20 Hộp thoại tạo các lớp dữ liệu
Hình 3.22 Hộp thoại chon hệ tọa độ trong GeoServer
Chọn hệ tọa độ trùng với shapefile và SRID 4326 trong PostgreSQL, tương ứng với WGS 1984 Nhấn Compute from data và Compute from native bounds để xác định khung giới hạn khu vực nghiên cứu Cuối cùng, chọn Save để lưu lớp dữ liệu.
Tạo kiểu hiển thị (style) cho các lớp dữ liệu (layers) bằng thƣ viện mã nguồn mở (URL: www.docs.geoserver.org/stable/en/user/styling/index.html)
Trong thư viện, có nhiều kiểu hiển thị tương ứng với các loại dữ liệu như điểm, đường và vùng Mỗi kiểu hiển thị này đi kèm với một đoạn mã tương ứng được lưu trữ trong file định dạng sld.
Shapefile hành chính phường có kiểu dữ liệu vùng (polygon) ta có code tạo kiểu hiển thị (style) nhƣ sau:
Hình 3.23 Code tạo kiểu hiển thị
Tạo style mới (hcphuong) trong GeoServer, copy code qua style hcphuong
Hình 3.24 Code tạo kiểu hiển thị hành chính phường Đƣa style hcphuong vào layer hcphuong
Hình 3.25 Hộp thoại chọn kiểu hiển thị (style) cho lớp bản đồ (layer)
Vào Layer Preview để kiểm tra lớp dữ liệu (layer) đã có kiểu hiển thị (style)
Sau đó ta sử dụng thƣ viện Openlayers để gắn bản đồ lên web
Hình 3.26 Lớp bản đồ hành chính phường được chọn kiểu hiển thị
Cài đặt và thử nghiệm
Chương trình được cài đặt trên máy có cấu hình Intel® Core(TM) i3 CPU M380@ 2.53GHz (2 CPUs), RAM 2GB
Máy đƣợc cài đặt Mapbuilder, GeoServer, PostgreSQL và Apache Tomcat Kết quả thử nghiệm nhƣ sau:
STT Tính năng Đánh giá
Hiển thị trang web bản đồ Hiển thi ̣ châ ̣m trong lần đầu tiên , các lần sau tương đối nhanh
Các thao tác phóng to, thu nhỏ, xem 2 toàn phần Thực hiện nhanh
Các thao tác dịch chuyển theo các 3 hướng
Thƣ̣c hiê ̣n nhanh Tuy nhiên, màn hình hơi bị giựt khi hiển thị
4 Tìm kiếm thông tin thuộc tính Thực hiện nhanh
5 Xem đối tƣợng trên bản đồ
Thƣ̣c hiê ̣n tốt Tuy nhiên, cần phóng to đến vị trí đối tƣợng khi người dùng kích cho ̣n.