1. Trang chủ
  2. » Luận Văn - Báo Cáo

Nghiên cứu xây dựng ứng dụng gis bằng phần mềm mã nguồn mở áp dụng xây dựng ứng dụng quản lý vi phạm trật tự xây dựng tại p hiệp bình phước q thủ đức tp hồ chí minh

123 53 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 123
Dung lượng 5,76 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Nội dung chính của đề tài là nghiên cứu các công cụ mã nguồn mở phục vụ xây dựng ứng dụng GIS; trên cơ sở đó áp dụng xây dựng ứng dụng quản lý vi phạm trật tự xây dựng tại P.Hiệp Bình Ph

Trang 1

ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH

TRƯỜNG ĐẠI HỌC BÁCH KHOA

Trang 2

CÔNG TRÌNH ĐƯỢC HOÀN THÀNH TẠI TRƯỜNG ĐẠI HỌC BÁCH KHOA ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINH

Cán bộ hướng dẫn khoa học : TS TRẦN TRỌNG ĐỨC

Cán bộ chấm nhận xét 1 :

Cán bộ chấm nhận xét 2 :

Luận văn thạc sĩ được bảo vệ tại:

HỘI ĐỒNG CHẤM BẢO VỆ LUẬN VĂN THẠC SĨ

TRƯỜNG ĐẠI HỌC BÁCH KHOA, ngày 28 tháng 08 năm 2008

Trang 3

ĐẠI HỌC QUỐC GIA TP HCM CỘNG HOÀ XÃ HỘI CHỦ NGHIÃ VIỆT NAM

Tp HCM, ngày tháng năm

NHIỆM VỤ LUẬN VĂN THẠC SĨ

Chuyên ngành : Bản đồ, viễn thám và hệ thống thông tin địa lý

Khoá (Năm trúng tuyển) : 2006

1- TÊN ĐỀ TÀI: Nghiên cứu xây dựng ứng dụng GIS bằng phần mềm mã nguồn mở Áp dụng xây dựng ứng dụng quản lý vi phạm trật tự xây dựng tại P.Hiệp Bình Phước - Q.Thủ Đức - Tp.Hồ Chí Minh.

2- NHIỆM VỤ LUẬN VĂN:

- Khảo sát các công cụ mã nguồn mở phục vụ xây dựng ứng dụng GIS

- Lựa chọn công cụ mã nguồn mở thích hợp phục vụ cho thiết kế và xây dựng ứng dụng quản lý vi phạm trật tự xây dựng tại P.Hiệp Bình Phước - Q.Thủ Đức - Tp.Hồ Chí Minh

3- NGÀY GIAO NHIỆM VỤ : 21/01/2008

4- NGÀY HOÀN THÀNH NHIỆM VỤ : 30/06/2008

Trang 4

LỜI CẢM ƠN

Tôi xin gửi lời cảm ơn chân thành đến:

- TS.Trần Trọng Đức, người đã trực tiếp hướng dẫn, góp ý cho tôi rất nhiều trong suốt quá trình học, thực hiện chuyên đề nghiên cứu 1, chuyên đề nghiên cứu 2 và thực hiện luận văn

- Tập thể quý thầy cô giảng dạy lớp cao học GIS 2006 đã trang bị cho tôi nền tảng kiến thức và phương pháp khoa học để tôi có thể nghiên cứu thực hiện luận văn

- UBND, Tổ quản lý vi phạm trật tự xây dựng P.Hiệp Bình Phước, Q.Thủ Đức, Tp.Hồ Chính Minh đã tạo điều kiện, phối hợp và hỗ trợ cho tôi trong quá trình phát triển ứng dụng

- Cộng đồng mã nguồn mở nói chung và cộng đồng MapWindow nói riêng đã

hỗ trợ kỹ thuật cho tôi trong quá trình phát triển ứng dụng

- Các người thân trong gia đình, bạn bè đã giúp đỡ, khuyến khích và động viên tôi trong suốt quá trình học tập, nghiên cứu và thực hiện luận văn

Trang 5

TÓM TẮT LUẬN VĂN THẠC SĨ

Phần mềm mã nguồn mở nói chung và phần mềm GIS mã nguồn mở nói riêng ngày càng được quan tâm nghiên cứu phát triển và ứng dụng bởi các lợi ích mà nó mang lại Điều này đặc biệt có ý nghĩa đối với các nước đang phát triển như Việt Nam Hơn nữa, khi Việt Nam gia nhập WTO thì vấn đề sở hữu trí tuệ và bản quyền phần mềm ngày càng được chú trọng Trong khi đó, nhu cầu tin học hoá nhằm nâng cao hiệu quả công tác quản lý hành chính nhà nước với sự hỗ trợ của GIS luôn là mối quan tâm thường trực

Nội dung chính của đề tài là nghiên cứu các công cụ mã nguồn mở phục vụ xây dựng ứng dụng GIS; trên cơ sở đó áp dụng xây dựng ứng dụng quản lý vi phạm trật

tự xây dựng tại P.Hiệp Bình Phước - Q.Thủ Đức - Tp.Hồ Chí Minh

Kết quả của đề tài đã khảo sát các công cụ mã nguồn mở hiện hữu phục vụ xây dựng ứng dụng GIS, nghiên cứu chi tiết phần mềm mã nguồn mở MapWindow và

sử dụng MapWindow ActiveX control, hệ quản trị CSDL mã nguồn mở Firebird cho phát triển ứng dụng desktop GIS trên nền hệ điều hành Microsoft Windows

Trang 6

Abstract

The Open Source Software in general and Geo Open Source Software in particular are more and more being researched and developed due to their benefits Moreover, because that Vietnam has joined the WTO, so the problems of intellectual property, software copyright,…are consider more seriously Meanwhile, the needs for computerizing with the supporting of GIS to enhance the effect of the administrative management tasks are growing day by day

For those reasons, the main objects of this thesis are:

the Urban Management Department of the People’s Committee of Hiep Binh Phuoc Ward, Thu Duc District, Ho Chi Minh City base on MapWindow ActiveX control and Firebird DBMS

Trang 7

MỤC LỤC

MỤC LỤC 6

Danh sách các hình ảnh 10

Danh sách các bảng biểu 12

Một số khái niệm và thuật ngữ 12

PHẦN 1: GIỚI THIỆU 13

GIỚI THIỆU 14

I ĐẶT VẤN ĐỀ 14

II MỤC TIÊU NGHIÊN CỨU 15

III NỘI DUNG THỰC HIỆN 15

1 Nội dung 1 15

2 Nội dung 2 15

3 Nội dung 3 16

4 Nội dung 4 16

IV SẢN PHẨM CỦA ĐỀ TÀI 16

V PHƯƠNG PHÁP NGHIÊN CỨU 17

VI GIỚI HẠN, PHẠM VI NGHIÊN CỨU 17

1 Về công nghệ 17

2 Về vị trí địa lý 17

VII.CẤU TRÚC LUẬN VĂN 18

PHẦN 2: CƠ SỞ LÝ THUYẾT 19

CHƯƠNG I: CÁC CÔNG CỤ MÃ NGUỒN MỞ PHỤC VỤ XÂY DỰNG ỨNG DỤNG GIS 20

I.1 MỘT SỐ KHÁI NIỆM 20

I.1.1 Phần mềm tự do (Free Software) 20

I.1.2 Phần mềm mã nguồn mở (Open Source Software - OSS) 21

I.1.3 Phần mềm mã nguồn mở - tự do (FOSS) 23

I.1.4 Hệ thống giấy phép cho FOSS 23

I.1.5 Phần mềm GIS mã nguồn mở - GEOFOSS 23

I.1.6 Chuẩn mở cho GIS - OpenGIS 24

I.2 CÁC PHẦN MỀM GIS MÃ NGUỒN MỞ 26

I.2.1 Nhánh C 26

I.2.2 Nhánh Java 29

Trang 8

I.2.3 Nhánh Net 31

I.2.4 Nhánh Web 32

I.3 CÁC HỆ QUẢN TRỊ CSDL MÃ NGUỒN MỞ 34

I.3.1 GIỚI THIỆU CHUNG 34

I.3.2 Firebird 34

I.3.3 Ingres 35

I.3.4 MySQL 35

I.3.5 MaxDB 35

I.3.6 PostgreSQL 36

I.3.7 MỘT SỐ ĐẶC ĐIỂM CỦA CÁC DBMS MÃ NGUỒN MỞ 37

I.4 MỘT SỐ ỨNG DỤNG GIS TRÊN NỀN TẢNG MÃ NGUỒN MỞ 40

I.4.1 Ngoài nước 40

I.4.2 Trong nước 40

PHẦN 3: PHÁT TRIỂN ỨNG DỤNG 42

CHƯƠNG II: KHẢO SÁT HIỆN TRẠNG VÀ NHU CẦU QUẢN LÝ 43

II.1 KHẢO SÁT HIỆN TRẠNG 43

II.1.1 Phần cứng 43

II.1.2 Phần mềm 43

II.1.3 Dữ liệu 43

II.1.3.1 Dữ liệu thuộc tính 43

II.1.3.2 Dữ liệu không gian 44

II.1.4 Tổ chức 44

II.1.5 Quy trình 44

II.2 PHÂN TÍCH NHU CẦU 49

CHƯƠNG III: LỰA CHỌN CÔNG CỤ XÂY DỰNG ỨNG DỤNG 51

III.1LỰA CHỌN CÔNG CỤ HIỂN THỊ, XỬ LÝ DỮ LIỆU KHÔNG GIAN 51

III.1.1 Tiêu chí lựa chọn 51

III.1.2 Kết quả lựa chọn 52

III.1.3 Giới thiệu MapWindow 52

III.1.3.1 Giới thiệu chung 52

III.1.3.2 Các thành phần của MapWindow 54

III.2LỰA CHỌN CÔNG CỤ QUẢN LÝ DỮ LIỆU 58

III.2.1 Các phương án quản lý dữ liệu 58

Trang 9

III.2.2 Thử nghiệm phương án 1 58

III.2.2.1 Import shapefile vào PostgreSQL/ PostGIS 59

III.2.2.2 Truy xuất dữ liệu không gian từ PostgreSQL/ PostGIS bằng MapWindow Application 63

III.2.2.3 Nhận xét 64

III.2.3 Thử nghiệm phương án 2 65

III.2.3.1 Tiến hành thử nghiệm 65

III.2.3.2 Nhận xét 66

III.2.4 Phân tích các phương án 67

III.2.5 Lựa chọn phương án 68

III.3KẾT LUẬN 68

CHƯƠNG IV: THIẾT KẾ VÀ XÂY DỰNG ỨNG DỤNG 70

IV.1THIẾT KẾ MÔ HÌNH HỆ THỐNG 70

IV.2THIẾT KẾ CSDL 70

IV.2.1 Mô hình dữ liệu mức ý niệm 72

IV.2.2 Mô hình dữ liệu mức vật lý 77

IV.2.3 Ánh xạ xuống DBMS Firebird 78

IV.3CÁC CHỨC NĂNG CỦA ỨNG DỤNG 87

IV.3.1 Nhóm chức năng hệ thống 88

IV.3.1.1 Cấu hình cơ sở dữ liệu: 88

IV.3.1.2 Đăng nhập ứng dụng 89

IV.3.1.3 Thay đổi mật khẩu 91

IV.3.1.4 Thiết lập mã văn bản 92

IV.3.1.5 Thiết lập giao diện ứng dụng: 94

IV.3.2 Nhóm chức năng danh mục 95

IV.3.3 Nhóm chức năng Bản đồ phường 97

IV.3.3.1 Chức năng tương tác bản đồ 98

IV.3.3.2 Chức năng xem thông tin thửa đất 101

IV.3.3.3 Chức năng Theo dõi lịch sử thửa đất 102

IV.3.3.4 Chức năng tìm kiếm thửa đất 103

IV.3.3.5 Chức năng tạo biên bản vi phạm 104

IV.3.4 Nhóm chức năng Quản lý vi phạm 106

IV.3.5 Nhóm chức năng Tình hình vi phạm 110

KẾT LUẬN VÀ KIẾN NGHỊ 113

I KẾT QUẢ ĐỀ TÀI 113

II Ý NGHĨA CỦA ĐỀ TÀI 113

1 Ý nghĩa khoa học 113

Trang 10

2 Ý nghĩa xã hội 113

III KIẾN NGHỊ NHỮNG NGHIÊN CỨU TIẾP THEO 114

PHẦN 3: TÀI LIỆU THAM KHẢO VÀ PHỤ LỤC 115

TÀI LIỆU THAM KHẢO 116

PHỤ LỤC 117

I PHỤ LỤC 1: HƯỚNG DẪN CÀI ĐẶT ỨNG DỤNG 117

II. PHỤ LỤC 2: CÁC LOẠI GIẤY PHÉP ĐƯỢC QUẢN LÝ BỞI OSI 120

Trang 11

Danh sách các hình ảnh

Hình I.1: Sơ đồ OSS nhánh C [10] 26

Hình I.2: Sơ đồ OSS nhánh Java [10] 29

Hình I.3: Sơ đồ OSS nhánh Net [10] 31

Hình I.4: Sơ đồ OSS nhánh Web [10] 32

Hình I.5: Quá trình phát triển các hệ quản trị CSDL [11] 34

Hình I.6: JVNWebGIS 40

Hình I.7: JVNMobileGIS 41

Hình I.8: Phần mềm mô phỏng địa hình 41

Hình II.1: Quy trình xử lý vi phạm trật tự xây dựng 45

Hình III.1: Giao diện MapWindow Application 53

Hình III.2: Mã nguồn MapWindow Application trong VS.NET 2005 56

Hình III.3: Mã nguồn Plug-in shapefile Editor trong VS.NET 2005 57

Hình III.4: Giao diện Plug-in shapefile Editor trong MapWindow Application 57

Hình III.5: Giao diện Plug-in Shape2Earth trong MapWindow Application 58

Hình III.6: Cấu trúc template_postgis 59

Hình III.7: Tạo mới GIS database trên cơ sở template_postgis 60

Hình III.8: Enable spatial cho NonGISDB - chưa hỗ trợ dữ liệu không gian 60

Hình III.9: Import shapefile vào PostgreSQL/ PostGIS bằng tiện ích shp2pgsql 61

Hình III.10: Import dữ liệu shapefile vào GisDB bằng cách thực thi script thua.sql 62

Hình III.11: Dữ liệu bảng thửa trong pgAdmin III 62

Hình III.12: Load dữ liệu không gian từ PostgreSQL/ PostGIS bằng MapWindow Application 63

Hình III.13: Nhập các thông số đăng nhập vào PostgreSQL/ PostGIS 63

Hình III.14: Chọn lớp dữ liệu không gian cần truy xuất 64

Hình III.15: Tình trạng lỗi font khi load dữ liệu không gian từ PostgreSQL/ PostGIS bằng MapWindow Application 65

Hình III.16: Thử nghiệm tương tác shapefile thửa - bảng dữ liệu thửa 66

Hình IV.1: Mô hình hệ thống 70

Hình IV.2: Mô hình dữ liệu mức ý niệm 72

Hình IV.3: Tạo mô hình dữ liệu mức vật lý từ mô hình dữ liệu mức ý niệm 76

Hình IV.4: Chọn DBMS khi tạo mô hình dữ liệu mức vật lý 76

Hình IV.5: Mô hình dữ liệu mức vật lý 77

Hình IV.6: Tạo script file định nghĩa CSDL từ mô hình dữ liệu mức vật lý 78

Trang 12

Hình IV.7: Chọn đường dẫn và đặt tên cho script file 78

Hình IV.8: Tạo CSDL trong IBExpert 79

Hình IV.9: Đăng ký CSDL trong IBExpert 79

Hình IV.10: Thực thi script file định nghĩa CSDL 80

Hình IV.11: Kết quả tạo CSDL 80

Hình IV.12: Sơ đồ chức năng ứng dụng 87

Hình IV.13: Sơ đồ giải thuật cấu hình CSDL 88

Hình IV.14: Giao diện cấu hình CSDL 88

Hình IV.15: Thông tin cấu hình CSDL được quản lý trong registry 89

Hình IV.16: Sơ đồ giải thuật đăng nhập ứng dụng 90

Hình IV.17: Giao diện đăng nhập ứng dụng 90

Hình IV.18: Thông tin về người dùng được lưu trữ trong registry 91

Hình IV.19: Sơ đồ giải thuật thay đổi mật khẩu 92

Hình IV.20: Giao diện thay đổi mật khẩu 92

Hình IV.21: Sơ đồ giải thuật thiết lập mã văn bản 93

Hình IV.22: Giao diện thiết lập mã văn bản 93

Hình IV.23: Sơ đồ giải thuật thiết lập giao diện ứng dụng 94

Hình IV.24: Giao diện thiết lập giao diện ứng dụng 94

Hình IV.25: Thông tin về giao diện được lưu trữ trong registry 95

Hình IV.26: Sơ đồ giải thuật nhóm chức năng danh mục 96

Hình IV.37: Giao diện danh mục khu phố 96

Hình IV.28: Giao diện danh mục Nơi cấp CMND 97

Hình IV.29: Giao diện danh mục loại biến động 97

Hình IV.30: Giao diện Bản đồ phường 98

Hình IV.31: Sơ đồ giải thuật tương tác bản đồ 99

Hình IV.32: Giao diện tương tác bản đồ 99

Hình IV.33: Sơ đồ giải thuật xem thông tin thửa đất 101

Hình IV.34: Giao diện xem thông tin thửa đất 101

Hình IV.35: Sơ đồ giải thuật theo dõi lịch thửa đất 102

Hình IV.36: Giao diện theo dõi lịch sử thửa đất 102

Hình IV.37: Sơ đồ giải thuật tìm kiếm thửa đất 103

Hình IV.38: Giao diện tìm kiếm thửa đất 104

Hình IV.39: Sơ đồ giải thuật tạo biên bản vi phạm tại thửa được chọn 105

Hình IV.40: Giao diện tạo biên bản vi phạm tại thửa được chọn 105

Hình IV.41: Tự động thêm mới biên bản vi phạm và zoom đến thửa được chọn 106

Hình IV.42: Sơ đồ Quản lý vi phạm 107

Trang 13

Hình IV.43: Giao diện Quản lý vi phạm 107

Hình IV.44: Sơ đồ giải thuật quản lý biên bản vi phạm 109

Hình IV.45: Giao diện chi tiết biên bản vi phạm 109

Hình IV.46: Giao diện thiết kế mẫu in tờ trình xử phạt 110

Hình IV.47: Sơ đồ giải thuật thống kê tình hình vi phạm 111

Hình IV.48: Giao diện thống kê tình hình vi phạm 111

Hình IV.49: Giao diện xem báo cáo thống kê tình hình vi phạm 112

Danh sách các bảng biểu Bảng I.1: Các OSS nhánh C 26

Bảng I.2: Các OSS nhánh Java 29

Bảng I.3: Các OSS nhánh Net 31

Bảng I.4: Các OSS nhánh Web 32

Bảng I.5: Một số đặc điểm của các DBMS mã nguồn mở 37

Bảng III.1: Phân tích các phương án 67

Một số khái niệm và thuật ngữ

STT Kí hiệu / viết tắt Diễn giải

tự do

5 KML Keyhole Markup Language: chuẩn giao tiếp dữ liệu

Google Map

Trang 14

PHẦN 1: GIỚI THIỆU

Trang 15

GIỚI THIỆU

I ĐẶT VẤN ĐỀ

Hiện nay phần mềm mã nguồn mở đang phát triển rất mạnh mẽ với một cộng đồng ngày càng lớn mạnh, và ngày càng chứng tỏ là một đối trọng đầy thách thức đối với phần mềm thương mại Lĩnh vực GIS cũng không ngoại lệ trong trào lưu chung đó với hàng trăm dự án xây dựng phần mềm/ công cụ mã nguồn mở hỗ trợ xây dựng ứng dụng GIS

Trong bối cảnh Việt Nam đã gia nhập WTO thì vấn đề sở hữu trí tuệ, vấn đề bản quyền phần mềm thương mại ngày càng được chú trọng Trong khi đó, việc nâng cao hiệu quả quản lý hành chính nhà nước với sự hỗ trợ của phần mềm, đặc biệt với

sự hỗ trợ của GIS là một trong những vấn đề được quan tâm thường trực Với các

ưu điểm về mặt chi phí; khả năng phát triển, mở rộng; khả năng sẵn sàng hỗ trợ bởi một cộng đồng lớn mạnh, việc xây dựng ứng dụng hệ thống thông tin nói chung và ứng dụng GIS nói riêng trên nền tảng các phần mềm mã nguồn mở đang dần trở thành một xu thế và nhu cầu tất yếu

Phường Hiệp Bình Phước, thuộc quận Thủ Đức - Tp.Hồ Chí Minh được thành lập theo nghị định số 03/CP của Chính phủ kí ngày 06/01/1997 về việc thành lập Quận Thủ Đức, Quận 2, Quận 7, Quận 9, Quận 12 và thành lập các phường thuộc các quận mới - thành phố Hồ Chí Minh Theo đó, Phường Hiệp Bình Phước có diện tích

tự nhiên khoảng 766 ha với 12.354 nhân khẩu [1] Việc quản lý vi phạm trật tự xây dựng do Tổ quản lý vi phạm trật tự xây dựng phường đảm trách Với một địa bàn tương đối rộng lớn và tình hình vi phạm trật tự xây dựng diễn ra khá phổ biến và phức tạp, việc xây dựng một công cụ hỗ trợ quản lý hiệu quả và trực quan trên nền GIS theo hướng giảm thiểu chi phí là rất cần thiết trong việc nâng cao hiệu quả công tác quản lý hành chính, tiết kiệm thời gian và nhân lực Đó cũng là mục tiêu nghiên cứu của đề tài

Trang 16

II MỤC TIÊU NGHIÊN CỨU

- Nghiên cứu các công cụ mã nguồn mở phục vụ xây dựng ứng dụng GIS

- Áp dụng xây dựng ứng dụng quản lý vi phạm trật tự xây dựng tại P Hiệp Bình Phước - Q Thủ Đức - Tp Hồ Chí Minh

III NỘI DUNG THỰC HIỆN

1) Khảo sát các công cụ mã nguồn mở phục vụ xây dựng ứng dụng GIS 2) Khảo sát hiện trạng và nhu cầu quản lý tại Tổ quản lý vi phạm trật tự xây dựng P Hiệp Bình Phước, Q Thủ Đức, Tp Hồ Chí Minh

3) Lựa chọn công cụ xây dựng ứng dụng

• Khảo sát các DBMS mã nguồn mở thông dụng: PostgreSQL, Ingres, MySQL, Firebird, MaxDB

• Hiện trạng quản lý

Trang 17

• Phân tích nhu cầu tin học hoá hỗ trợ tác nghiệp hàng ngày

Cùng với nhiệm vụ 1, kết quả của nhiệm vụ 2 là cơ sở cho việc lựa chọn công cụ thích hợp xây dựng ứng dụng (nhiệm vụ 3) và là cơ sở thiết kế và xây dựng ứng dụng (nhiệm vụ 4 )

3 Nội dung 3

- Tên nhiệm vụ: Lựa chọn công cụ xây dựng ứng dụng

- Mô tả: Trên cơ sở kết quả khảo sát các công cụ mã nguồn mở phục vụ xây dựng ứng dụng GIS (nhiệm vụ 1) và kết quả khảo sát hiện trạng và nhu cầu (nhiệm vụ 2), nhiệm vụ 3 tập trung lựa chọn công cụ thích hợp cho xây dựng ứng dụng

IV SẢN PHẨM CỦA ĐỀ TÀI

1) Báo cáo khảo sát các công cụ mã nguồn mở phục vụ xây dựng ứng dụng GIS

2) Báo cáo khảo sát hiện trạng và nhu cầu quản lý tại Tổ quản lý vi phạm trật

tự xây dựng, P Hiệp Bình Phước, Q Thủ Đức, Tp Hồ Chí Minh

3) Báo cáo lựa chọn công cụ xây dựng ứng dụng

Trang 18

4) Báo cáo thiết kế hệ thống và thiết kế cơ sở dữ liệu

5) Bộ cài đặt ứng dụng quản lý vi phạm trật tự xây dựng P Hiệp Bình Phước,

Q Thủ Đức, Tp Hồ Chí Minh

V PHƯƠNG PHÁP NGHIÊN CỨU

Đề tài được thực hiện với các phương pháp sau:

1) Thu thập, tổng hợp và phân tích thông tin (khảo sát các công cụ mã nguồn

mở phục vụ xây dựng ứng dụng GIS)

2) Phỏng vấn (khảo sát hiện trạng và nhu cầu)

3) Xây dựng ứng dụng theo mô hình client - server

VI GIỚI HẠN, PHẠM VI NGHIÊN CỨU

Trang 19

Khu vực nghiên cứu

VII CẤU TRÚC LUẬN VĂN

Nội dung nghiên cứu của luận văn được trình bày trong 4 phần:

1) Phần một: Giới thiệu

2) Phần hai: Cơ sở lý thuyết

- Chương 1: Các công cụ mã nguồn mở phục vụ xây dựng ứng dụng GIS 3) Phần ba: Phát triển ứng dụng

- Chương 2: Khảo sát hiện trạng và nhu cầu quản lý

- Chương 3: Lựa chọn công cụ xây dựng ứng dụng

- Chương 4: Thiết kế và xây dựng ứng dụng

- Kết luận và kiến nghị

4) Phần bốn: Tài liệu tham khảo và Phụ lục

Trang 20

PHẦN 2: CƠ SỞ LÝ THUYẾT

Trang 21

CHƯƠNG I: CÁC CÔNG CỤ MÃ NGUỒN

MỞ PHỤC VỤ XÂY DỰNG ỨNG DỤNG GIS I.1 MỘT SỐ KHÁI NIỆM

Bên cạnh các phần mềm GIS thương mại và “đóng”, phần mềm GIS mã nguồn mở ngày càng được quan tâm nghiên cứu vì một số lợi ích dễ thấy sau:

- Cơ hội tiếp cận nghiên cứu và làm chủ công nghệ

- Giảm lệ thuộc vào nhà cung cấp phần mềm

- Tuân thủ các chuẩn công nghệ chung của thế giới

- Được hỗ trợ bởi một cộng đồng lớn mạnh

- Tiết kiệm chi phí phát triển ứng dụng

- Phát triển năng lực của ngành công nghiệp phần mềm địa phương

- Bản địa hoá phần mềm

Phần sau trình bày lịch sử hình thành và phát triển của phần mềm mã nguồn mở nói chung và phần mềm GIS mã nguồn mở nói riêng cũng như các khái niệm liên quan

I.1.1 Phần mềm tự do (Free Software)

Năm 1984, tiến sĩ Richard Stallman khởi đầu dự án GNU, công bố định nghĩa phần mềm tự do (Free Software) và sáng lập quỹ phần mềm tự do FSF (Free Software Foundation) Năm 1989, Richard Stallman sáng lập giấy phép nguồn mở GNU GPL (General Public License) và khái niệm Copyleft (một cách chơi chữ đối lập với Copyright)

Theo Richard Stallmann, một phần mềm tự do - Free Software - phải đảm bảo các quyền tự do sau đây [4]:

- Quyền tự do 0: Tự do chạy chương trình với bất kỳ mục đích gì

- Quyền tự do 1: Tự do nghiên cứu cách làm việc của chương trình và sửa đổi

cho phù hợp với nhu cầu sử dụng Mã nguồn mở là điều kiện tiên quyết cho quyền tự do này

Trang 22

- Quyền tự do 2: Tự do phân phối các bản sao cho những người dùng khác có

nhu cầu

- Quyền tự do 3: Tự do cải tiến chương trình và công bố sự cải tiến này cho

cộng đồng cùng hưởng lợi Mã nguồn mở cũng là điều kiện tiên quyết cho quyền tự do này

Cần phân biệt Free Software và Freeware Freeware có nghĩa là “Phần mềm miễn phí” Người sử dụng không phải trả tiền khi dùng Freeware và tất nhiên không được

sử dụng Freeware cho mục đích thương mại (không được bán lại cho người dùng khác); tuy nhiên, tác giả Freeware vẫn giữ bản quyền (Copyright) và mặc dù miễn phí nhưng freeware không nhất thiết phải là mã nguồn mở Stallman nhấn mạnh

“Free” trong khái niệm “Free Software” không phải là “miễn phí” mà là “tự do”, đặc biệt là quyền được thay đổi và đóng góp bởi cộng đồng người dùng thông qua việc truy cập mã nguồn của chương trình

I.1.2 Phần mềm mã nguồn mở (Open Source Software - OSS)

Năm 1998, một nhóm người có quan điểm hơi khác Stallman cho rằng thuật ngữ phần mềm tự do nên được thay thế bằng phần mềm nguồn mở (OSS - Open Source Software) vì thuật ngữ này ít gây nhầm lẫn hơn và dễ sử dụng cho giới doanh nghiệp Hệ quả là sự ra đời của tổ chức OSI (Open Source Initiative - tổ chức "Sáng kiến nguồn mở") và tổ chức này đã công bố OSD - Open Source Definition - định nghĩa nguồn mở Theo đó, một phần mềm mã nguồn mở phải đảm bảo các tiêu chuẩn sau [5]:

1) Tự do tái phân phối (Free Redistribution)

Giấy phép phải cho phép bất cứ ai nhận và sử dụng OSS có thể bán/ tặng cho người khác mà không phải trả chi phí cho người sở hữu giấy phép đầu tiên

2) Mã nguồn (Source Code)

Khi cung cấp OSS phải cung cấp toàn bộ mã nguồn của chương trình

3) Các sản phẩm phát sinh (Derived Works)

Trang 23

Giấy phép phải cho phép người dùng sửa đổi OSS và tạo ra những sản phẩm mới trên cơ sở OSS đó Các sửa đổi và sản phẩm phát sinh phải được phân phối dưới cùng những điều kiện như OSS nguyên bản

4) Tính toàn vẹn mã nguồn của tác giả (Integrity of The Author's Source Code)

Giấy phép có thể hạn chế phân phối và hiệu chỉnh mã nguồn với điều kiện phải cho phép phân phối các bản vá (patch files) kèm theo mã nguồn cho mục đích hiệu chỉnh chương trình Giấy phép phải cho phép phân phối phần mềm được xây dựng

từ mã nguồn đã hiệu chỉnh theo cách này Giấy phép có thể yêu cầu các sản phẩm phát sinh mang một tên khác hoặc đánh số phiên bản từ phần mềm nguyên bản

5) Không phân biệt đối xử đối với người dùng (No Discrimination Against Persons or Groups)

Giấy phép không được phân biệt đối xử với bất cứ người/ nhóm người dùng nào

6) Không phân biệt đối xử đối với lĩnh vực sử dụng (No Discrimination Against Fields of Endeavor)

Giấy phép cũng không được hạn chế việc sử dụng trong bất cứ lĩnh vực nào: thương mại, nghiên cứu, giảng dạy…

7) Phân phối giấy phép (Distribution of License)

Các quyền kèm theo phần mềm phải được áp dụng cho tất cả những người dùng được tái phân phối phần mềm

8) Giấy phép không được chuyên biệt cho một sản phẩm (License Must Not Be Specific to a Product)

Nếu một phần mềm được trích từ phần mềm nguyên bản, người dùng được tái phân phối phần mềm này phải có các quyền tương tự như phần mềm nguyên bản

9) Không hạn chế các phần mềm khác (License Must Not Restrict Other Software)

Giấy phép không được hạn chế các phần mềm có bản quyền khác Ví dụ, giấy phép không được đòi hỏi tất cả các phần mềm khác được phân phối trong cùng một môi trường phải là OSS

Trang 24

10) Trung dung về công nghệ (License Must Be Technology-Neutral)

Không một điều khoản nào của giấy phép có thể được xác nhận trên nền tảng một công nghệ riêng lẻ

Ý tưởng chủ đạo đằng sau định nghĩa phần mềm mã nguồn mở là: khi người dùng

có thể truy cập, sửa đổi và tái phân phối mã nguồn của một phần mềm, thì phần mềm đó ngày càng phát triển OSI xem trọng giá trị kỹ thuật của việc tạo những phần mềm mạnh, có độ tin cậy cao, mang lại lợi ích thực tiễn và phù hợp với giới doanh nghiệp hơn là quan tâm tới khía cạnh giá trị đạo đức của phần mềm tự do mang lại theo quan điểm của FSF

I.1.3 Phần mềm mã nguồn mở - tự do (FOSS)

Sự kiện OSI công bố khái niệm phần mềm mã nguồn mở đã gây ra những tranh luận giữa 2 trường phái FSF và OSI Tuy nhiên, mặc dù quan điểm của hai trào lưu này tương đối khác nhau, nhưng cả FSF và OSI đều đứng trên lập trường đấu tranh chống các phần mềm đóng và việc cấp bằng sáng chế phần mềm

Để dung hoà hai trường phái này, ngày nay người ta thường dùng khái niệm FOSS (Free Open Source Software) hay FLOSS (Free/ Liber Open Source Software) - Phần mềm mã nguồn mở tự do [6]

I.1.4 Hệ thống giấy phép cho FOSS

Định nghĩa của OSI nhằm thiết lập một sự thống nhất tương đối về phần mềm mã nguồn mở Đây là những chỉ dẫn chung về những điều khoản phải có hoặc không được có trong một giấy phép (license) phần mềm mã nguồn mở Tuy nhiên, miễn là đạt được những yêu cầu tối thiểu này, nhà phát triển phần mềm có thể thêm những điều khoản khác theo ý muốn, và hệ quả là có nhiều loại giấy phép khác nhau Hiện nay có trên 50 loại giấy phép phần mềm mã nguồn mở, được quản lý bởi OSI (xem phụ lục) Do đó, khi nói đến các phần mềm mã nguồn mở phải xem xét đến giấy phép cụ thể mà chúng được công bố

I.1.5 Phần mềm GIS mã nguồn mở - GEOFOSS

Trang 25

Là một bộ phận của FOSS, cộng đồng phần mềm GIS mã nguồn mở - GEOFOSS

cũng đã phát triển lớn mạnh với 246 dự án được công bố (http://opensourcegis.org/

- cập nhật ngày 13/11/2007)

Các dự án GIS mã nguồn mở được sự hậu thuẫn của Open Source Geospatial Foundation - OSGeo [7] OSGeo là một tổ chức phi lợi nhuận nhằm hỗ trợ và xúc tiến sự hợp tác phát triển của cộng đồng các nhà phát triển phần mềm GIS mã nguồn mở Ngoài ra, OSGeo còn chủ trì một hội thảo quốc tế thường niên mang tên FOSS4G, thu hút sự tham gia của rất nhiều nhà phát triển thuộc cộng đồng FOSS4G

từ khắp nơi trên thế giới Gần đây là hội thảo FOSS4G2007 diễn ra tại Canada với

120 bài tham luận [8]

I.1.6 Chuẩn mở cho GIS - OpenGIS

Một vấn đề khá quan trọng về quan điểm mở cho phần mềm GIS là xây dựng chuẩn

mở cho GIS - OpenGIS Xây dựng chuẩn tương tác dữ liệu dùng chung cho các phần mềm ứng dụng là một nhu cầu và xu thế tất yếu, đặc biệt trong lĩnh vực GIS với định dạng dữ liệu phong phú, đa dạng và phức tạp

Các chuẩn mở giúp tiết kiệm thời gian, chi phí, nâng cao tính khả chuyển và tính đồng vận hành giữa các hệ thống khác nhau Việc xây dựng và phát triển các chuẩn

mở được đảm trách bởi các tổ chức như: ISO, FGDC, và đặc biệt trong lĩnh vực GIS là OGC (Open Geospatial Consortium, Inc.®)

OGC là một hiệp hội công nghệ quốc tế của 339 công ty, cơ quan chính phủ và các trường đại học cùng tham gia phát triển Đây là một tổ chức phi lợi nhuận, đứng đầu trong việc phát triển các chuẩn cho geospatial và các dịch vụ hướng địa điểm (Location Base Service) Một số thành viên của OGC: US Geological Survey (USGS), US National Aeronautics and Space Administration (NASA), US National Geospatial-Intelligence Agency (NGA), Autodesk Inc, Bentley Systems Inc, Boeing Space & Intelligence Systems (S&IS), ESRI, GeoConnections - Natural Resources Canada, Google, Intergraph Corporation, MapInfo Corporation, Oracle USA…[9] Một số chuẩn OpenGIS được xây dựng bởi OGC:

- Web Mapping Service (WMS)

Trang 26

- Web Map Context (WMC)

- Web Feature Service (WFS)

- Web Coverage Service(WCS)

- Simple Features

- Geography Markup Language (GML)

- Simple Features GML 3 (SF GML)

- OpenGIS Location-Based Services (OpenLS)

Việc xây dựng các chuẩn mở làm tăng tính khả chuyển và tính đồng vận hành giữa các phần mềm GIS vốn được phát triển trên nhiều nền tảng công nghệ khác nhau

Hỗ trợ các chuẩn mở này không chỉ là một xu hướng của các phần mềm mã nguồn

mở mà cả các phần mềm thượng mại, các phần mềm nói chung và phần mềm GIS nói riêng Một ví dụ cho xu hướng này là gói phần mềm thương mại ArcGIS phiên bản 9.2 của ESRI được phát hành gần đây có các tính năng đáng chú ý sau:

- Hỗ trợ OGC GML Simple Features data với công cụ ArcGIS OGC Interoperability Add-On

- ArcIMS hỗ trợ chuẩn WMS,WFS

- METADATA: hỗ trợ chuẩn metadata ISO 19139

Trang 27

I.2 CÁC PHẦN MỀM GIS MÃ NGUỒN MỞ

Xét về mặt ngôn ngữ lập trình phát triển, phần mềm GIS mã nguồn mở có thể tạm chia thành 4 nhánh: nhánh C, nhánh Java, nhánh Net và nhánh Web [10] Phần sau trình bày một số dự án cơ sở và tiêu biểu của các nhánh này

1 OGR /GDAL GDAL cung cấp các thư viện xử lý dữ

liệu raster

OGR cung cấp các thư viện xử lý dữ liệu vector

MIT http://www.gdal.org

2 Proj4 Cung cấp thư viện hỗ trợ quản lý và

chuyển đổi hệ quy chiếu

MIT - style

“Simple Features for SQL” - OpenGIS

LGPL http://geos.refractions.net

Trang 28

4 FDO - Feature

Data Objects Là thư viện truy cập dữ liệu được phát triển đầu tiên bởi Autodesk (phục vụ cho

dòng sản phẩm Mapguide và Autodesk Map3D) Năm 2006, Mapguide được phát hành dưới dạng mã nguồn mở, kéo theo FDO cũng được phát hành dưới dạng mã nguồn mở

Ngoài chức năng tương tự như GDAL/OGR là cung cấp các thư viện tương tác với nhiều định dạng dữ liệu raster/vector, FDO hơn hẳn OGR trong các phép tính toán dữ liệu không gian (Distance, Length, Area, Intersection, Union…)

LGPL http://fdo.osgeo.org

Một số ứng dụng tiêu biểu

5 MapGuide Được phát triển trên nền tảng thư viện

Proj4 và GEOS nhằm hỗ trợ xây dựng các ứng dụng và dịch vụ WebGIS

MapGuide có thể hoạt động trên nền Windows hoặc Linux, hỗ trợ Web Server IIS / Apache; hỗ trợ PHP, NET, Java, JavaScript API cho phát triển ứng dụng

LGPL http://mapguide.osgeo.org

6 Mapserver Là một trong những dự án mã nguồn mở

thành công nhất hiện nay với đội ngũ phát triển, bảo trì chuyên nghiệp, hiệu năng cao và cài đặt đơn giản MapServer

hỗ trợ rất nhiều nguồn dữ liệu như Shapefile, PostgreSQL, Oracle Spatial, ArcSDE, Remote WMS layer, GDAL, OGR thông qua các hàm tương tác API như Mapserver CGI (Common Gateway Interface), MapScript Python, MapScript Perl, MapScript PHP, MapScript Java, MapScript NET, C API, OpenGIS WMS, OpenGIS WFS, OpenGIS WCS, OpenGIS SOS

MIT - style http://mapserver.gis.umn.edu

đó được phát hành dưới dạng mã nguồn

mở vào năm 1999 theo giấy phép GPL

GRASS hỗ trợ nhiều định dạng dữ liệu GDAL và OGR GRASS có thể đọc trực tiếp dữ liệu từ PostgreSQL/ PostGIS; hỗ trợ hiệu quả các công cụ mô hình hoá, phân tích dữ liệu phức tạp

GPL http://grass.itc.it

8 QGIS Là ứng dụng desktop hiển thị dữ liệu GIS

chủ yếu trên nền Linux và mở rộng cho

GPL http://www.qgis.org

Trang 29

các nền hệ điều hành khác như Win32, OS/X, Solaris

QGIS hỗ trợ các định dạng vector như PostGIS, Shapefile và các định dạng mà OGR hỗ trợ; hỗ trợ các định dạng raster như DEM, ArcGrid, ERDAS, SDST, GeoTIFF,…

GPL http://www.ossim.org

10 TerraLib TerraLib hỗ trợ: Metadata Model, Spatial

Model, Spatial Model to Oracle Spatial, Spatial Model to PostgreSQL, Spatial Model to PostGIS, Application Model, GeoCoding Model, Spatial Statistics Model

Ngoài ra, TerraLib còn bao gồm ứng dụng Terraview, phục vụ cho việc hiển thị, tương tác dữ liệu không gian

GPL http://gmt.soest.hawaii.edu/

12 PostGIS Là một extension của PotgreSQL hỗ trợ

quản lý dữ liệu không gian theo đặc tả Simple Features Specifications For SQL của OGC PostGIS được phát triển trên nền tảng thư viện Proj4 và thư viện GEOS

GPL http://postgis.refractions.net

Trang 30

I.2.2 Nhánh Java

Sở đồ OSS nhánh Java:

Hình I.2: Sơ đồ OSS nhánh Java [10]

Bảng I.2: Các OSS nhánh Java

phép Website Thư viện dùng chung

1 JTS (Java

Topology Suite)

Thư viện các hàm tương tác dữ liệu không gian theo đặc tả “Simple Features for SQL” - OpenGIS

LGPL http://www.geotools.org

3 GeoAPI Cung cấp các hàm thư viện API tương tác

dữ liệu không gian trên cơ sở các chuẩn

mở của OGC/ ISO

OGC license

http://geoapi.sourceforge.net

4 WKB4J Là thư viện hỗ trợ tương tác dữ liệu theo

định dạng Well-Known Binary (OpenGIS), và chuyển dữ liệu này sang các đối tượng không gian tương ứng

WKB hỗ trợ JTS, PostGIS, OpenMap…

LGPL http://wkb4j.sourceforge.net/

Trang 31

Một số ứng dụng tiêu biểu

5 GeoServer Là một cài đặt các đặc tả máy chủ dịch vụ

Web theo chuẩn OpenGIS (Web Map Server -WMS, Web Feature Server - WFS)

Hỗ trợ Oracle Spatial, ArcSDE, PostGIS, ESRI Shapefile, KML

GPL http://geoserver.sourceforge.net

6 DeeGree Phát triển bởi đại học Bonn, hỗ trợ đặc tả

OpenGIS như WMS, WFS; hỗ trợ Shapefile, RDBMS, WKB và WKT

hệ

GPL http://www.jump-project.org

8 gvSIG Phát triển trên cơ sở GeoTools và JTS

Tương tác dữ liệu theo chuẩn OpenGIS, chạy trên nhiều nền hệ điều hành

GPL http://www.gvsig.gva.es/

9 OpenMap Là một trong những bộ Java Tookit lâu

đời nhất làm cơ sở cho phát triển các ứng dụng GIS nền Java

Hỗ trợ WFS, WMS, Styled Layer Descriptor (SLD), Web Catalog Server (cho phép tìm kiếm nhanh và sử dụng các dịch vụ bản đồ trực tuyến)

Hỗ trợ dữ liệu PostGIS, OracleSpatial, ArcSDE, MySQL

Cài đặt đơn giản, hỗ trợ đa ngôn ngữ, dễ dàng mở rộng

LGPL http://udig.refractions.net

Trang 32

I.2.3 Nhánh Net

Các dự án Net được phát triển gần đây với một cộng đồng chưa lớn mạnh bằng nhánh C và Java, nhưng nhờ phát triển trên nền tảng các thư viện cơ sở của cả 2 nhánh (chẳng hạn như NTS phát triển trên cơ sở JTS, Proj.Net phát triển trên cơ sở Proj4), cộng đồng Net hoàn toàn có cơ sở để phát triển nhanh chóng

Sở đồ OSS nhánh Net:

Hình I.3: Sơ đồ OSS nhánh Net [10]

Bảng I.3: Các OSS nhánh Net

phép

Website Các thư viện dùng chung

1 NTS - Net

Topology Suit

NTS cung cấp hầu hết các đặc tính của JTS (Java Topology Suite), và sẵn dùng trực tiếp trong Net

LGPL http://sourceforge.net/projects/nts

2 Proj.Net Được phát triển trên nền tảng các thuật

toán chuyển đổi toạ độ của Proj4

LGPL http://www.codeplex.com/ProjNET

Một số ứng dụng tiêu biểu

3 MapWindow Là ứng dụng desktop GIS được phát

triển trên nền tảng ActiveX control MapWinGIS.ocx MapWindow có thể tương tác với các định dạng dữ liệu mà GDAL hỗ trợ

Mozilla Public License

http://www.MapWindow.com/

4 WorldWind Là ứng dụng hiển thị bản đồ thế giới

dạng 3D tương tự Google Earth; tuy nhiên WorldWin cho phép lập trình phát triển, mở rộng thông qua plug-in

NASA Open Source Agreement

http://worldwind.arc.nasa.gov/

5 SharpMap Là một thư viện Net cho phát triển các LGPL http://www.codeplex.com/Sharp

Map

Trang 33

ứng dụng bản đồ trên Web và desktop

SharpMap được phát triển trên nền tảng NTS và Proj.Net ; ngoài ra, SharpMap còn sử dụng OGR/GDAL để truy cập nhiều định dạng dữ liệu không gian khác nhau, và SharpMap hiện được xem là một đối trọng của ESRI MapObjects

I.2.4 Nhánh Web

Sở đồ OSS nhánh Net:

Hình I.4: Sơ đồ OSS nhánh Web [10]

Bảng I.4: Các OSS nhánh Web

phép Website Toolkits

1 MapBuilder Cung cấp công cụ phía client cho hiển

thị và hiệu chỉnh dữ liệu không gian được cung cấp bởi các dịch vụ web theo chuẩn WMC (Wep Map Context - OpenGIS) và mở rộng cho các chuẩn trên cơ sở XML khác

Ngôn ngữ: Javascript / DHTML

LGPL http://mapbuilder.sourceforge.net

2 Ka-Map Cung cấp JavaScript API cho phát triển

các giao diện bản đồ web tương tác cao

Ka-Map gồm javascript web component phía client, PHP component phía server hoạt động theo cơ chế “xếp kề” (tương

tự Google Maps)

Ngôn ngữ: JavaScript / DHTML / PHPMapscript

BSD http://ka-map.maptools.org

Trang 34

3 OpenLayers OpenLayers cung cấp thư viện thuần

Javascript phía client cho phép nhúng các bản đồ từ Microsoft Virtual Earth, Google Maps, Yahoo Maps, Worldwind, WMS services, Terraserver… vào trang web một cách dễ dàng OpenLayers cũng hoạt động theo cơ chế “xếp kề” (tương

tự Google Maps)

Ngôn ngữ: JavaScript

BSD http://www.openlayers.org/

Frameworks

4 MapBender MapBender được phát triển và sử dụng

chủ yếu ở Đức như một cơ sở hạ tầng dữ liệu không gian cho các trang web bản

đồ MapBender cung cấp giao diện cho quản trị, truy xuất, hiển thị các dịch vụ bản đồ theo chuẩn WMS - OpenGIS

Ngôn ngữ: JavaScript / DHTML / PHP

GPL http://www.mapbender.org

5 CartoWeb CartoWeb là một Web-GIS toàn diện và

sẵn dùng, đồng thời là một framework cho phát triển các ứng dụng tuỳ biến

CartoWeb có tính modul hoá cao nhờ được xây dựng trên nền tảng kiến trúc hướng đối tượng,

Ngôn ngữ: JavaScript / DHTML / PHP

GPL http://www.cartoweb.org

Servers

6 TileCache TileCache đóng vai trò cầu nối trung

gian giữa WMS, Mapserver, ArcIMS…

và OpenLayers, WorldWin… Bằng cách lưu trữ (caching) các yêu cầu truy xuất bản đồ theo cơ chế “xếp kề”, TileCache giúp tăng tốc độ và hiệu năng truy xuất

Ngôn ngữ:Python

BSD http://tilecache.org

7 FeatureServer FeatureServer vẫn đang trong giai đoạn

thử nghiệm nhưng có tiềm năng phát triển mạnh Tuy chức năng tương tư như WFS, nhưng FeatureServer sử dụng các lệnh đơn giản thông qua giao thức HTTP

để điều khiển các tác vụ đọc / ghi (sử dụng HTTP GET, PUT, POST, DELETE) FeatureServer hỗ trợ các định dạng JSON, GML, KML

Ngôn ngữ: Python

BSD http://featureserver.org

Trang 35

I.3 CÁC HỆ QUẢN TRỊ CSDL MÃ NGUỒN MỞ

I.3.1 GIỚI THIỆU CHUNG

Quá trình hình thành và phát triển của các hệ quản trị CSDL thông dụng, trong đó

có các hệ quản trị CSDL mã nguồn mở được thể hiện trong hình sau:

Hình I.5: Quá trình phát triển các hệ quản trị CSDL [11]

I.3.2 Firebird

- Hệ điều hành: Windows, Linux, Sun Solaris (Sparc, Intel), HP-UX

(PA-Risc), FreeBSD và MacOS X

- Giấy phép: IPL (InterBase Public License), Initial Developer's public license

Version 1.0

Trang 36

Firebird được phát triển từ nềm tảng InterBase (1984) của hãng Borland Năm 2000, Borland quyết định phát hành Interbase (version 6.0) dưới dạng mã nguồn mở (theo giấy phép Mozilla Public License), tạo tiền đề cho sự ra đời của Firebird Đến phiên bản 6.5, Borland rút lại quyết định này, nhưng lúc đó Firebird cũng đã phát triển với một cộng đồng ngày càng lớn mạnh

I.3.3 Ingres

- Hệ điều hành: Windows, Linux, UNIX, Solaris, HP-UX và OpenVMS

- Giấy phép: GNU General Public Licence

Ingres (INteractive Graphics REtrieval System) được ra đời từ dự án nghiên cứu tại University of California, Berkeley vào những năm 1970 Năm 1982, Ingres được thương mại hoá bởi Ingres Corporation Tháng 10/1990, Ingres Corporation được mua lại bởi ASK Corporation Không lâu sau đó, năm 1994, Computer Associates (CA) mua lại ASK/Ingres Năm 2004, CA quyết định phát hành Ingres r3 dưới dạng

mã nguồn mở theo giấy phép CATOSL (CA Trusted Open Source License) Năm

2005, CA tái lập Ingres Corporation và phát hành Ingres 2006 theo giấy phép GNU General Public Licence vào tháng 02/2006

I.3.5 MaxDB

- Hệ điều hành: Windows, Linux, Sun Solaris, HP - UX, HP Tru64 UNIX, IBM AIX

Trang 37

- Giấy phép: GNU General Public License và Commercial License

MaxDB được phát triển vào năm 1977 từ một dự án nghiên cứu tại Technical University of Berlin, được thương mại hoá vào năm 1981 bởi Nixdorf Computer, Siemens-Nixdorf, Software AG, với tên thương mại là DDB/4 Vào năm 1993, DDB/4 được Software AG mua lại với tên gọi là Entire SQL DB Server, sau đó đổi tên thành Adabas D Năm 1997, Adabas D được SAP tiếp nhận và đổi tên thành SAP DB Năm 2000, SAP phát hành SAP DB dưới dạng mã nguồn mở theo giấy phép GNU General Public License GPL Năm 2003 SAP AG phối hợp với MySQL

AB và đổi tên SAP DB thành MaxDB

I.3.6 PostgreSQL

- Hệ điều hành: Windows, Linux, FreeBSD, Mac OS X, Sun Solaris, HP-UX,

HP Tru64 UNIX, IBM AIX

- Giấy phép: BSD

PostgreSQL là một hệ quản trị CSDL quan hệ - đối tượng có nguồn gốc từ dự án Ingres tại trường Đại học Berkeley của Đức vào năm 1986 Sau khi dự án kết thúc vào năm 1994, trình thông dịch SQL được bổ sung vào và đổi tên thành Postgres95 Năm 1996 đựơc đổi tên thành postgreSQL

Trang 38

I.3.7 MỘT SỐ ĐẶC ĐIỂM CỦA CÁC DBMS MÃ NGUỒN MỞ

Bảng I.5 : Một số đặc điểm của các DBMS mã nguồn mở

THÔNG TIN CHUNG Nhà sáng lập/ bảo trì IBPhoenix CA, Ingres Corp MySQL AB, SAP AG MySQL AB Pervasive Software,

PostgreSQL Inc

Thời điểm phát hành 1984

(2000: open source)

1974 (2004: open source)

1977 (2000: open source)

Hệ điều hành Windows, Linux, Sun

Solaris (Sparc, Intel),

HP-UX (PA-Risc), FreeBSD và MacOS X

Windows, Linux, UNIX, Solaris, HP-UX

và OpenVMS

Windows, Linux, Sun Solaris, HP - UX, HP Tru64 UNIX, IBM AIX

Windows, OS/2, Linux, FreeBSD, Sun Solaris, HP-UX, HP Tru64 UNIX, Mac OS X, IBM AIX, QNX, Novell Netware

Windows, Linux, FreeBSD, Mac OS X, Sun Solaris, HP-UX, HP Tru64 UNIX, IBM AIX

Hỗ trợ Unicode Có (UTF- 8, UTF -16) Có (UCS-2) Có (UTF-16/UCS-2) Có (UTF-8/UCS-2) Có (UTF-8)

Trang 39

Hỗ trợ dữ liệu không gian Không Có Không Có (MyISAM) Có

Kết nối dữ liệu ODBC, JDBC, OLE DB,

.NET Data Provider

ODBC, JDBC, NET Data Provider

ODBC, JDBC, SQLDBC,OLE DB, ADO, DAO, RDO, NET

ODBC, JDBC, NET ODBC, JDBC, NET

Programming Interfaces C, C++, Java, Delphi, PHP,

Python, Perl

C, Perl, PHP, Python C/C++ Precompiler, PHP,

Perl, Python, Tcl, Delphi

C, C++, C#, Eiffel, Smalltalk, Java, Lisp, Perl, PHP, Python, Ruby, Tcl

C, C++, Java, Perl, Python, PHP, Ruby, R, Smalltalk, Lisp, Tcl

GIỚI HẠN LƯU TRỮ

Số mẩu tin / bảng 4,294,967,296 (2 32 ) 4,294,690,816 Giới hạn bởi kích thước

Trang 40

Kích thước mẫu tin / bảng 64 KB 32 KB 8088 B 8000B 1.6TB

MỘT SỐ CÔNG CỤ HỖ TRỢ QUẢN TRỊ CSDL Công cụ hỗ trợ quản trị - CLI: isql

- GUIs: IB SQL, IBExpert (Windows), Database Workbench, IBAdmin, IBO Console

- Web: IBWebAdmin

CA Visual DBA (Ingres Visual Manager)

- Database Manager (DBMGUI)

(Windows)

- Web Database Manager (DBM)

- DBMCLI

- phpMyAdmin (Web)

- mysqladmin (CLI)

- MySQL Administrator (GUI)

Ngày đăng: 15/02/2021, 17:57

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w