Thiết kế mơ hình cơ sở dữ liệu luận lý

Một phần của tài liệu XÂY DỰNG HỆ TÌM KIẾM TRI THỨC THÔNG TIN ĐỊA LÝ CÁC ĐỀ TÀI KHOA HỌC VỀ GIS (Trang 32)

CHƯƠNG 2 TỔNG QUAN TÀI LIỆU

3.2.2. Thiết kế mơ hình cơ sở dữ liệu luận lý

Sau khi phân tích và có mơ hình liên kết thực thể ER, ta có mơ hình dữ liệu quan hệ như sau:

 Thực thể KHUVUC: khóa chính là code_tinh. KHUVUC(code_tinh, name_tinhname_vung, geom).

 Thực thể BAIBAO: khóa chính là baibao_id, khóa ngoại là mabaibao.

 BAIBAO( baibao_id, mabaibao, nam, tacgia, donvi, tenbai, nhom, trangbatdau, trangketthuc).

 Thực thể liên kết DONVIHANHCHINH(dvhc_id, code_tinh, mabaibao, code_huyen, code_xa). Mối liên kết DONVIHANHCHINH sẽ liên kết thực thể KHUVUC và thực thể BAIBAO với nhau.

 Thực thể CONGCU: khóa chính là tools_id CONGCU(tools_id, makythuat1, tenkythuat, nhomkythuat, phanloai).

 CHITIETKYTHUAT (kythuat_id, mabaibao, kythuatchinh,kythuatchitiet, makythuat, kythuatthucap).

 Thực thể liên kết CHITIETKYTHUAT: với khóa chính là kythuat_id và mabaibao dùng để liên kết thực thể BAIBAO và thực thể CONGCU với nhau.

3.2.3. Thiết kế mơ hình cơ sở dữ liệu mức vật lý

Thuộc tính của các thực thể được mô tả kèm theo kiểu dữ liệu được mô tả ở các bảng dưới đây:

Bảng thông tin tỉnh/thành phố (KHUVUC) gồm có các thuộc tính gid, code_tinh, name_tinh, name_vung, geomtry.

24

Bảng 3.1 Kiểu dữ liệu thuộc tính thực thể KHU VUC

Thuộc tính Kiểu dữ liệu Mô tả

gid serial

code_tinh varchar(254) Mã tỉnh

name_tinh varchar(75) Tên tỉnh

name_vung varchar(75) Tên vùng

geom geometry

Bảng thông tin bài báo (BAIBAO) gồm các thuộc tính baibao_id, mabaibao, nam, tacgia, donvi, tenbai, nhom, trangbatdau, trangketthuc.

Bảng 3.2 Kiểu dữ liệu thuộc tính thực thể BAIBAO

Thuộc tính Kiểu dữ liệu Mơ tả

baibao_id integer Mã đối tượng

mabaibao text Mã bài báo

nam integer Năm

tacgia text Tác giả

donvi text Đơn vị công tác

tenbai text Tên bài

nhom text Nhóm bài

trangbatdau integer Trang bắt đầu trangketthuc integer Trang kết thúc

25

Bảng thông tin về các đối tượng tiện ích (CONGCU) gồm các thuộc tính tools_id, makythuat1, tenkythuat, nhomkythuat, phanloai.

Bảng 3.3 Kiểu dữ liệu thuộc tính thực thể CONGCU

Thuộc tính Kiểu dữ liệu Mô tả

tool_id integer Mã đối tượng

makythuat1 text

Mã kỹ thuạt

tenkythuat text Tên kỹ thuật

nhomkythuat text Nhóm kỹ thuật

26

3.3. Xây dựng Cơ Sở Dữ Liệu 3.3.1. Xây dựng CSDL 3.3.1. Xây dựng CSDL

Sau khi hồn thành các bước thu thập, phân tích, thiết kế CSDL và xử lý dữ liệu ta tiến xây dựng CSDL sử dựng hệ quản trị CSDL PostgreSQL/PostGIS.

Quy trình thực hiện:

 Sau khi cài PostgreSQL và PostGIS, mở chương trình pgAdmin.

 Nhấp đúp chuột vào PostgreSQL để Connect sẽ hiện ra 1 form để điền username và password. Điền các thông tin rồi nhấn OK để connect.

 Tạo database: Chuột phải vào Database, chọn New Database

 Đặt tên cho Database. Trong tab Definition, mục Template chọn postgis_23_sample > OK. Database mới đã được tạo.

Hình 3.4 Tạo database mới

Để Import dữ liệu shapefile vào database, ta sử dụng công cụ PostGIS Shapefile Import/Export Manager. Công cụ này được cài đặt sẵn khi cài PostGIS. Chọn View Connection Details để nhập thông tin đăng nhập vào PostGIS, đăng nhập Username là postgres, Password là pasword lúc cài đặt phần mềm, Server Host là Localhost 5432, Database là tên database mới tạo trong PostgresSQL.

27

Hình 3.5 Kết nối cơ sở dữ liệu

Tiếp theo, để đưa dữ liệu vào database, chọn Add File sau đó tìm đường dẫn đến shapefile cần thêm rồi click OK để thêm shapefile vào danh sách. Cuối cùng nhấp Import để đưa shapefile được chọn vào CSDL.

28

Hình 3.6 Import dữ liệu vào

Sau khi import xong, cơ sở dữ liệu đã được tạo.

29

3.4. Xây dựng hệ thống WebGIS

Sau khi xây dựng xong CSDL, tiến hành đưa CSDL lên Geoserver và quá trình thực hiện như sau:

Quy trình thực hiện được mơ tả cụ thể ở Phụ lục 3.

3.4.1. Thiết kế hệ thống

Hệ thống WebGIS của đề tài xác định có 3 nhóm người trong hệ thống: người quản trị (Admin), người dùng không đăng nhập (chỉ xem và tìm kiếm thơng tin) và người dùng đăng nhập (được phép đăng tải bài).

 Người quản trị (Admin) là người được truy cập tồn bộ hệ thống thơng qua chức năng đăng nhập, quản lý thông tin và quản lý đối tượng người dùng.

 Khách (người dùng không đăng nhập) là những người truy cập vào hệ thống mà khơng cần đăng nhập, có thể xem bản đồ và tìm kiếm thơng tin.

 Người dùng đăng nhập có thể là tác giả hoặc người có thơng tin về bài báo thông qua chức năng đăng nhập, có thể xem bản đồ, tìm kiếm thơng tin và đăng thơng tin, chỉnh sửa, xóa thơng tin về bài báo.

30

Hình 3.8 Sơ đồ chức năng hệ thống WebGIS 3.4.2. Thiết kế giao diện trang web 3.4.2. Thiết kế giao diện trang web

Sitemap (sơ đồ của một trang web) là tập tin văn bản có chứa tất cả các đường dẫn của một trang web, hướng dẫn cho các cơng cụ tìm kiếm thu thập thông tin của trang web một cách hiệu quả và cập nhật những thay đổi trên trang web, như là thêm một trang mới hoặc thay đổi trang web hiện tại.

Sitemap của trang web dự kiến của đề tài có 2 phần: Phần trang web hiển thị tìm kiếm

31

Hình 3.9 Mơ tả Sitemap của trang web

Ngơn ngữ mơ hình hóa thống nhất (Unified Modeling Language UML) là một ngơn ngữ mơ hình gồm các ký hiệu đồ họa mà các phương pháp hướng đối tượng sử dụng để thiết kế các hệ thống thông tin một cách nhanh chóng.

Đối với người dùng khơng đăng nhập, họ có thể tìm kiếm, xem bản đồ. Đối với người dùng đăng nhập, ngoài việc xem bản đồ, tìm kiếm thì cịn có thể đăng các bài báo. Khi người dùng tìm kiếm, sẽ truy cập đến CSDL để cho ra kết quả các thơng tin thuộc tính và thơng tin khơng gian hiển thị lên bản đồ về vị trí của bài báo.

32

Hình 3.10 Mơ tả mơ hình UML

Hiện nay, việc tạo ra một website để đáp ứng nhu cầu của người sử dụng rất phổ biến với sự hỗ trợ của các ngơn ngữ lập trình web như HTML, CSS, JavaScript. HTML (HyperText Markup Language, hay là "Ngôn ngữ Đánh dấu Siêu văn bản") là một ngôn ngữ đánh dấu được thiết kế ra để tạo nên các trang web với các mẩu thơng tin được trình bày trên World Wide Web. Cùng với CSS và JavaScript, HTML tạo ra bộ ba nền tảng kỹ thuật cho World Wide Web. CSS ( Cascading Style Sheets), là một ngôn ngữ được sử dụng để tìm và định dạng lại các phần tử được tạo ra bởi các ngơn ngữ đánh dấu. HTML đóng vai trị định dạng các phần tử trên website như việc tạo ra các đoạn văn bản, các tiêu đề, bảng,… CSS sẽ giúp đổi màu sắc trang, đổi màu chữ, thay đổi cấu trúc để tạo website đẹp mắt. Javascript là một ngơn ngữ lập trình được tạo ra để nâng cao khả năng tương tác của trang web với người sử dụng. Thông thường mã javascript (gọi tắt là js) được nhúng vào trong trang web và được thực thi bởi trình duyệt.

33

Dựa trên các phân tích, giao diện của trang web được thiết kế như sau:

Giao diện trang tìm kiếm: gồm các tiêu chí để tìm kiếm như tỉnh/thành phố, bài báo, phương pháp, phần mềm và các tiện ích cơng cụ; kết quả tìm kiếm được và bản đồ hiển thị thông tin không gian của bài báo.

Hình 3.11 Mơ tả giao diện trang

Giao diện trang đăng nhập: gồm thông tin tên đăng nhập và mật khẩu mà người dùng đã đăng ký.

34

Hình 3.13 Mơ tả giao diện trang tìm kiếm 3.5. Thiết kế chức năng của trang web 3.5. Thiết kế chức năng của trang web

Hiển thị bản đồ

Để hiển thị bản đồ, ta cần thêm thư viện javascript Leaflet cho trang web, có thể lấy thư viện này tại địa chỉ: http://leafletjs.com/download.html.

35

Trong thẻ <body> ta khai báo vùng chứa bản đồ.

Để tạo bản đồ cho trang web, ta sử dụng lệnh L.map trong Leaflet.

Trong đó, map là giá trị id của thẻ <div> đã được khai báo. setView hiển thị bản đồ ở vĩ độ 8.48817348480225 và kinh độ 102.078514099121, với mức zoom là 5. Để khai báo các layer cho bản đồ ta thực hiện như sau:

Trong đó, đường dẫn http://localhost:8080/geoserver/gisparpers/wms để liên kết đến Geoserver. gis_papers là tên Workspace đã được tạo trên Geoserver như phụ lục 3 đã trình bày. Tên của layer là ‘gis_papers’.

36

Tương tác với bản đồ: tham chiếu đến vị trí khơng gian trên bản đồ của đối tượng được chọn.

Xây dựng chức năng tìm kiếm: Quá trình xây dựng chức năng tìm kiếm được trình bày ở Phụ lục 4 bằng ngơn ngữ lập trình Python.

37

CHƯƠNG 4. KẾT QUẢ NGHIÊN CỨU

Sau quá trình nghiên cứu và thực hiện đã xây dựng được một WebGIS hỗ trợ tìm kiếm thơng tin bài báo. Chương này sẽ trình bày các kết quả đạt được tương ứng với các chức năng.

4.1. Giao diện trang web

Phần giới thiệu là thời gian và địa điểm tổ chức các hội thảo.

Hình 4.1 Giao diện Timeline 4.1.1. Giao diện tìm kiếm 4.1.1. Giao diện tìm kiếm

Giao diện tìm kiếm gồm 2 phần:

 Bên trái màn hình là cơng cụ hỗ trợ tìm kiếm theo các tiêu chí và hiển thị kết quả.

 Bên phải màn hình là bản đồ hỗ trợ việc hiển thị vị trí của đối tượng bài báo.

38

Hình 4.2 Giao diện trang tìm kiếm 4.1.2. Giao diện đăng nhập 4.1.2. Giao diện đăng nhập

39

4.1.3. Giao diện đăng kí

Hình 4.4 Giao diện đăng ký 4.2. Kết quả của các chức năng tìm kiếm 4.2. Kết quả của các chức năng tìm kiếm

Với sự hỗ trợ của các chức năng, người dùng có thể tìm kiếm thơng tin bài báo theo các tiêu chí đã được đề ra.

Tìm kiếm theo 1 tiêu chí.

4.2.1.Tìm kiếm theo tinh thành phố

Người dùng nhấp vào ô “Tỉnh – Thành phố” và chọn chủ đề muốn tìm kiếm ví dụ như “Bình Định”, sau đó nhấp vào ơ “Tìm kiếm”.

40

Hình 4.5 Tìm kiếm theo Tỉnh thành phố

Kết quả tìm kiếm được sau: Bảng kết quả về bài báo: thông tin về tên bài báo, năm, tác giả, chủ đề.

41

4.2.2.Tìm kiếm theo chủ đề:

Người dùng nhấp vào ô “Chủ đề” và chọn công cụ muốn tìm kiếm, sau đó nhấp vào ơ “Tìm kiếm”.

Hình 4.7 Tìm kiếm theo chủ đề

Kết quả tìm kiếm: Bảng kết quả về bài báo: thơng tin về tên bài báo, năm, tác giả, năm, tỉnh/ thành phố.

42

4.2.3. Tìm kiếm theo phần mềm:

Người dùng nhấp vào ô “Phần mền” và chọn cơng cụ muốn tìm kiếm, sau đó nhấp vào ơ “Tìm kiếm”.

Hình 4.9 Tìm kiếm theo phần mềm

Kết quả tìm kiếm: Bảng kết quả về bài báo: thông tin về tên bài báo, năm, tác giả, chủ đề, tỉnh/ thành phố.

43

4.2.4. Kết luận

Sau quá trình thực hiện đề tài, sản phẩm cuối cùng là trang web có chức năng tìm kiếm để hỗ trợ cho người dùng tìm kiếm các bài báo nghiên cứu về GIS theo các tiêu chí như về vị trí là khu vực (tỉnh, huyện), năm, chủ đề, phần mềm, công cụ, kỹ thuật, thông số. Người dùng có thể tìm kiếm theo 1 tiêu chí hoặc nhiều tiêu chí. Sau khi tìm kiếm kết quả hiện ra là thông tin về các bài báo và vị trí nghiên cứu trên bản đồ. Tuy nhiên, trang web còn nhiều hạn chế về chức năng, giao diện chưa được đẹp khoa học và mức độ tối ưu chưa được tốt.

44

CHƯƠNG 5. KẾT LUẬN VÀ KIẾN NGHỊ 5.1. Kết quả 5.1. Kết quả

Sau khi nghiên cứu và thực hiện, đề tài đã đạt được những kết quả cụ thể sau đây: Về phía bản thân:

 Củng cố lại các kiến thức đã được học và tìm hiểu.

 Hiểu biết hơn các kiến thức về công nghệ WebGIS, các ngôn ngữ lập trình web như JavaScript, HTML, CSS, Python.

 Nâng cao khả năng tìm kiếm tài liệu, thơng tin. Về phía đề tài:

 Xây dựng được hệ thống CSDL về bài báo.

 Xây dựng được giao diện cho trang WebGIS.

 Xây dựng thành công các chức năng cơ bản như: chức năng hiển thị bản đồ, tương tác với bản đồ, chức năng tìm kiếm thơng tin của bài báo theo mục đích cụ thể.

Tuy nhiên, đề tài vẫn còn một số mặt hạn chế như:

 Trình độ kiến thức về lập trình của cá nhân còn nhiều hạn chế nên xây dựng giao diện và chức năng của website cịn sơ sài, thiếu sót nhiều về mặt nội dung và thiết kế chưa thật sự tối ưu nhất.

 Trang Web chỉ mới hoạt động trên máy ảo localhost, chưa có điều kiện để đưa lên Domain nên cịn có thể cịn các lỗi phát sinh về sau.

 Dữ liệu cịn khá ít, có nhiều hạn chế và thiếu sót trong q trình phân loại và thiết kế dữ liệu.

Video demo sản phẩm: https://www.youtube.com/watch?v=K0g5EkAdFYw Link code: https://github.com/sasakido58/webgis

5.2. Kiến nghị

Để đề tài hoàn thiện và ứng dụng vào thực tế hỗ trợ việc tìm kiếm cho hội thảo GIS, cần nghiên cứu và phát triển thêm các nội dung sau:

45

 Nghiên cứu xây dựng hệ thống quản lý CSDL hoàn thiện hơn.

 Xây dựng thêm các chức năng hỗ trợ cho việc tìm kiếm hiệu quả .

 Xây dựng giao diện và các chức năng trang web chuyên nghiệp hơn: xây dựng chức năng đăng nhập bằng tài khoản mạng xã hội, xây dựng giao diện phù hợp với các thiết bị sử dụng.

 Thử nghiệm trang WebGIS vào thực tế để kiểm tra đánh giá tính hiệu quả, rà sóat và hồn thiện các lỗi.

46

PHỤ LỤC 1: QUY TRÌNH ĐƯA DỮ LIỆU VÀO POSTGRESQL POSTGRESQL

Phụ lục 1 sẽ trình bày các bước thực hiện tương ứng khi chuyển dữ liệu từ file Excel *.xlsx sang các bảng trong cơ sở dữ liệu PostgreSQL.

Sau khi phân chia dữ liệu theo các bảng đối tượng bằng phần mềm Microsoft Excel, ta tiến hành import dữ liệu vào PostgreSQL :

Dữ liệu mở bằng phần mềm Microsoft Excel, dùng lệnh INSERT INTO trong SQL vào bảng như hình 1.

Lần lượt thực hiện theo thứ tự 1, 2, 3:

1. Nhập câu lệnh vào Excel như hình

2. Sao chép đoạn kết quả từ câu lệnh trên vào Notepad và Replace " thành '.

Hình 1 Câu lệnh trong Excel

Mở phần mềm PostgreSQL và chọn database là gis_papers đã tạo bảng nhom_bai_bao sau đó đưa đoạn kết quả đã Replace vào trong bảng nhom_bai_bao và chạy, nhận thông báo Successfully là đã đưa dữ liệu vào thành công.

47

PHỤ LỤC 2: QUY TRÌNH XÂY DỰNG WEBMAP

Quy trình xây dựng kết nối những dữ liệu không gian lên trang Web (webmap) bằng Geoserver đã được nêu ở mục 4.1. chương 4 của báo cáo. Sau đây là các bước cụ thể:

Bước 1: Mở Geoserver bằng cách dùng trình duyệt web để truy cập vào Geoserver theo đường dẫn localhost:8080/geoserver. Đăng nhập vào hệ thống bằng tài khoản mặc định username: admin và password: geoserver .

Hình 3 Giao diện Geoserver

Bước 2: Tạo Workspace là vùng làm việc trên Geoserver. Lần lượt thực hiện theo thứ tự 1, 2, 3:

1. Chọn Workspace

2. Chọn Add new workspace 3. Tạo với tên là gis_papers.

48

Hình 4 Các bước tạo Workspace

Bước 3: Tạo Stores để chứa dữ liệu.

Lần lượt thực hiện các thao tác 1, 2, 3 1. Chọn Stores.

2. Chọn Add new Store.

3. Tạo Store với tên là Vietnam, loại nguồn dữ liệu là PostGIS.

49

Sau khi chọn PostGIS, chọn Workspace mà ta đã tạo, điền tên Database, chọn Save và Geoserver sẽ hiển thị các Layer của Database. Sau đó chọn Publish với Layer cần thiết.

Sau khi chọn Publish, ta cần điền các thông số về hệ tọa độ cần thiết cho Layer.

Vì dữ liệu của đề tài thuộc hệ tọa độ WGS 84 nên ô Native SRS và ô Declared SRS chọn EPSG:4326 như hình 16. Sau đó cập nhập phần Bounding Boxes bằng cách nhấp chọn Compute from data và Compute from native bounds để tính tốn khung bản đồ. Nhấp chọn Save, Layer đã được tạo.

Hình 6 Điền các thơng số

Bước 4: Tạo Style

Để hiển thị bản đồ đẹp mắt, ta phải tạo Style cho các Layer theo các dạng dữ liệu. Đối với dữ liệu dạng điểm thì có kiểu Style Point, dạng vùng có kiểu Style Polygon, dạng đường có kiểu Style Line. Ta có thể sử dụng các kiểu Style đơn giản mà Geoserver đã hỗ trợ sẵn. Tuy nhiên, nếu muốn thiết kế Style để phù hợp với dữ liệu thì

Một phần của tài liệu XÂY DỰNG HỆ TÌM KIẾM TRI THỨC THÔNG TIN ĐỊA LÝ CÁC ĐỀ TÀI KHOA HỌC VỀ GIS (Trang 32)

Tải bản đầy đủ (PDF)

(80 trang)