Giới thiệu
Thực trạng mạng cáp thành phố Hà Nội và các vấn đề đặt ra cho bài toán tích hợp thông tin mạng cáp
1.1.1 Thực trạng mạng cáp thành phồ Hà Nội
Cùng với cả nước, thủ đô Hà Nội đang ngày càng phát triển với hạ tầng cơ sở hiện đại, đời sống người dân ngày càng được nâng cao Nhiều năm qua, Hà Nội đã và đang cố gắng để xây dựng hình ảnh một thủ đô văn minh, sạch đẹp, xứng đáng là trái tim của cả nước Tuy nhiên, vẫn còn nhiều hình ảnh đang tồn tại làm xấu đi bộ mặt của thủ đô thanh lịch Một trong số đó là hình ảnh những cây cột điện nối nhau cùng vô số dây nhợ chằng chịt xuất hiện trên khắp các con phố lớn, nhỏ.
Dù ở dưới lòng đường hay trên vỉa hè, ta sẽ gặp liên tiếp các cột điện với hàng trăm loại dây cáp chồng chéo lên nhau Chúng đã gây ra rất nhiều bức xúc trong cuộc sống hàng ngày của người dân thủ đô cũng như để lại một ấn tượng xấu đối với du khách nước ngoài Hàng trăm công trình lớn của thủ đô đã phải tốn rất nhiều tiền chỉ để di chuyển một cột điện ra khỏi lòng đường quy hoạch Những vụ tắc đường, tai nạn giao thông do dây điện rơi xuống lòng đường, cột điện đổ đang xuất hiện ngày càng nhiều hơn Câu chuyện về những chiếc cột điện làm phiền người tham gia thông đã trở thành vấn đề bức xúc của người dân, của các cấp lãnh đạo.
Còn khoảng 4 tháng nữa, chúng ta sẽ kỉ niệm 1000 năm Thăng Long – Hà Nội, nhưng thủ đô nghìn năm văn hiến, trái tim chính trị, văn hóa, xã hội của cả nước vẫn đang phải đối diện với những vấn đề nhức nhối về bộ mặt đô thị Ủy ban nhân dân thành phố Hà Nội đã thực hiện những chương trình nhằm ngầm hóa các tuyến cáp của thành phố Hà Nội và tiến tới xây dựng một “thành phố không dây” văn minh, hiện đại để có thể sánh ngang với các thủ đô tiên tiến trong khu vực và trên thế giới Nhưng kết quả là 100% các tuyến phố vẫn có dây điện chạy trên đầu. Năm 2008, Ủy ban nhân dân thành phố đã tiến hành hạ ngầm thí điểm 5 tuyến phố là Đinh Tiên Hoàng - Lê Thái Tổ, Tràng Tiền - Hàng Khay, Nguyễn Thái Học - Kim Mã, Văn Cao - Trần Duy Hưng, Hai Bà Trưng và khu chung cư Giảng Võ. Kinh phí đầu tư là hơn 200 tỉ đồng Nhưng có một thực tế là Hà Nội vẫn chưa hạ ngầm thành công bất kỳ tuyến phố nào.
Dây cáp chằng chịt gây ra vô vàn tình cảnh dở khóc dở cười với người dân thủ đô Một câu chuyện khá hài hước là sau khi một cành cây đổ làm đứt một đoạn cáp trên phố Khâm Thiên, một đơn vị viễn thông đến tính chuyện nối lại Song cuối cùng đành đi về vì không lần được ra "đầu dây mối nhợ" Điều này đồng nghĩa với việc một đường dây cáp mới sẽ lại được căng lên thay thể cho đường dây không thể nối kia Cứ như vậy, mỗi ngày số lượng dây trên mỗi cột điện lại tăng lên đáng kể. Theo con số thống kê tương đối, 40% số dây và cáp trên cột điện là vô chủ, những chiếc cột điện hàng ngày vẫn oằn mình với đủ loại rác thải trên vai, là nguy cơ gây ra bao nguy hiểm cho cuộc sống người dân Hà Nội.
Có một thực tế là từ khi có chủ trương ngầm hóa các tuyến cáp đến khi bắt tay vào quá trình thực hiện, các cơ quan, doanh nghiệp đều chung một ý kiến: đây là công việc quá khó khăn Cụ thể, doanh nghiệp cho rằng không có đường cống ngầm, gặp nhiều rắc rối về giấy tờ khi thi công; các cơ quan quản lý lại quy cho doanh nghiệp làm ăn không có kế hoạch nên công việc ngày càng khó khăn, dang dở Bản thân những cơ quan chủ lực như xây dựng, giao thông công chính cũng bị gặp khó khăn trong việc quy hoạch mà trên thực tế là chưa có biện pháp khả quan nào để thực hiện.
Dẫn chứng cho điều này, đại diện Viettel cho biết: Viettel đã ngầm hóa cáp theo chỉ đạo của UBND TP.Hà Nội Tuy nhiên, doanh nghiệp này mới triển khai được ở rất ít các tuyến phố Lý do là VNPT cũng không muốn chia sẻ hạ tầng, thậm chí không ít các cơ quan thuộc thành phố lại gây khó dễ trong quá trình thực hiện đàm phán với người dân, các ngành khác Đại diện EVN Telecom cũng cho biết quá trình xin phép và đàm phán là cực kỳ khó khăn do thủ tục rườm rà và thời gian cấp phép kéo dài.
Về phần mình, các cơ quan cũng phản biện là nếu không cấp phép thì doanh nghiệp dễ làm lung tung, lộn xộn và gây ảnh hưởng đến các công trình khác cũng như đời sống dân cư
Nói tóm lại, cả cơ quan chức năng và doanh nghiệp đều đang rất lúng túng trong việc giải bài toán khó mang tên Ngầm hóa các tuyến dây cáp trên đường phố
Hà Nội Người dân sẽ còn phải tiếp tục sống chung với cột điện dài dài và cảnh tắc đường do các doanh nghiệp đào bới vỉa hè để “hạ ngầm” tuyến cáp cũng như những vụ tắc đường, tai nạn giao thông do dây dợ chằng chịt vẫn sẽ tiếp tục diễn ra.
1.1.2 Các vấn đề đặt ra cho bài toán tích hợp và khai thác thông tin mạng cáp
Với mong muốn góp phần xây dựng thủ đô Hà Nội sớm hoàn thành mục tiêu
“thành phố không dây”, trở thành một thành phố hiện đại trong khu vực và trên thế giới, bên cạnh đó là góp một thành tích nhỏ chào mừng Đại lễ kỉ niệm 1000 năm
Thăng Long – Hà Nội, nhóm thực hiện đã khẩn trương bắt tay vào thực hiện dự án.
Khởi đầu dự án, hệ thống được xây dựng với hai đơn vị thử nghiệm là Điện lực Ba Đình và Trung tâm điều hành – Viễn thông Hà Nội, dữ liệu được thử nghiệm trên địa bàn quận Ba Đình Trong quá trình xây dựng hệ thống, một số yêu cầu đã nảy sinh từ phía nhà cung cấp thông tin cũng như từ việc tích hợp thông tin của hai nhà cung cấp Trước hết, dữ liệu của hai nhà cung cấp có những phần không được truy nhập do là dữ liệu bí mật nội bộ, dữ liệu có tính chất động thay đổi thường xuyên Vì vậy, mô hình SOA được đề xuất sử dụng để truy nhập dữ liệu được cho phép của các nhà cung cấp từ xa, đảm bảo tính cập nhật và tính bảo mật của thông tin
Thứ hai, một số khó khăn xuất phát từ việc xây dựng dịch vụ tích hợp thông tin của hệ thống Các nguồn thông tin không đồng nhất về cả mô hình dữ liệu và công nghệ lưu trữ, truy vấn Thời gian và công sức để tìm hiểu, thử nghiệm và xây dựng chuẩn dữ liệu phù hợp cho các nhà cung cấp là tương đối lớn Công việc này cần được làm hết sức cẩn thận và chu đáo để phục vụ cho sự tăng trưởng các nhà cung cấp trong tương lai
Thứ ba, các nguồn thông tin không có ràng buộc chặt chẽ với nhau do chúng xuất phát từ các đơn vị độc lập Để khai thác được thông tin từ các nguồn thông tin này, hệ thống phải có một cơ chế truy vấn hợp lý để lấy được chính xác thông tin từ các nguồn cung cấp và sau đó tổng hợp dữ liệu trả lại cho người sử dụng Ở đây, hệ thống sử dụng Ontology để giải quyết vấn đề này Dựa trên bộ từ vựng chung và sự ánh xạ giữa Ontology của các nguồn thông tin, các truy vấn sẽ được thực hiện trên cơ sở dữ liệu của từng nguồn thông tin sau đó được tổng hợp lại và trả lại kết quả cho người truy vấn trên giao diện Web.
Giới thiệu hệ thống tích hợp mạng cáp thành phố Hà Nội
Qua thời gian thu thập thông tin và phân tích thực trạng hệ thống mạng cáp thành phố Hà Nội, nhóm sinh viên dưới sự hướng dẫn của PGS.TS Nguyễn Thanh
Thủy và TS Nguyễn Hữu Đức đã đề xuất một hướng giải quyết mới cho bài toán quản lý hệ thống mạng cáp chằng chịt tại thủ đô Hà Nội.
Nhóm đề xuất xây dựng một hệ thống tích hợp và khai thác thông tin chung cho các đường cáp đang tồn tại trên địa bàn thành phố Hà Nội.Hệ thống được xây dựng với giao diện Web, thông tin trên trang Web sẽ được liên tục cập nhật từ các nhà cung cấp thông tin ( các đơn vị sở hữu đường cáp trên địa bàn thành phố HàNội) Trên cổng thông tin, người sử dụng có thể đăng nhập và truy vấn, tìm kiếm các thông tin về đường cáp được hiển thị trực quan trên bản đồ số Google Maps.
Hình 1-1 : Mô hình tổng quan hệ thống mạng cáp Đối với đối tượng nhà cung cấp, họ có thể đăng ký cung cấp thông tin về đường cáp mà họ quản lý và thu về lợi nhuận dựa trên số thông tin mà người sử dụng đã truy vấn của họ Nguyên tắc hợp tác như trên sẽ giúp mang lại lợi ích cho các bên tham gia và đem lại hiệu quả cao hơn Với sự tham gia của nhiều nhà cung cấp, trang Web sẽ mang đến một lượng thông tin tương đối đầy đủ và chính xác về các đối tượng cáp trên từng tuyến phố của thủ đô Hà Nội bao gồm tọa độ đường cáp và thuộc tính của đường cáp Những thông tin này sẽ hết sức hữu ích cho công tác quản lý, quy hoạch và hạ ngầm các đường cáp trong tương lai của các cơ quan nhà nước Bên cạnh đó, hệ thống còn là một kênh thông tin tham khảo hữu ích đối với các đối tượng nhà đầu tư khi triển khai dự án như phạm vi dự án có tuyến cáp nào chạy qua cần phải giải tỏa không, đó là tuyến cáp của đơn vị nào, biện pháp khắc phục ra sao, hoặc khi họ cần lắp đặt một đường cáp mới cho công trình của mình, họ có thể lựa chọn nhà cung cấp nào gần nhất… Ngoài ra, hệ thống cũng sẽ là một kênh tham khảo thông tin cho các hộ gia đình khi họ triển khai lắp đặt các đường cáp mới cho gia đình, tìm kiếm tuyến cáp gần nhất với gia đình.
Giới thiệu nhiệm vụ của đồ án
Với phần mô tả chung về hệ thống và những vấn đề đặt ra với hệ thống đã đề cập ở trên, cùng với các khó khăn về các công nghệ và các chuẩn sử dụng trong lưu trữ dữ liệu bản đồ của từng đơn vị, vấn đề chuyển đổi dữ liệu về dạng chuẩn và theo mô hình thống nhất là một bài toán khá khó khăn.Nhiệm vụ của đồ án là xây dựng các mô đun chuyển đổi và cung cấp dữ liệu (các Service Provider) cho hệ thống tích hợp và khai thác thông tin mạng cáp thành phồ Hà Nội
Các mô đun chuyển đổi dữ liệu sẽ làm nhiệm vụ chuyển đổi các dạng dữ liệu riêng của từng đơn vị thành viên thành mô hình dữ liệu thống nhất cho các đơn vị tham gia hệ thống Các bước chuyển đổi chính.
- Chuyển đổi chuẩn dữ liệu của bản đồ Do các đơn vị dùng các chuẩn lưu trữ bản đồ khác nhau (HN72, VN2000) nên ta sẽ sử dụng Mapinfo Professional để chuyển đổi chuẩn dữ liệu của các đơn vị về chuẩn chung của bản đồ Googlemaps (WGS84).
- Chuyển đổi dữ liệu từ dạng mapinfo của điện lực Ba Đình thành mô hình thống nhất cho các đơn vị của hệ thống trên Mysql GIS
Extension dùng thư viện mã nguồn mở mitab.dll của tổ chức
- Chuyển đổi dữ liệu dạng excel của viễn thông Hà Nội về dạng thành mô hình dữ liệu thống nhất cho các đơn vị của hệ thống trên
Các mô đun cung cấp dữ liệu sẽ cung cấp các truy vấn đến dữ liệu cho hệ thống dưới dạng các dịch vụ Web.
- Mô đun cung cấp dữ liệu được thực hiện dưới dạng các
Webservice chứa các dịch vụ ứng với từng đối tượng của đơn vị tham gia. Đồ án được thực hiện với 6 chương:
- Chương 2: Giới thiệu về các công nghệ nền tảng phục vụ cho các mô đun chuyển đổi và dịch vụ cung cấp dữ liệu bản đồ bao gồm: Mapinfo, Mysql GIS Extension, Webservice, Mitab.
- Chương 3: Giới thiệu về hiện trạng dữ liệu mạng cáp của điện lực Ba Đình và viễn thông Hà Nội Dữ liệu được lưu bởi các công nghệ khác nhau và chuẩn dữ liệu khác nhau.
- Chương 4: Với hiện trạng dữ liệu của từng đơn vị đã phân tích ở trên,ta xây dựng các mô đun chuyển đổi dữ liệu mạng cáp của từng đơn vị về mô hình dữ liệu thống nhất trên Mysql GIS.
- Chương 5: Dựa vào mô hình dữ liêu thống nhất xây dựng ở chương 4, ta xây dựng các mô đun cung cấp dữ liệu cho hệ thống của tại từng đơn vị dưới dạng các Webservice.
- Chương 6: Đưa ra kết quả thử nghiệm và hướng phát triển cho bài toán.
Chương tiếp theo, ta sẽ tìm hiểu về các công nghệ sử dụng để xây dựng hệ thống, mô đun chuyển đổi và cung cấp dữ liệu cho hệ thống.
Các công nghệ nền tảng
Kiến trúc hướng dịch vụ (SOA)
2.1.1 Các nguyên tắc trong SOA
Nguyên tắc phân định rạch ròi giữa các dịch vụ
Các dịch vụ thực hiện quá trình tương tác chủ yếu thông qua thành phần giao tiếp Thành phần giao tiếp này sẽ qui định về những định dạng thông điệp sử dụng trong quá trình trao đổi : thông điệp nào sẽ được chấp nhận và thông điệp nào sẽ không được xử lý Và đây chính là cách duy nhất để các đối tượng bên ngoài có thể truy cập thông tin và chức năng của dịch vụ Ta chỉ cần gửi các thông điệp theo các định dạng đã được định nghĩa trước mà không cần phải quan tâm đến cách xử lý của dịch vụ như thế nào (môi trường thực thi, ngôn ngữ lập trình ) Điều này đạt được do 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 của dịch vụ.
Các dịch vụ cần phải được triển khai và hoạt động như những thực thể độc lập mà không lệ thuộc vào một dịch vụ khác Dịch vụ phải có tính bền vững cao, nghĩa là nó sẽ không bị sụp đổ khi có sự cố Để thực hiện điều này, dịch vụ cần duy trì đầy đủ thông tin cần thiết cho quá trình hoạt động của mình để có thể tiếp tục hoạt động trong trường hợp một dịch vụ cộng tác bị hỏng; và để tránh các cuộc tấn công từ bên ngoài (như gửi thông điệp lỗi, hay gửi thông điệp ồ ạt) bằng cách sử dụng các kỹ thuật về an toàn, bảo mật
Các dịch vụ nên cung cấp thành phần giao tiếp của nó (interface) ra bên ngoài và hỗ trợ chia sẻ các cấu trúc thông tin, các ràng buộc dữ liệu thông qua các lược đồ dữ liệu (schema) chuẩn (độc lập ngôn ngữ, độc lập hệ nền.) Như thế hệ thống sẽ có tính liên kết và khả năng dễ mở rộng.
Nguyên tắc tương thích dựa trên chính sách Điều này nghĩa là, một dịch vụ khi muốn tương tác với một dịch vụ khác thì phải thỏa mãn các chính sách (policiy) và yêu cầu (requirements) của dịch vụ đó như là mã hóa, bảo mật Để thực hiện điều này, mỗi dịch vụ cần phải cung cấp công khai các yêu cầu, chính sách đó.
2.1.2 Các tính chất của SOA
Vấn đề kết nối (coupling) ám chỉ đến một số ràng buộc giữa cách module với nhau Có hai loại coupling là rời (loose) và chặt (tight) Các module có tính loose coupling có một số ràng buộc được mô tả rõ ràng trong khi các module có tính tight coupling lại có nhiều ràng buộc không thể biết trước Hầu như mọi kiến trúc phần mềm đều hướng đến tính loose coupling giữa các module Mức độ kết dính của mỗi hệ thống ảnh hưởng trực tiếp đến khả năng chỉnh sửa hệ thống của chính nó Kết dính càng chặt bao nhiêu thì càng có nhiều thay đổi liên quan cần chỉnh sửa ở phía sử dụng dịch vụ mỗi khi có thay đổi nào đó xảy ra Mức độ coupling tăng dần khi khi bên sử dụng dịch vụ càng cần biết nhiều thông tin ngầm định của bên cung cấp dịch vụ để sử dụng dịch vụ được cung cấp Nghĩa là nếu bên sử dụng dịch vụ biết vị trí và chi tiết định dạng dữ liệu của bên cung cấp dịch vụ thì quan hệ giữa hai bên càng chặt Ngược lại, nếu bên sử dụng dịch vụ không cần biết mọi thông tin chi tiết của dịch vụ trước khi triệu gọi nó thì quan hệ giữa hai bên càng có tính loose coupling.
SOA hỗ trợ kết nối lỏng thông qua việc sử dụng hợp đồng và liên kết (contract and binding) Một người sử dụng truy vấn đến nơi lưu trữ và cung cấp thông tin dịch vụ (registry) để lấy thông tin về loại dịch vụ cần sử dụng Registry sẽ trả về tất cả những dịch vụ thoải tiêu chuẩn tìm kiếm Từ bây giờ người dùng chỉ việc chọn dịch vụ mà mình cần và thực thi phương thức trên đó theo mô tả dịch vụ nhận được từ registry Bên sử dụng dịch vụ không cần phụ thuộc trực tiếp vào cài đặt của dịch vụ mà chỉ dựa trên hợp đồng mà dịch vụ đó hỗ trợ.
Tính kết nối lỏng giúp gỡ bỏ những ràng buộc điều khiển giữa những hệ thống đầu cuối Mỗi hệ thống có thể tự quản lý độc lập nhằm tăng hiệu suất, khả năng mở rộng và khả năng đáp ứng cao Những thay đổi cài đặt cũng được che dấu đi Kết nối lỏng đem đến sự độc lập giữa bên cung cấp và bên sử dụng nhưng nó đòi hỏi các giao diện phải theo chuẩn và cần một thành phần trung gian quản lý, trung chuyển yêu cầu giữa các hệ thống đầu cuối.
2.1.2.2 Sử dụng lại dịch vụ
Do các dịch vụ được cung cấp lên trên mạng và được đăng ký ở một nơi nhất định nên chúng dễ dàng được tìm thấy và tái sử dụng Nếu một dịch vụ không có khả năng tái sử dụng, nó cũng không cần đến giao diện mô tả Các dịch vụ có thể được tái sử dụng lại bằng cách kết hợp lại với nhau theo nhiều mục đích khác nhau.Tái sử dụng lại các dịch vụ còn giúp loại bỏ những thành phần trùng lắp và tăng độ vững chắc trong cài đặt, nó còn giúp đơn giản hoá việc quản trị Thực ra tái sử dụng dịch vụ lại dễ dàng hơn tái sử dụng thành tố hay lớp Những dịch vụ được dùng chung bởi tất cả các ứng dụng của một hệ thống SOA gọi là những dịch vụ hạ tầng chia sẻ. Đối với các dịch vụ bất đồng bộ, trong phương thức triệu gọi chúng, bên gọi gửi một thông điệp với đầy đủ thông tin ngữ cảnh tới bên nhận Bên nhận xử lý thông tin và trả kết quả về thông qua một “kênh thông điệp”, bên gọi không phải chờ cho đến khi thông điệp được xử lý xong Khi sử dụng kết hợp thông điệp dạng
“chia thô” với một dịch vụ chuyển thông điệp, các yêu cầu dịch vụ có thể được đưa vào hàng đợi và xử lý với tốc độ tối ưu Do bên gọi không phải chờ cho đến khi yêu cầu được xử lý xong và trả về nên không bị ảnh hưởng bởi việc xử lý trễ và lỗi khi thực thi các dịch vụ bất đồng bộ Trên lý thuyết một hệ thống SOA có thể hỗ trợ gửi và nhận cả thông điệp đồng bộ và bất đồng bộ.
Khi sử dụng các dịch vụ chia sẻ trên mạng, tùy theo mỗi ứng dụng sẽ có một luật kết hợp riêng gọi là các chính sách Các chính sách cần được quản lý các áp dụng cho mỗi dịch vụ cả khi thiết kế lẫn khi trong thời gian thực thi.
Việc này tăng khả năng tạo ra các dịch vụ có đặc tính tái sử dụng Bởi vì các chính sách được thiết kế tách biệt, và tùy vào mỗi ứng dụng nên giảm tối đa các thay đổi phần mềm Nếu không sử dụng các chính sách, các nhân viên phát triển phần mềm, nhóm điều hành và nhóm nhóm hỗ trợ phải làm việc với nhau trong suốt thời gian phát triển để cài đặt và kiểm tra những chính sách Ngược lại , nếu sử dụng chính sách, những nhân viên phát triển phần mềm giờ chỉ cần tập trung vào quy trình nghiệp vụ trong khi nhóm điều hành và nhóm hỗ trợ tập trung vào các luật kết hợp.
Khái niệm phân chia trong dịch vụ có thể hiểu theo hai cách Đầu tiên, nó được hiểu trong phạm vi toàn bộ kiến trúc cài đặt của dịch vụ Thứ hai, nó được hiểu trong phạm vi từng phương thức của từng giao diện triển khai Mức độ phân chia cũng được hiểu ở mức tương đối Ví dụ, nếu một dịch vụ cài đặt tất cả chức năng của một hệ thống ngân hàng, chúng ta xem nó là “chia thô” Nếu nó hỗ trợ chỉ chức năng kiểm tra thể tính dụng, chúng ta lại xem nó là “chia nhỏ”
Trước khi có kiến trúc thành tố và dịch vụ, các hệ thống phân tán chủ yếu dựa trên ý tưởng phân tán đối tượng Những hệ thống phân tán đối tượng chứa bên trong nó nhiều đối tượng fine-grained trao đổi thông tin với nhau qua mạng Mỗi đối tượng có những ràng buộc với nhiều đối tượng khác bên trong hệ thống Do truy cập đến một đối tượng phải qua nhiều trung gian mà hiệu quả đạt được không cao nên khuynh hướng thiết kế hệ thống phân tán đối tượng đang dần chuyển sang thiết kế các coarser-grained interface.
Hình 2-1 Các đối tượng fine-grained
Hình 2 - 1 minh họa một hệ thống phân tán đối tượng với nhiều mối liên kết. Cùng với kích thước và độ phức tạp của hệ thống ngày càng tăng, những ràng buộc này trở nên ngày càng khó quản lý Hiệu suất cũng giảm tương ứng số lượng các kết nối trung gian Khả năng bảo trì cũng giảm khi số lượng ràng buộc giữa những đối tượng ngày một tăng Khi một đối tượng cần được thay đổi ở giao diện, nó có thể ảnh hưởng đến một lượng lớn những đối tượng phân tán khác Nhân viên phát triển phải biên dịch và triển khai lại toàn bộ đối tượng bị thay đổi và những đối tượng liên quan với chúng.
Một hệ thống dựa trên quản lý các truy cấp đến đối tượng bên trong dịch vụ thông qua một số giao diện chia thô như Hình 2 - 3 Một dịch vụ có thể được cài đặt như một tập những đối tượng chia nhỏ nhưng bản thân những đối tượng đó lại được sử dụng trực tiếp qua mạng Trong khi đó một dịch vụ được cài đặt như những đối tượng có một hoặc nhiều đối tượng chia thô hoạt động như những mặt ngoài phân tán thì những đối tượng này lại có thể được sử dụng qua mạng và cho phép truy cập đến các đối tượng sâu bên trong Tuy nhiên các đối tựơng bên trong dịch vụ đó bây giờ sẽ trao đối trực tiếp với nhau ở trong cùng một máy chứ không phải trên mạng.
Hình 2-2 Các đối tượng chia thô
Dịch vụ Web
Dịch vụ Web (Web Service) được coi là một công nghệ mang đến cuộc cách mạng trong cách thức hoạt động của các dịch vụ B2B (Business to Business) và B2C(Business to Customer) Giá trị cơ bản của dịch vụ Web dựa trên việc cung cấp các phương thức theo chuẩn trong việc truy nhập đối với hệ thống đóng gói và hệ thống kế thừa Các phần mềm được viết bởi những ngôn ngữ lập trình khác nhau và chạy trên những nền tảng khác nhau có thể sử dụng dịch vụ Web để chuyển đổi dữ liệu thông qua mạng Internet theo cách giao tiếp tương tự bên trong một máy tính Tuy nhiên, công nghệ xây dựng dịch vụ Web không nhất thiết phải là các công nghệ mới, nó có thể kết hợp với các công nghệ đã có như XML, SOAP, WSDL, UDDI… Với sự phát triển và lớn mạnh của Internet, dịch vụ Web thật sự là một công nghệ đáng được quan tâm để giảm chi phí và độ phức tạp trong tích hợp và phát triển hệ thống. Chúng ta sẽ xem xét các dịch vụ Web từ mức khái niệm đến cách thức xây dựng.
Theo định nghĩa của W3C (World Wide Web Consortium), dịch vụ Web là một hệ thống phần mềm được thiết kế để hỗ trợ khả năng tương tác giữa các ứng dụng trên các máy tính khác nhau thông qua mạng Internet, giao diện chung và sự gắn kết của nó được mô tả bằng XML Dịch vụ Web là tài nguyên phần mềm có thể xác định bằng địa chỉ URL, thực hiện các chức năng và đưa ra các thông tin người dùng yêu cầu Một dịch vụ Web được tạo nên bằng cách lấy các chức năng và đóng gói chúng sao cho các ứng dụng khác dễ dàng nhìn thấy và có thể truy cập đến những dịch vụ mà nó thực hiện, đồng thời có thể yêu cầu thông tin từ dịch vụ Web khác Nó bao gồm các mô đun độc lập cho hoạt động của khách hàng và doanh nghiệp và bản thân nó được thực thi trên server.
Trước hết, có thể nói rằng ứng dụng cơ bản của Dịch vụ Web là tích hợp các hệ thống và là một trong những hoạt động chính khi phát triển hệ thống Trong hệ thống này, các ứng dụng cần được tích hợp với cơ sở dữ liệu (CSDL) và các ứng dụng khác, người sử dụng sẽ giao tiếp với CSDL để tiến hành phân tích và lấy dữ liệu Trong thời gian gần đây, việc phát triển mạnh mẽ của thương mại điện tử và B2B cũng đòi hỏi các hệ thống phải có khả năng tích hợp với CSDL của các đối tác kinh doanh (nghĩa là tương tác với hệ thống bên ngoài - bên cạnh tương tác với các thành phần bên trong của hệ thống trong doanh nghiệp).
Dưới khía cạnh kỹ thuật thì dịch vụ web là sự kết hợp các máy tính cá nhân với các thiết bị khác, các cơ sở dữ liệu và các mạng máy tính để tạo thành một cơ cấu tính toán ảo mà người sử dụng có thể làm việc thông qua các trình duyệt mạng.
Bản thân các dịch vụ này sẽ chạy trên các máy phục vụ trên nền Internet chứ không phải là các máy tính cá nhân, do vậy có thể chuyển các chức nǎng từ máy tính cá nhân lên Internet Người sử dụng có thể làm việc với các dịch vụ thông qua bất kỳ loại máy nào có hỗ trợ web service và có truy cập Internet, kể cả các thiết bị cầm tay Do đó các web service sẽ làm Internet biến đổi thành một nơi làm việc chứ không phải là một phương tiện để xem và tải nội dung. Điều này cũng sẽ đưa các dữ liệu và các ứng dụng từ máy tính cá nhân tới các máy phục vụ của một nhà cung cấp dịch vụ web Các máy phục vụ này cũng cần trở thành nguồn cung cấp cho người sử dụng cả về độ an toàn, độ riêng tư và khả nǎng truy nhập.
Các máy phục vụ ứng dụng sẽ là một phần quan trọng của các web service bởi vì thường thì các máy phục vụ này thực hiện các hoạt động ứng dụng phức tạp dựa trên sự chuyển giao giữa người sử dụng và các chương trình kinh doanh hay các cơ sở dữ liệu của một tổ chức nào đó.
Một số nhà quan sát ngành công nghiệp này cho rằng web service không thực sự là một khái niệm mới và phản ánh một phần không nhỏ khái niệm mạng máy tính vốn đã trở nên quen thuộc trong nhiều nǎm qua Dịch vụ Web chủ yếu dựa trên một lời gọi thủ tục từ xa không chặt chẽ mà có thể thay thế các lời gọi thủ tục từ xa chặt chẽ, đòi hỏi các kết nối API phù hợp đang phổ biến hiện nay.
2.2.2 Đặc điểm của dịch vụ Web
Dịch vụ Web cho phép client và server tương tác được với nhau ngay cả trong những môi trường khác nhau Ví dụ, đặt Web server cho ứng dụng trên một máy chủ chạy hệ điều hành Linux trong khi người dùng sử dụng máy tính chạy hệ điều hành Windows, ứng dụng vẫn có thể chạy và xử lý bình thường mà không cần thêm yêu cầu đặc biệt để tương thích giữa hai hệ điều hành này.
Phần lớn kĩ thuật của Dịch vụ Web được xây dựng dựa trên mã nguồn mở và được phát triển từ các chuẩn đã được công nhận, ví dụ như XML.
Một Dịch vụ Web bao gồm có nhiều mô-đun và có thể công bố lên mạng Internet.
Là sự kết hợp của việc phát triển theo hướng từng thành phần với những lĩnh vực cụ thể và cơ sở hạ tầng Web, đưa ra những lợi ích cho cả doanh nghiệp, khách hàng, những nhà cung cấp khác và cả những cá nhân thông qua mạng Internet.
Một ứng dụng khi được triển khai sẽ hoạt động theo mô hình client-server.
Nó có thể được triển khai bởi một phần mềm ứng dụng phía server ví dụ như PHP, Oracle Application server hay Microsoft.Net…
Ngày nay dịch vụ Web đang rất phát triển, những lĩnh vực trong cuộc sống có thể áp dụng và tích hợp dịch vụ Web là khá rộng lớn như dịch vụ chọn lọc và phân loại tin tức (hệ thống thư viện có kết nối đến web portal để tìm kiếm các thông tin cần thiết); ứng dụng cho các dịch vụ du lịch (cung cấp giá vé, thông tin về địa điểm…), các đại lý bán hàng qua mạng, thông tin thương mại như giá cả, tỷ giá hối đoái, đấu giá qua mạng…hay dịch vụ giao dịch trực tuyến (cho cả B2B và B2C) như đặt vé máy bay, thông tin thuê xe…
Các ứng dụng có tích hợp dịch vụ Web đã không còn là xa lạ, đặc biệt trong điều kiện thương mại điện tử đang bùng nổ và phát triển không ngừng cùng với sự lớn mạnh của Internet Bất kì một lĩnh vực nào trong cuộc sống cũng có thể tích hợp với dịch vụ Web, đây là cách thức kinh doanh và làm việc có hiệu quả bởi thời đại ngày nay là thời đại của truyền thông và trao đổi thông tin qua mạng Do vậy, việc phát triển và tích hợp các ứng dụng với dịch vụ Web đang được quan tâm phát triển là điều hoàn toàn dễ hiểu.
2.2.2.2 Ưu điểm của dịch vụ Web
Dịch vụ Web cung cấp khả năng hoạt động rộng lớn với các ứng dụng phần mềm khác nhau chạy trên những nền tảng khác nhau.
Sử dụng các giao thức và chuẩn mở Giao thức và định dạng dữ liệu dựa trên văn bản (text), giúp các lập trình viên dễ dàng hiểu được.
Nâng cao khả năng tái sử dụng.
Thúc đẩy đầu tư các hệ thống phần mềm đã tồn tại bằng cách cho phép các tiến trình/chức năng nghiệp vụ đóng gói trong giao diện dịch vụ Web.
Tạo mối quan hệ tương tác lẫn nhau và mềm dẻo giữa các thành phần trong hệ thống, dễ dàng cho việc phát triển các ứng dụng phân tán.
Thúc đẩy hệ thống tích hợp, giảm sự phức tạp của hệ thống, hạ giá thành hoạt động, phát triển hệ thống nhanh và tương tác hiệu quả với hệ thống của các doanh nghiệp khác.
2.2.2.3 Nhược điểm của dịch vụ Web
Những thiệt hại lớn sẽ xảy ra vào khoảng thời gian chết của Dịch vụ Web, giao diện không thay đổi, có thể lỗi nếu một máy khách không được nâng cấp, thiếu các giao thức cho việc vận hành.
Có quá nhiều chuẩn cho dịch vụ Web khiến người dùng khó nắm bắt.
Phải quan tâm nhiều hơn đến vấn đề an toàn và bảo mật.
2.2.3 Kiến trúc của dịch vụ Web
Công nghệ GIS và Mapinfo
GIS là viết tắt của cụm từ Geographic Information System – có nghĩa là Hệ thống thông tin địa lý, là hệ thống báo cáo, lưu trữ, phân tích các thông tin về các đặc điểm cấu thành bề mặt trái đất GIS là một dạng riêng của hệ thông thông tin áp dụng cho dữ liệu Vật lý Một hệ thống thông tin là một tập hợp của các tiến trình,được thực thi trên dữ liệu thô, để cung cấp thông tin hữu ích trợ giúp ra quyết định.Một hệ thống thông tin địa lý sử dụng dữ liệu tham chiếu địa lý cũng như các dữ liệu không mang tính không gian và bao gồm các quá trình hỗ trợ phân tích không gian Trong GIS, mục đích chung là trợ giúp ra quyết đinh, hỗ trợ cho việc quản lý sử dụng đất đai, tài nguyên, giao thông, thương mại, đại dương hoặc bất cứ các thực thể phân bố không gian nào Sự kết nối giữa các phần tử của hệ thống là yếu tố địa lý, ví dụ như địa điểm, sự gẩn kề địa lý, sự phân bố không gian Như vậy GIS có thể được hiểu như một hệ thống của các phần cứng, phần mềm, nhân lực và các thủ tục được thiết kể để hỗ trợ cho việc theo dõi, quản lý, thao tác, phân tích, đo đạc, mô tả và hiển thị dữ liệu tham chiếu không gian nhằm giải quyết việc lập kế hoạch phức tạp và các vấn đề về quản lý Mặc dù nhiều chương trình máy tính có thể sử dụng dữ liệu không gian (ví dụ AutoCAD) nhưng GIS còn bao gồm khả năng thực hiện các hoạt động không gian GIS không giống với các hệ thống trợ giúp thiết kế bằng máy tính CAD (Computer Aided Design) dùng để vẽ các bản vẽ, đối tượng kỹ thuật Sự khác nhau chủ yếu giữa GIS và CAD là: GIS chủ yếu quản lý các thông tin đối tượng tồn tại trong thế giới thực còn CAD là thiết kế các đối tượng chưa có
Hệ thống thông tin địa lý (GIS) là một công cụ máy tính để 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ác thao tác dữ liệu thông thường (cấu trúc hỏi đáp) với các phép phân tích thống kê, phân tích địa lý Những khả năng này phân biệt GIS với các hệ thống thông tin khác và làm cho GIS có phạm vi ứng dụng rộng rãi trong nhiều lĩnh vực khác nhau (phân tích các sự kiện, dự án tác động và hoạch định chiến lược) Hiện nay, những thách thức mà con người phải đối mặt là các vấn đề như bùng nổ dân số, ô nhiễm môi trường, nguồn nước, khoáng sản, phá rừng, thiên tai chiếm một không gian địa lý quan trọng Lập bản đồ và phân tích địa lý không phải kỹ thuật mới, nhưng GIS thực thi các công việc này tốt và nhanh hơn các phương pháp thủ công cũ Trước khi có công nghệ GIS chỉ một số ít người có kỹ năng cần thiết để sử dụng thông tin địa lý trợ giúp cho việc giải quyết các vấn đề và đưa ra các quyết định.
Ngày nay, GIS là một ngành công nghiệp có tiềm năng lớn với sự tham gia của hàng trăm nghìn người trên thế giới Các chuyên gia trong mọi lĩnh vực đều nhận thấy ưu điểm và tầm quan trọng của sự kết hợp công việc của họ với GIS.
2.3.1.3 Một số ứng dụng của GIS
Quản lý tài nguyên tự nhiên
Các ứng dụng GIS được liên tục phát triển trong lĩnh vực quản lý và bảo vệ môi trường Từ chương trình kiểm kê nguồn tài nguyên thiên nhiên của Canada trong những năm 1960, đến các chương trình GIS cấp bang của Mỹ bắt đầu vào cuối những năm 1970, đến mô hình hoá quản lý các sự cố môi trường hiện đang được phát triển, công nghệ GIS đã cung cấp các phương tiện để quản lý và phân tích các yếu tố ảnh hưởng đến môi trường ngày càng hữu hiệu hơn Xu hướng hiện nay trong quản lý môi trường là sử dụng tối đa khả năng cho phép của GIS Sự phát triển của phần cứng làm cho máy tính có nhiều khả năng hơn, mạnh hơn và các ứng dụng GIS cũng trở nên thân thiện hơn với người sử dụng bởi các khả năng hiển thị dữ liệu ba chiều, các công cụ phân tích không gian và giao diện tuỳ biến.
Nhờ khả năng xử lý các tập hợp dữ liệu lớn từ các cơ sở dữ liệu phức tạp, nên GIS thích hợp với các nhiệm vụ quản lý môi trường Các mô hình phức tạp cũng có thể dễ dàng cập nhật thông tin nhờ sử dụng GIS GIS được sử dụng để cung cấp thông tin nhanh hơn và hiệu quả hơn cho các nhà hoạch định chính sách Các cơ quan chính phủ dùng GIS trong quản lý các nguồn tài nguyên thiên nhiên, trong các hoạt động quy hoạch, mô hình hoá và quan trắc GIS cũng được sử dụng để đánh giá các sự cố môi trường Các cơ quan chính phủ và địa phương phải đối phó nhanh chóng với thiên tai, các rủi ro trong công nghiệp và các sự cố môi trường Thông tin địa lý là những thông tin quan trọng để đưa ra những quyết định một cách nhanh chóng. Các phân tích GIS phụ thuộc vào chất lượng, giá trị và tính tương thích của các dữ liệu địa lý dạng số Việc chia xẻ dữ liệu sẽ kích thích sự phát triển các nhu cầu về sản phẩm và dịch vụ GIS Các nguồn dữ liệu tăng thêm nhờ sự kết hợp của GIS với GPS (hệ thống định vị toàn cầu) và công nghệ viễn thám, đã cung cấp các công cụ thu thập dữ liệu hiệu quả hơn Với GIS, chúng ta có thể xác định được những vùng sẽ chịu ảnh hưởng của sự cố môi trường dựa vào cấu trúc từng vùng Ngoài ra, GIS còn được dùng để tính toán những thiệt hại có thể xảy ra: ước tính thiệt hại tài chính, phá huỷ cơ sở hạ tầng và những ảnh hưởng đối với vùng khác do thiệt hại từ các ảnh hưởng dịch vụ
Hình 2-8 Giám sát và dự báo sự cố môi trường
Hình 2-9 Quản lý tài nguyên thiên nhiên
GIS là công cụ đắc lực trong quản lý tài nguyên thiên nhiên GIS có thể được dùng để tạo bản đồ phân bố tài nguyên, kiểm kê, đánh giá trữ lượng tài nguyên, Những ứng dụng của GIS trong lĩnh vực này là không giới hạn Ngoài ra GIS còn co rất nhiều ứng dụng trong các lĩnh vực khác: Giao thông vận tải, Quản lý đất đai, Quản lý tài sản, Các công trình công cộng, Nông nghiệp, Lâm nghiệp, Khí tượng thủy văn, Dịch vụ tài chính, Chính quyền địa phương, Bán lẻ, Các dịch vụ điện nước, gas, điện thoại và cả Xác định xu thế trong tương lai.
WebGIS – Công nghệ GIS qua mạng
Việc tích hợp công nghệ GIS và internet đã tạo ra cơ hội để mọi người đều có thể sử dụng dữ liệu và các chức năng GIS mà không cần cài đặt bất kỳ một phần mềm GIS chuyên dụng nào Tuy nhiên việc mở rộng nhóm người sử dụng GIS đã gây ra nhiều thách thức về mặt công nghệ Do đó, kiến trúc WebGIS và các mô hình dịch vụ GIS phân tán là một trong các chủ đề nghiên cứu quan trọng nhất hiện nay (Smith,
Trong các hệ thống WebGIS, kiến trúc được chấp nhận nhiều nhất là kiến trúc 3 lớp(three-tier) client-server điển hình mà trong đó nhiệm vụ xử lý địa lý được phân về server side và client side Một client điển hình là một trình duyệt Web Server side bao gồm một Web Server, phần mềm WebGIS và cơ sở dữ liệu (Helali 2001) Một vài hệ thống WebGIS đã được xây dựng từ việc mở rộng các hệ thống GIS độc quyền Trong hệ thống GIS mạng này, chỉ có phần mềm GIS độc quyền chạy tại server side, một giao diện client tại client side và một middleware ở server side để truyền thông giữa client và phần mềm GIS độc quyền tạo ra một dạng kiến trúc, gọi là kiến trúc thin client Trong kiến trúc thin client, các client chỉ có giao diện người dùng để truyền thông với server và hiển thị kết quả, tất cả các công việc xử lý được thực hiện trên server Các server thường mạnh hơn so với các client và nó quản lý nguồn tài nguyên tập trung cung như tập trung tất cả các chức năng chủ yếu Có một số công nghệ được sử dụng để thực hiện việc nối kết GIS với World Wide Web như: CGI, API, ASP, JSP và Java Servlet (Helali, 2001) Trong kiến trúc thin client, người sử dụng ở client side không cần bất kỳ tri thức nào về sự liên kết của IMS tại server side, nhưng những nhà quản trị hệ thống hoặc những nhà phát triển ứng dụng phải quen thuộc với những phương pháp này Kiến trúc này dùng trong các hệ thống ESRI ArcView IMS, MapObjects IMS, và MapInfo MapXtreme Nói chung, một trình duyệt mạng có thể sử dụng tài liệu HTML, và hỗ trợ các định dạng ảnh chuẩn như GIF, JPEG,…Tuy nhiên, để giải quyết những định dạng dữ liệu khác như dữ liệu vector, video clips,… cũng như việc cung cấp một số chức năng xử lý GIS thì chức năng của trình duyệt tại client side cần phải được mở rộng Gần đây, với sự phát triển của lập trình hướng đối tượng, các thành phần phần mềm đã được tạo ra và có thể được gửi tới client và chạy trên client, chẳng hạn như Java Applet, ActiveX hay plug-ins Điều này tạo ra kiến trúc thick client, cho phép client thực hiện phần lớn các công việc xử lý một cách cục bộ Ngoài việc hỗ trợ cả định dạng dữ liệu raster và vector, một số chức năng GIS còn có thể được xây dựng trong các Plug-ins, ActiveX, Java Applet,…để cung cấp cho client thông qua giao diện GUI tại client side (Byong-Lyol 1998) Có nhiều công nghệ được đưa vào GIS nhằm tạo ra khả năng cung cấp thông tin địa lý trên internet Một số công nghệ này là:
1 Giao diện cổng chung (Common Gateway Interface-CGI)
CGI là một phương pháp chuẩn để nối kết ứng dụng GIS với HTML trong Web Server phục vụ cho việc cung cấp thông tin GIS tới client (Xia và Chao, 1995). CGI hoạt động như một middleware giữa Web server và GIS server Nó nhận các yêu cầu của người sử dụng từ HTML và chuyển các yêu cầu này tới ứng dụng GIS. Khi ứng dụng GIS kết thúc việc xử lý, kết quả được chuyển ngược tới CGI, CGI tự động tạo ra file HTML có gắn bản đồ và gửi nó tới Web server Web Server sau đó gửi file HTML này tới client Ưu điểm lớn nhất của CGI là sự độc lập trình duyệt của nó và cho phép các hệ thống GIS độc quyền dễ dàng mở rộng để trở thành GIS Server Tuy nhiên, nhược điểm của phương pháp này là bản đồ cung cấp cho client chỉ là các ảnh raster tĩnh cũng như nó không cung cấp bất kỳ một chức năng GIS nào và không hỗ trợ dữ liệu vector (Yaakko et al, 1999) Sự bất lực trong việc hỗ trợ dữ liệu vector và thiếu khả năng cung cấp chức năng GIS một cách trực tiếp tới client làm cho CGI khó có thể thoả mãn những yêu cầu của việc phát triển WebGIS.
Phương pháp plug-ins được thực hiện bằng việc cài đặt các phần mở rộng của phần mềm GIS tới trình duyệt web và trao đổi thông tin với trình duyệt trong thời gian thao tác của người sử dụng Plug-ins là một loại của giao diện chương trình ứng dụng (Application Program Interface-API) cung cấp bởi tập đoàn Netscape Communiations để mở rộng chức năng trình duyệt Chức năng GIS được plug vào một trình duyệt làm cho trình duyệt có khả năng đọc dữ liệu GIS dạng vector, và trình duyệt có thể xử lý dữ liệu địa lý một cách cục bộ Khác với phương pháp CGI, phương pháp Plug-ins cần được cài đặt một cách cục bộ Tính tương thích với các flatform khác nhau, sự thay đổi phiên bản tạo ra một vấn đề, và điều này gây ra sự bất tiện trong việc cập nhật hệ thống
3 Tài liệu thông minh (Intelligent Document)
Intelligent Document là một dạng tài liệu thông minh nén, định dạng dữ liệu vector, độc lập (Autodesk, 1997; Interraph, 2000) Tài liệu thông minh này được thiết kế để có thể truyền trên mạng và chứa đựng tất cả các thông tin cần thiết như đặc tính bản đồ chung, thông tin bảo mật, đặc tính lớp bản đồ, dữ liệu bản đồ thô và các đặc tả giao diện người dùng Bằng việc mở rộng chức năng cho trình duyệt chuẩn, tài liệu bản đồ có thể thông minh theo ý nghĩa là nó chứa các công cụ tự xử lý và các thông tin liên quan Hiện nay có một số dạng đồ hoạ thông minh chẳng hạn như WebCGM có thể đáp ứng được yêu cầu đối với dạng đồ hoạ vector 2D trong các tài liệu điện tử trên WWW (Gebharlt và Henderson, 1999) cũng như nó có thể được sử dụng để biểu diễn thông tin GIS bên trong các tài liệu Web Trong phương pháp tài liệu thông minh, các plug-ins là cần thiết để làm cho các trình duyệt chuẩn hiểu được các file thông minh và cung cấp sự hỗ trợ cho các chức năng GIS Nhiều nhà cung cấp WebGIS đã có các giải pháp plug-ins và WebCGM riêng của họ, chẳng hạn như Autodesk MapGui có MWF (Map Window File ) và MapGui Plug-ins (Autodesk, 1997), Intergraph GeoMedia Web Map có MDF (Map Definition File) và ActiveCGMTM (Intergraph, 2000), Các dạng tài liệu đồ hoạ thông minh chuẩn khác chẳng hạn như SVG (Scalable Vector Graphics) thì không cần phải có plug-ins do trình duyệt mới đều hiểu được file SVG Tài liệu thông minh có thể hiệu quả về mặt phát hành dữ liệu địa lý, nhưng việc hỗ trợ các chức năng GIS vẫn giới hạn
4 Ngôn ngữ lập trình internet
Ngôn ngữ lập trình internet thông dụng nhất là ngôn ngữ Java phát triển bởiSun Corporation Java cung cấp một loạt các giải pháp để thay thế các công nghệ cũ: Tại client side, nó có Java applet Tại server side, nó có Java servlet để thay thế cho CGI Trong sự truyền thông client – server, nó cung cấp phương pháp triệu gọi phương thức từ xa (RMI), có thể được sử dụng để cài đặt các tác vụ máy tính phân tán Kỹ thuật lập trình internet khác là Microsoft’s ActiveX, được phát triển dựa trên điều khiển OLE (OCX) của Microssoft ActiveX có thể mở rộng chức năng cho trình duyệt chuẩn bằng việc tải các thành phần ActiveX tới client Ví dụ, các công cụ GIS có thể được cài đặt trong các thành phần ActiveX và nhúng vào file HTML. Các công cụ GIS này có thể được tải tới máy client khi client truy nhập vào trang web Trình duyệt có chức năng mở rộng sau đó hiển thị và xử lý dữ liệu địa lý Sự khác biệt chính giữa phương pháp ngôn ngữ lập trình internet với các phương pháp là phương pháp lập trình internet cho phép tải chương trình tới client và thực thi nó client trong thời gian kết nối Do đó, việc cài đặt các phần mềm chuyên dụng ở client side được bỏ qua Sự thay đổi lớn này có ưu điểm là nó làm cho việc triển khai và quản lý phiên bản phần mềm dễ dàng hơn Mặt khác, vì nó chạy trên client nên các dữ liệu không gian kích thước lớn chỉ phải truyền tới client khi client cần dữ liệu mới từ server làm giảm thời gian đáp ứng và sự truyền tải mạng Ưu điểm quan trọng khác của phương pháp ngôn ngữ lập trình internet là sự linh hoạt và có thể thay đổi của cấu trúc bên trong chương trình, điều này rất hữu ích cho việc phát triển các mô hình GIS phân tán.
2.2.2 Mapinfo trong lưu trữ và chuyển đổi dữ liệu bản đồ
2.2.2.1 Mapinfo trong lưu trữ dữ liệu bản đồ
MapInfo là một phần mềm thuộc nhóm GIS được xây dựng nhằm giúp chúng ta xử lý bản đồ số cũng như quản lý và phân tích các thông tin liên quan đến địa lý. Trước đây xử lý bản đồ là một chức năng chuyên nghiệp của ngành bản đồ học Với sự ra đời của MapInfo, việc xử lý bản đồ trở nên một công việc mà mọi người đều có thể làm được Không những có các chức năng của bản đồ thông dụng như cung cấp thông tin địa lý, giúp định vị, làm bản đồ, MapInfo còn là một phần mềm rất mạnh giúp xử lý và phân tích thông tin địa lý Nói cách khác MapInfo là một hệ cơ sở dữ liệu địa lý Tính năng này được tăng cường thêm nhờ khả năng liên kết được với các hệ cơ sở dữ liệu khác như Microsoft Access, SQL Server, Oracle, Sau đây ta sẽ tìm hiểu sơ bộ về bản đồ số trong MapInfo.
Một bản đồ trong MapInfo bao gồm hai phần: phần bản đồ (hay đồ họa) và phần dữ liệu (hay thông tin)
Phần đồ hoạ của MapInfo là những đối tượng được biểu hiện trên màn hình máy tính Phần đồ hoạ được hiển thị trong cửa sổ bản đồ (Map Window) MapInfo sử dụng các khái niệm toán học để biểu diễn các chi tiết trên bản đồ Có ba kiểu khái niệm toán học chính được sử dụng để xây dựng bản đồ trên MapInfo:
- Điểm: là một đối tượng toán học không có kích thước, không có chiều dài, chỉ có toạ độ (trong một hệ toạ độ nào đó) Điểm dùng để minh họa cho một thành phố, một trạm xăng, một trường học, Điểm được tượng trưng bằng một chấm. Trong MapInfo, tuỳ theo nội dung của điểm đó (minh họa cho cái gì) mà ta có thể chọn kiểu biểu tượng để minh hoạ cho một điểm Vì vậy điểm trong MapInfo được gọi là biểu tượng (symbol).
- Đường: là một đối tượng hình học không có chiều rộng nhưng có chiều dài. Đường trong MapInfo bao gồm các thành phần nhỏ được gọi là đoạn (segment).
Mysql GIS Extenion
2.3.1 Hệ quản trị dữ liệu Mysql
Mysql là hệ quản trị cơ sở dữ liệu mã nguồn mở phổ biến và được các nhà phát triển ưa chuộng trong quá trình phát triển ứng dụng Mysql là hệ quản trị cơ sở dữ liệu tốc độ cao, ổn định và dễ sử dụng, có tính khả chuyển, hoạt động trên nhiều hệ điều hành, cung cấp một hệ thống lớn với các tiện ích rất mạnh Với tốc độ và tính bảo mật cao, Mysql rất thích hợp cho các ứng dụng có truy cập cơ sở dữ liệu trên Internet.
2.3.1.2 Đặc điểm của hệ quản trị dữ liệu Mysql
- MySQL là một hệ quản trị nhỏ, bảo mật, và rất dễ sử dụng, thường được sử dụng cho các ứng dụng nhỏ và trung bình Nó được sử dụng cho các ứng dụng client/server với máy chủ mạnh như UNIX, Windows NT, và đặc biệt trên máy chủ UNIX.
- MySQL hỗ trợ các điểm vào là ANSI SQL92 và ODBC mức 0-2 SQL chuẩn.
- MySQL hỗ trợ nhiều ngôn ngữ cho việc thông báo lỗi như : Czec, Dutc, English, Estonian, French, German, Hungarian, Italian, Norwegian Nynorsk, Polish, Portuguese, Spanish and Swedish Ngôn ngữ được hỗ trợ mặc định cho dữ liệu là ISO-8859-1 (Lantin1), muốn thay đổi phải sửa trong mã nguồn.
- Ngôn ngữ lập trình sử dụng viết các hàm API để thâm nhập cơ sở dữ liệu MySQL có thể là C, Perl, PHP
- Các bảng (table) trong cơ sở dữ liệu MySQL có kích thước rất lớn và được lưu ở thư mục Datas Kích thước lớn nhất của một bảng tối thiểu là 4GB và nó còn phụ thuộc và kích thước lớn nhất của một file do hệ điều hành quy định
- Cơ sở dữ liệu MySQL rất dễ quản lý và có tốc độ xử lý cao hơn tới ba bốn lần so với các hệ quản trị cơ sở dữ liệu khác.
- MySQL là một hệ quản trị cơ sở dữ liệu mô hình quan hệ, nó có mã nguồn mở Nó được cung cấp miễn phí trên các máy chủ UNIX, OS/2 và cả trên Windows.
2.3.2.1 Tổng quan Mysql GIS Extension
- Các hệ quản trị dữ liệu hiện tại đều đang phát triển và dần dần hoàn thiện thêm các tính năng về mở rộng kích cỡ cơ sở dữ liệu, chức năng về các kiểu dữ liệu. Tuy nhiên, các kiểu dữ liệu trong các hệ quản trị cơ sở dữ liệu thường tương đương với kiểu dữ liệu của ngôn ngữ lập trình mà chưa phù hợp với các đối tượng trong thực tế, đặc biệt là các đối tượng địa lý Do đó, việc mở rộng các kiểu dữ liệu phục vụ để lưu trữ và truy vấn các kiểu dữ liệu địa lý là một bài toán đặt ra đối với các hệ quản trị cơ sở dữ liệu.
- Từ phiên bản Mysql 4.1 trở đi, Mysql giới thiệu các bản mở rộng về chức năng không gian, cho phép tạo, lưu trữ và phân tích các đối tượng địa lý.
- Tập hợp các kiểu dữ liệu địa lý trong Mysql GIS được dựa trên mô hình địa lý (Geometry Model) của tổ chứ OpenGIS Trong mô hình này, mỗi đối tượng địa lý có các đặc tính sau.
Liên kết với một hệ thống định vị không gian, cho phép mô tả không gian mà đối tượng được định nghĩa
Thuộc về một vài lớp địa lý
2.3.2.2 Các kiểu giá trị hỗ trợ trong truy vấn (Không hỗ trợ trong Mysql)
Dữ liệu được tạo, lưu trữ và truy vấn dưới dạng các byte Một giá trị WKB bao gồm các phần:
- Byte order (1 byte): xác định kiểu lưu giá trị là litte-endian (0) hay big-endian (1)
- Kiểu dữ liệu theo WKB (4 byte): xác định kiểu của dữ liệu Được đánh số từ 1 đến 7 theo thứ tự :Point, LineString, Polygon, MultiPoint, MultiLineString, MultiPolygon, GeometryCollection.
- Tọa độ các điểm: mỗi điểm dung 8 byte để lưu trữ theo định dạng IEEE 754.
- Ví dụ: Point(1 1) được lưu trữ theo dạng WKB như sau:
Kiểu giá trị này ít được sử dụng hơn vì gây khó khăn cho cả người tạo và truy vấn.
Dữ liệu được tạo, lưu trữ và truy vấn dưới dạng văn bản text kèm theo các từ khóa của từng kiểu dữ liệu Ví dụ về các kiểu giá trị WKT:
- Polygon với một vòng ngoài và một vòng trong :
2.3.2.3 Các kiểu dữ liệu mở rộng trong Mysql GIS Extension
Hình 2-10 : Kiểu dữ liệu mở rộng trong Mysql Extension
- Type: kiểu dữ liệu tường minh của đối tượng (VD:Point,
- SRID (Spatial Reference Identifier): thông tin về Hệ thống tham chiếu không gian (Spatial Reference System – SRS) mà trong đó đối tượng được định nghĩa.
- Coordinate: các tọa độ của đối tượng trong SRS xác định ở trên.
- Interior: Vùng không gian đối tượng chiếm giữ
- Exterior: Vùng không gian đối tượng không chiếm giữ
- Boundary: Đường biên giữa hai vùng trên.
- MBR (Minimum Bounding Rectangle): vùng chữ nhật xác định bởi các tọa độ min và max của đối tượng ((MINX MINY, MAXX MINY, MAXX MAXY, MINX MAXY, MINX MINY))
- Simple hoặc Non-simple: áp dụng cho các kiểu LineString,
- Closed or not closed: áp dụng cho các kiểu LineString,
- Empty or not empty: đối tượng có chứa điểm hay không.
- Dimension: chiều của đối tượng (-1: đối tượng empty; 0,1,2: đối tượng 0,1,2 chiều)
- Simple: nếu không có điểm nào lặp lại
- Closed: nếu điểm đầu trùng điểm cuối
- Nếu là closed thì boundary rỗng (empty), nếu là non-closed thì boundary chứa hai điểm đầu mút.
- Tọa độ các cặp điểm xác định từng đoạn thẳng.
- LineString là Line nếu nó có đúng hai điểm
- LineString là LinearString nếu nó closed và simple.
- Closed: phụ thuộc vào exterior và interior
- Boundary của lớp Polygon bao gồm một tập hợp các vòng LinearRing tạo thành các đường biên cho vùng ngoài và trong của đối tượng
- Không có hai vòng nào cắt nhau, chúng thường chỉ tiếp xúc với nhau.
- Interior của một đối tượng Polygon là một tập hợp các điểm liền nhau.
- Exterior của một đối tượng Polygon và các holes( xác định bởi cácLinearRing) không nối với nhau.
Một đối tượng GeometryCollection là một tập hợp các đối tượng hình học ở các lớp khác nhau Các đối tượng này phải có cùng Hệ tham chiếu không gian (SRS) Về mặt tổng quát thì lớp GeometryCollection không bắt buộc các đối tượng tham gia phải có chung quan hệ nào đó, nhưng ở các lớp con thì phải có điều này Các đối tượng có thể có quan hệ chung về :
- Kiểu dữ liệu (VD: MultiPoint bao gồm các đối tượng kiểu Point)
- Quan hệ về mức độ chồng lên nhau giữa các thành phần.
Bao gồm các thành phần kiểu Point:
- Simple: nếu không có hai điểm nào trùng nhau
- Boundary: tập rỗng (empty set)
Bao gồm các thành phần kiểu Curve.
- Simple: nếu và chỉ nếu các thành phần là simple
- Boundary được xác định bằng qui tắc chẵn-lẻ: một điểm thuộc boundary khi nó thuộc vào boundary của một số lẻ các thành phần.
- Closed: nếu và chỉ nếu các thành phần là simple.
- Boundary của một đối tượng MultiCurve closed là rỗng
Bao gồm các thành phần kiểu Surface.
- Miền trong của các thành phần Surface trong Multisurface không giao nhau.
- Biên của hai thành phần Surface bất kỳ trong MultiSurface giao nhau tại hữu hạn một số điểm.
Bao gồm các thành phần kiểu LineString
- Biên của một đối tượng MultiPolygon là một tập hợp các đường đóng (kiểu LineString) tương ứng với biên của các thành phần Polygon.
2.3.2.4 Các truy vấn Mysql GIS Extension
Tạo bảng dữ liệu chưa đối tượng GIS
Ví dụ:Tạo 1 bảng chứa dữ liệu hình học có tên là Points bao gồm tập các bản ghi có name và vị trí là 1 điểm point mysql>create table Points ( name VARCHAR(20) PRIMARY KEY, location Point NOT NULL , description VARCHAR(200),
Chèn giá trị vào bảng
Thực hiện việc chèn trực tiếp trong bảng: mysql>INSERT INTO geom VALUES (GeomFromText('POINT(1 1)'));
Truy vấn lấy dữ liệu từ bảng
Trả về tập các đối tg có name và location đc định dạng GIS,thực tế ASTEXT có chức năng chuyển đổi 1 miêu tả hình học về 1 xâu mysql>SELECT name, AsText (location) FROM Points;
Trả về kích thước của một đối tượng mysql>SELECT Dimension(GeomFromText('LineString(1 1,2 2)'));
Phân tích hiện trạng dữ liệu mạng cáp từng đơn vị
Hiện trạng dữ liệu mạng cáp điện lực Ba Đình
3.1.1 Mô tả tổng quan về hệ thống mạng cáp Điện Lực
Theo mô hình quản lý của Điện lực, hiện nay lưới điện được quản lý bởi 3 đơn vị là Phòng Kỹ thuật An toàn, Phòng điều độ và sửa chữa lưới điện và Đội Quản lý vận hành.
Hình 3-1: Bản đồ các đối tượng điện lực Ba Đình
- Phòng Kỹ thuật – An toàn:
Lưới điện trung thế ngầm được quản lý theo từng lộ đưòng dây trung thế (tuyến đường dây trung thế) xuất phát từ 1 trạm biến áp trung gian 110/22kV rồi đi dọc theo các tuyến phố sau đó hoặc quay về lại trạm trung gian vừa xuất phát hoặc liên thông với các trạm trung gian khác Hồ sơ kỹ thuật được lưu trữ dưới 2 dạng là bản mềm (hiện nay bản mềm mới chỉ có trên file dạng *.dwg với độ chính xác không cao do tỷ lệ của bản đồ quá thấp 1/10.000 hoặc dạng dữ liệu của phần mềm mapinfo, nhưng dữ liệu này độ chính xác còn thấp hơn nũa) và bản cứng dạng các bản vẽ hoàn công được lưu trữ theo thời gian vận hành, đa số các bản vẽ hoàn công này có độ chính xác tương đối do chất lượng bản vẽ hoàn công không cao Mỗi tuyến đường dây cáp ngầm được lưu bản vẽ hoàn công trong 1 cặp file cứng, tuy nhiên việc cập nhật tình hình vận hành, các thay đổi sẽ khó và không linh hoạt. Ưu điểm của phương pháp sử dụng phần mềm MapInfo là có thể quản lý được đối tượng chi tiết và cụ thể hơn vì trong đó dữ liệu được mô tả dưới dạng các trường, các lớp và chứa nhiều thông tin bổ ích nhưng khi xây dựng thì phần cơ sở dữ liệu về bản đồ địa hình với tỉ lệ 1/5000 lại không có nên độ chính xác rất thấp dẫn đến các ích lợi mang lại từ bản đồ lưu trữ không cao.
Phương pháp lưu trữ file dang *.dwg dùng phần mềm vẽ kỹ thuật AutoCad dễ sử dụng Tuy nhiên, dữ liệu lại nghèo nàn, chỉ thể hiện được một số thông tin như thông tin về địa hình (tỉ lệ tương đối chính xác), thông tin về ch loại, tiết diện, chiều dài, … Dữ liệu này có thể cập nhật dễ dàng và đơn giản.
Lưới điện hạ thế ngầm được quản lý theo từng trạm biến áp phân phối cấp điện, phần hồ sơ lưu trữ được lưu trữ chung với hồ sơ quản lý trạm biến áp dưới dạng bản cứng là các bản vẽ hoàn công sau hạ ngầm Đa số các bản vẽ này có độ chính xác cũng tương đối tốt (vì khi vẽ thường không có tỷ lệ chuẩn như bản vẽ xây đựng hoặc kiến trúc, cũng không có bản đồ số tỷ lệ để áp vào thực tế).
Dọc theo các tuyến cáp, các đường dây này đều có biến báo cáp ngầm với khoảng cách tối thiểu 20m cho 1 biển và tạic ác điểm cáp chuyển hướng thì có ít nhất 3 mốc để báo hướng cáp chuyển.
- Phòng Điều độ và sửa chữa lưới diện:
Chức năng về thao tác vận hành và tìm sự cố lưới điện sau đó bàn giao lại cho Đội Quản lý vanạ hành để sửa chữa.
Hiện nay, lưới điện được lưu trữ tại phòng Điều độ dưới 2 hình thức gồm bản cứng được vẽ trên sơ đồ bản gỗ đặt tại Phòng Điều độ để theo dõi tình trạng vận hành, đóng cắt, thao tác thiết bị trên lưới (chỉ bao gồm lưới điển trung thế), ngoài ra còn có bản mềm lưu trữ dưới dạng file *.dwg, file sơ đồ này giống file sơ đồ được lưu trữ tại phòng Kỹ thuật an toàn và cùng với sơ đồ cứng nó được cập nhật mỗi khi lưới điện có sự thay đổi như thêm, bớt các thành phần trên lưới (them, bớt trạm biến áp, trạm cắt, các cầu dao phân đoạn trên lưới).
- Đội Quản lý vận hành:
Là đơn vị quản lý về mặt vận hành, sửa chữa và duy tu bảo dưỡng các tuyến cáp cả trung thế và hạ thế.
Trong quá trình công tác, Đội vận hành sẽ căn cứ vào hồ sơ lưu tại Phòng kỹ thuật an toàn để triển khai công tác.
Ngoài ra, định kỳ hoặc theo tình hình vận hành lưới điện, các đường cáp đang tồn tại có thể được đại tu thay bằng tuyến mới, hoặc sửa chữa di chuyển, nắn tuyến theo yêu cầu của các đơn vị liên quan.
Tóm lại, các dữ liệu được lưu trữ cả ở dang bản đồ MapInfo và dạng *.dwg đều chỉ được dùng ở dạng cục bộ trên từng máy các nhân mà không được lưu trữ dạng cơ sở dữ liệu dùng chung cho tất cả các bộ phận trong cơ quan (Phòng Kỹ thuật An toàn, Phòng Điều độ sửa chữa lưới điện, Đội quản lý vận hành) Khi có sự thay đổi trên lưới điện thì các đơn vị sẽ tự cập nhật dữ liệu của riêng mình, điều này dẫn đến sự không thống nhất và chính xác giữa các đơn vị với nhau trong quá trình cần thiết xử lý thông tin.
3.1.2 Thực trạng dữ liệu tại Phòng kỹ thuật- Điện lực Ba Đình.
Dựa theo tổ chức dữ liệu như trên, Phòng kỹ thuật- Điện lực Ba Đình cung cấp các file dữ liệu dưới dạng file MapInfo Giá trị dữ liệu về tọa độ trong các file Excel được cung cấp dưới dạng (Latitude, Longitude) theo Hệ quy chiếu và Hệ tọa độ quốc gia HN72 (Đây là Hệ quy chiếu và Hệ tọa độ quốc gia được sử dụng từ năm
Hiện trạng dữ liệu mạng cáp viễn thông Hà Nội
3.2.1 Mô tả tổng quan về hệ thống mạng cáp Viễn Thông
Hình 3-2:Sơ đồ mạng hệ thống Quản lý mạng cáp
Trong bài toán quản lý mạng cáp, hiện tại mỗi đơn vị viễn thông đều vận hành một hệ thống phần mềm quản lý mạng cáp của riêng mình Việc xây dựng một hệ thống thống nhất cho toàn bộ các dạng mạng cáp là không khả thi (Lý do là liên kết giữa các công ty rất lỏng lẻo, đôi khi còn mang tính cạnh tranh Phần mềm quản lý của từng công ty đã có sẵn và công ty thường khó chấp nhận sửa đổi chúng) Ứng dụng tổng hợp thông tin dựa trên kiến trúc SOA không đòi hỏi thay đổi hệ thống thông tin sẵn có của mỗi đơn vị Tuy các đơn vị khác nhau, cách quản lý khác nhau, nhưng đối tượng quản lý đều là các đối tượng đường (dây cáp điện thoại, dây cáp điện), đối tượng điểm (tủ điện thoại, tủ biến áp, cột điện) Các dịch vụ khai thác thông tin (cập nhật, tra cứu, truy vấn) trên các đối tượng này có thể chia sẻ Khi đó, hệ thống ứng dụng sử dụng kiến trúc SOA chỉ cần cài đặt tại các đơn vị tham gia chia sẻ một dịch vụ chuyển đổi dữ liệu từ dạng tác nghiệp trong hệ thống được tham chiếu sang khuôn dạng chung trong hệ thống tích hợp thống nhất Việc khai thác thông tin tích hợp thống nhất do một đơn vị trung gian độc lập đảm nhận, đủ tin cậy với các đơn vị tham gia Khi đó, lợi nhuận sau mỗi lần dịch vụ tổng hợp thành công sẽ được tính cho các bên tham gia cung cấp, dựa trên đo đếm lượng thông tin của từng đơn vị và cách thức phân chia quyền lợi giữa các bên.
Hình 3-3: Mô hình hoạt động của các hệ thống quản lý mạng cáp
Do có khó khăn trong việc thu thập thông tin sơ đồ mạng cáp viễn thông (không đồng nhất về nền đồ họa (MapInfo, CAD, GIS, 3D thông thường); không hoàn toàn đầy đủ và chính xác những nội dung thông tin địa lý, thí dụ tọa độ, về mạng cáp; không giống nhau về lớp thông tin sơ đồ mạng cáp tại các địa bàn) nên công việc thử nghiệm quản lý mạng cáp viễn thông giới hạn ở quản lý thông tin sơ đồ mạng cáp và sử dụng giao diện đồ họa phù hợp với việc kết xuất thông tin trực quan cho người sử dụng, lựa chọn địa bàn thử nghiệm dựa trên tiêu chí ở nơi sơ đồ mạng cáp phải đuợc các đơn vị tham gia sẵn sàng và có thể cung cấp.
Mặt khác, trong khuôn khổ thử nghiệm khung phần mềm ứng dụng quản lý thông tin sơ đồ mạng cáp viễn thông, phương thức truy nhập hệ thống ứng dụng của người sử dụng được giới hạn trong phạm vi giao diện WEB trên mạng Internet. Truy vấn của người sử dụng liên quan đến các thông tin mô tả về sơ đồ mạng cáp, mà không đi sâu vào các khía cạnh kỹ thuật, các lớp thông tin địa lý chuyên biệt của sơ đồ mạng cáp.
Cuối cùng, việc thống nhất nguyên tắc phân chia lợi nhuận chia sẻ thông tin của các đơn vị cung cấp thông tin còn tùy thuộc vào điều kiện triển khai thực tế, nên trong đề tài đưa ra giả định một phương án phân chia lợi nhuận dựa trên đo đếm và kiếm soát lượng thông tin đã được cung cấp.
3.2.2 Thực trạng dữ liệu tại Trung tâm điều hành- Viễn thông Hà Nội
Cơ sở dữ liệu ORACLE bao gồm 02 database: 01 GCOMM, 01 GTCAS
Hệ chương trình đóng gói G/comms (hãng Intergraph xây dựng và cung cấp) quản lý cấu hình mạng ngoại vi : quản lý các đối tượng mạng ngoại vi về cả dữ liệu thuộc tính và đồ họa (không quản lý chi tiết dịch vụ).
Chương trình GTCAS (các đơn vị thuộc BĐHN tích hợp và xây dựng) - Quản lý đấu nối chi tiết: quản lý chi tiết các dịch vụ chạy trên đôi cáp đồng, bao gồm: điện thoại, ADSL, TSL, trạm CS Quản lý thiết bị đặc chủng (bộ lợi cáp) Chương trình này cũng cung cấp chức năng quản lý cấu hình mạng cáp đồng (chỉ với dữ liệu thuộc tính) dành cho việc triển khai quản lý mạng cáp được linh động đối với cả các vùng không có bản đồ nền hoặc bản đồ nền còn sơ sài, chưa đáp ứng được cho yêu cầu quản lý trên G/comms.
Dữ liệu trao đổi giữa giữa 02 hệ thống quản lý cấu hình (G/comms) và chi tiết (GTCAS) được đồng bộ bởi các chức năng ngầm định của hệ thống (5’/lần) để tránh cập nhật chồng chéo, dư thừa, tiết kiệm năng suất lao động.
Dựa theo tổ chức dữ liệu như trên, Trung tâm điều hành- Viễn thông Hà Nội cung cấp các file dữ liệu dưới dạng file Excel Giá trị dữ liệu về tọa độ trong các fileExcel được cung cấp dưới dạng (X, Y) theo Hệ quy chiếu và Hệ tọa độ quốc giaVN2000 (Đây là Hệ quy chiếu và Hệ tọa độ quốc gia đang được sử dụng hiện nay thay thế cho Hệ HN 72 được dùng từ năm 2000 trở về trước) Kinh tuyến trung ương dạng (Latitude; Longitude) là (0.0; 105.0) và múi chiếu là 3 độ.
Hình 3-4.Kinh tuyến trung ương và múi chiếu
Từ các phân tích về hiện trạng dữ liệu mạng cáp của điện lực Ba Đình và viễn thông Hà Nội, trong chương tiếp theo, ta sẽ xây dựng mô đun chuyển đổi dữ liệu mạng cáp về mô hình dữ liệu thống nhất trên Mysql GIS
Chương IV Xây dựng các mô đun chuyển đổi dữ liệu dữ liệu mạng cáp
Mô hình lưu trữ thống nhất trên Mysql
Qua thời gian nghiên cứu dữ liệu của các nhà cung cấp, nhóm thực hiện đã thết kế mô hình dữ liệu thống nhất để từ đó có thể quy chuẩn cho các dữ liệu của các nhà cung cấp khác nhau.
Dữ liệu của các nhà cung cấp sẽ được lưu trữ bằng cơ sở dữ liệu MySQL GIS, trong đó các dữ liệu về bản đồ, tọa độ sẽ được lưu trữ dưới dạng các điểm, đường, vùng tương ứng với các kiểu dữ liệu Point, LineString, Polygon trong cơ sở dữ liệu MySQL Spatial Extension. Đối tượng truy vấn trong của đơn vị viễn thông Viễn thông và cáp điện lực Ba Đình chính là cáp viễn thông, cáp điện lực, cống bể, hộp tủ…Các đối tượng này được lưu trữ trong cơ sở dữ liệu dưới dạng các đường (LineString) và các điểm (Point):
- Các đối tượng điểm được lưu dưới dạng các bảng trong cơ sở dữ liệu như sau
Id (int): id của đối tượng
Address(varchar): địa chỉ của đối tượng
Point(POINT) : tọa độ của đối tượng trên bản đồ
- Các đối tượng đường được lưu dưới dạng các bảng trong cơ sở dữ liệu như sau
Id (int): id của đối tượng
Address(varchar): địa chỉ của đối tượng
Line(LineString): Tọa độ của đối tượng trên bản đồ
Xây dựng mô đun chuyển đổi dữ liệu mạng cáp điện lực Ba Đình
4.2.1 Lược đồ dữ liệu chuyển đổi
Hình 4-1: Lược đồ dữ liệu mạng cáp điện lực Ba Đình
Dữ liệu mạng cáp điện lực Ba Đình được lưu dưới dạng mapinfo và được biểu diễn bằng cáp file tab.Các file dữ liệu điện lực: cab.tab, cot.tab, binhdo.tab, dancu1.tab,dancu2.tab Mỗi file biểu diễn một lớp đối tượng trên bản đồ Các đối tượng được xếp chồng lên nhau theo thứ tự để tạo thành bản đồ mạng cáp hoàn chỉnh.
Dữ liệu được số hóa dưới dạng các file mapinfo theo hệ tọa độ chuẩn HN72 của Việt Nam.
- (1) Chuyển đổi từ dữ liệu điện lực Mapinfo sang Excel với dữ liệu ở chuẩn HN72 để làm đầu vào của Mapinfo Professional, dùng thư viện mã nguồn mở mitab.dll.
- (2) Chuyển đổi từ file Excel ở chuẩn HN72 sang chuẩn WGS84 để tích hợp với bản đồ Googlemaps.
- (3) Chuyển đổi từ Excel sang dữ liệu thống nhất Mysql GIS.
4.2.2 Các giải thuật và phương pháp chuyển đổi
4.2.2.1 Chuyển đổi dữ liệu từ mapinfo sang Exel Để có thể lưu trữ và truy vấn dữ liệu của điện lực Ba Đình, ta phải tiến hành chuyển đổi dữ liệu về dạng dữ liêu thống nhất của hệ thống Do dữ liệu được lưu dưới dạng tab, là định dạng riêng của chương trình Mapinfo Professional và đã được mã hóa bằng các ma trận mã hóa, nên việc đọc dữ liệu của nó ra và chuyển thành dữ liệu số được lưu dưới dạng các bảng của cơ sở dữ liệu là một điều không dễ dàng Để đọc được dữ liệu này, ta sữ dụng một thư viện mã nguồn mở mitab.dll được viết bằng C++ của tổ chức Open GIS Consortium
Mitab là một thư viện mã nguồn mở dùng để đọc và viết dữ liệu mapinfo tab Thư viện này đã được thử nghiệm trong một số môi trường và có kết quả tương đối chính xác Tuy nhiên thư viện vẫn còn thiếu một số tài liệu cần thiết cho việc xây dựng API trên C++ Những ứng dụng đơn giản thì không cần đến sức mạnh của giao diện C++ và có thể sử dụng giao diện C với một vài ứng dụng đi kèm.
Mitab chia đối tượng trong file tab thành các lớp tương ứng : Layer, Feature, Part, Vertex Vertex ứng với một điểm trên bản đồ với tọa độ X và Y Part ứng với một đối tượng mà file biểu diễn, như một điểm, một đường, hoặc một vùng.
Một số hàm trong thư viện mitab:
Mitab_handle MITAB_STDCALL mitab_c_open(constant char* filename)
- Mở file tab có tên filename để truy cập
- Hàm tự động xác định định dạng tab của file
- Trả lại giá trị xác định mitab_handle nếu thành công và null nếu file không tồn tại
Void MITAB_STDCALL mitab_c_close(mitab_handle handle)
- Đóng file được mở bằng mitab_c_open hoặc mitab_c_create
Mitab_feature MITAB_STDCALL mitab_c_read_feature(mitab_handle handle,int feature_id)
- Đọc một đối tượng mitab_feature từ file được mở
- Chỉ làm việc với file được mở dạng mitab_c_open
- Kết quả trả lại là đối tượng mitab_feature được đọc
Int Mitab_STDCALL mitab_c_get_parts(mitab_feature feature)
- Trả lại đối số thứ tự của parts trong một đối tượng
Double MITAB_STDCALL mitab_c_get_vertex_x(mitab_feature feature, int part, int vertex)
- Trả lại tọa độ x của điểm trong part của đối tượng feature
Double MITAB_STDCALL mitab_c_get_vertex_y(mitab_feature feature, int part, int vertex)
- Trả lại tọa độ y của điểm trong part của đối tượng feature
4.2.2.2 Chuyển đổi dữ liệu Exel từ hệ tọa độ chuẩn HN72 sang hệ tọa độ WGS84
Dữ liệu sau khi được chuyển đổi sẽ được kết xuất trên bản đồ Googlemap với hệ tọa độ chuẩn của quốc tế WGS84, vì thế ta sử dụng phần mềm Mapinfo Professional để chuyển đổi dữ liệu từ HN72 sang WGS84. Đầu vào chuyển đổi là file Exel dạng
|Id |address |X |Y | Đầu ra cũng là file Exel theo đúng định dạng trên ở hệ tọa độ chuẩn WGS84
4.2.2.3 Chuyển đổi từ dữ liệu WGS84 vào Mysql GIS Extension
Dữ liệu điện lực trong Mysql GIS được thiết kế thành 2 bảng Bảng dl_tblcab lưu các đối tượng cáp trung thế điện lực, bảng dl_tblcot lưu các đối tượng trạm biến áp điện lực.
Bảng 4-1 : Bảng dữ liệu cáp điện lực Bảng dl_tblcot
Bảng 4-2: Bảng dữ liệu trạm biến áp điện lực
Dữ liệu được đọc từ exel và lưu vào các bảng dữ liệu như trên Truy vấn để chèn dữ liệu vào bảng dl_tblcab: Insert into dl_tblcab(cab_id,cab_address,cab_line) values (id,address,geometry(LINESTRING(x1 y1,x2 y2,x3 y3, ))) Truy vấn để chèn dữ liệu vào bảng dl_tblcot: Insert into dl_tblcot(cot_id,cot_address,cot_point) values (id,address,geometry(POINT(x1 y1))).
4.2.3 Các kết quả chuyển đổi
Kết quả của mô đun chuyển đổi dữ liệu mạng cáp điện lực Ba Đình là cơ sở dữ liệu trong Mysql GIS Extension gồm 2 bảng lưu dữ liệu cáp trung thế điện lực và trạm biến áp điện lực với dữ liệu ở dạng hệ tọa độ chuẩn WGS84.
Bảng 4-3: Bảng dữ liệu trạm biến áp điện lực
Bảng 4-4:Bảng dữ liệu cáp trung thế điện lực
Xây dựng mô đun chuyển đổi dữ liệu mạng cáp viễn thông Hà Nội
4.3.1 Lược đồ dữ liệu chuyển đổi
Hình 4-2: Lược đồ dữ liệu chuyển đổi mạng cáp viễn thông
- (1) Export các dữ liệu từ hệ quản trị cơ sở dữ liệu Oracle của viễn thông thành các bảng Exel
- (2) Chuyển các bảng excel thành chuẩn đầu vào của Mapinfo phục vụ cho chuyển đổi hệ tọa độ
- (3) Chuyển đổi hệ toạn đọa từ chuẩn VN2000 thành WGS84
- (4) Đưa dữ liệu từ các bảng excel theo chuẩn WGS84 vào cơ sở dữ liệu Mysql GIS Extension
4.3.2 Các giải thuật và phương pháp chuyển đổi
4.3.2.1 Chuyển đổi dữ liệu excel sang dạng đầu vào của mapinfo
Các bảng excel sau khi export từ cơ sở dữ liệu lưu thành các dòng, mỗi dòng lưu 4 điểm của đường cáp Các đường cáp lưu trên các dòng khác nhau sẽ có id chung của đường cáp đó Đầu vào của Mapinfo Professional để chuyển đổi hệ tọa độ là file Exel theo chuẩn |Id |address |X |Y | Do đó ta phải chuyển đổi dữ liệu sang dạng chuẩn đầu vào của Mapinfo.
Bảng 4-5: Dạng dữ liệu tọa độ được cung cấp
Hình 4-6: Dạng dữ liệu chuẩn đầu vào Mapinfo
4.3.2.2 Chuyển đổi dữ liệu Exel từ hệ tọa độ chuẩn VN2000 sang hệ tọa độ WGS84
Dữ liệu cáp viễn thông lưu theo hệ tọa đổ chuẩn VN2000 của Việt Nam, vì thế để có thể kết xuất trên giao diện đồ họa Googlemap, ta phải tiến hành chuyển đổi dữ liệu từ chuẩn VN2000 sang WGS84.
Các tham số trong chuyển đổi dữ liệu VN2000 và WGS84 do bộ tài nguyên môi trường cung cấp.
Tham số dịch chuyển gốc tọa độ:
Góc xoay trục tọa độ:
Hệ số tỷ lệ chiều dài: k = 1.000000252906278.
4.3.2.3 Chuyển đổi dữ liệu từ WGS84 vào cơ sở dữ liệu Mysql GIS
Dữ liệu cáp viễn thông trong Mysql GIS Extension được lưu thành các bảng tương ứng với các đối tượng của mạng cáp Các đối tượng mạng cáp viễn thông: cáp, cống bể, măng xông, hộp tủ, bể cáp, lỗ cống, tổng đài tương ứng với các bảng trong cơ sở dữ liệu: vt_tblcap, vt_tblcongbe, vt_tblmangxong, vt_tblhoptu, vt_tblbecap, vt_tbllocong, vt_tbltongdai.
Các đối tượng được chia làm hai đối tượng trong Mysql GIS, đó là điểm (POINT) và đường (LINESTRING) Đối tượng đường gồm có: cáp, cống bể Đối tượng điểm gồm có: măng xông, hộp tủ, bể cáp, lỗ cống, tổng đài.
Chèn một đường vào cở sở dữ liệu:
- Insert into vt_tblcab(id,address,line) values (id,address,geometry(LINESTRING(x1 y1,x2 y2,x3 y3 ))) Chèn một điểm vào cơ sở dữ liệu:
- Insert into vt_tblcot(id,address,point) values (id,address,geometry(POINT(x1 y1)))
4.3.3 Các kết quả chuyển đổi
Kết quả của modul chuyển đổi dữ liệu mạng cáp viễn thông Hà Nội là cơ sở dữ liệu Mysql GIS Extension chứa các bảng ứng với các đối tượng Dữ liệu được chuyển đổi theo chuẩn của hệ tọa độ WGS84, thích hợp cho việc hiển thị trên giao diện Googlemap.
Hình 4-3: Biểu đồ quan hệ cơ sở dữ liệu mạng cáp viễn thông Hà Nội Bảng dữ liệu lưu đối tượng đường
Bảng 4-7: Bảng dữ liệu đối tượng đường cáp Viễn thông Bảng dữ liệu lưu đối tượng điểm
Bảng 4-8: Bảng dữ liệu đối tượng đường cáp Viễn thông
Với mô hình dữ liệu thống nhất đã xây dựng ở từng đơn vị, ở chương tiếp theo ta xây dựng các dịch vụ cung cấp dữ liệu cho hệ thống tích hợp và khai thác.
Xây dựng các dịch vụ cung cấp dữ liệu
Vị trí của các dịch vụ trong bài toán tích hợp thông tin
Hình 5-1: Mô hình hệ thống tích hợp thông tin
Trong hệ thống tích hợp thông tin Nhà cung cấp dịch vụ (Service Provider) sẽ đăng ký thông tin cần cung cấp với nhà đăng ký dịch vụ (Service Register). Thông tin được đăng ký bằng UDDI của Webservice Khi có truy vấn đến hệ thống tích hợp thông tin(Service Intergration), hệ thống tích hợp sẽ tìm kiếm các dịch vụ tại nhà đăng ký dịch vụ để tìm thông tin cần thiết về các nhà cung cấp dịch vụ Từ thông tin đó của nhà cung cấp dịch vụ, hệ thống tích hợp sẽ gửi request đến nhà cung cấp và được trả lại kết quả.
Nhiệm vụ của việc xây dựng các dịch vụ cung cấp dữ liệu là xây dựng cácWebservice để đăng kí với Service Register và để trả kết quả về cho hệ thống tích hợp khi có truy vấn gọi đến Các dịch vụ là các webservice đặt tại từng đơn vị tham gia vào hệ thống tích hợp thông tin, đó là điện lực Ba Đình và viễn thông Hà Nội.
Dịch vụ cung cấp dữ liệu điện lực Ba Đình
5.2.1 Mô tả dịch vụ Để tích hợp với hệ thống tích hợp mạng cáp, các dịch vụ cung cấp dữ liệu của điện lực Ba Đình được xây dựng và cung cấp dưới dạng các Webservice. Webservice làm nhiệm vụ truy vấn vào cơ sở dữ liệu dl_cable đã được xây dựng ở trên để trả lại kế quả cho các truy vấn đến các đối tượng của điện lực của hệ thống tích hợp
Hình 5-2: Mô tả Webservice điện lực Ba Đình Webservice được mô tả bằng URL : WebserviceDL/DLServices?WSDL
5.2.2 Các hàm trong dịch vụ
- Mô tả : truy vấn đường cáp trung thế điện lực theo địa chỉ của đường cáp(tên đường, tên phường, tên quận)
- Input : xâu ký tự địa chỉ của đường cáp, String address
- Output : Mảng string chứa danh sách các đường cáp có địa chỉ là address, Arraylist
Các đường cáp được lưu theo định dạng (x1 y1,x2 y2,x3 y3…)
- Mô tả : truy vấn đường cáp trung thế điện lực theo vùng định dạng (đa giác)
- Input : xâu ký tự địa chỉ chứ vùng được xác định, String regionString. Định dạng của vùng: (x1 y1,x2 y2,…,x1 y1)
- Output : Mảng string chứa danh sách các đường cáp trong vùng regionString, Arraylist
Các đường cáp được lưu theo định dạng (x1 y1,x2 y2,x3 y3…)
- Mô tả : truy vấn trạm biến áp điện lực theo địa chỉ của đường cáp(tên đường, tên phường, tên quận)
- Input : xâu ký tự địa chỉ của trạm biến áp điện lực, String address
- Output : Mảng string chứa danh sách các trạm biến áp có địa chỉ address, Arraylist
Các trạm biến áp được lưu theo định dạng (x1 y1)
- Mô tả : truy vấn trạm biến áp điện lực theo vùng định dạng (đa giác)
- Input : xâu ký tự địa chỉ chứa vùng được xác định, String regionString Định dạng của vùng: (x1 y1,x2 y2,…,x1 y1)
- Output : Mảng string chứa danh sách các trạm biến áp trong vùng regionString, Arraylist
Các trạm biến áp được lưu theo định dạng (x1 y1)
- Mô tả : truy vấn đưa ra các điểm gần một điểm được xác định nhất
- Input : xâu ký tự địa chỉ chứa điểm được xác định, String point Định dạng của điểm: (x1 y1)
- Output : Mảng string chứa danh sách các trạm biến áp gần điểm point nhất, Arraylist
Các trạm biến áp được lưu theo định dạng (x1 y1)
Dịch vụ cung cấp dữ liệu viễn thông Hà Nội
5.3.1 Mô tả dịch vụ Để tích hợp với hệ thống tích hợp mạng cáp, các dịch vụ cung cấp dữ liệu của viễn thông được xây dựng và cung cấp dưới dạng các Webservice Webservice làm nhiệm vụ truy vấn vào cơ sở dữ liệu vt_cable đã được xây dựng ở trên để trả lại kế quả cho các truy vấn đến các đối tượng của điện lực của hệ thống tích hợp.
Webservice được mô tả bằng URL : WebserviceDL/DLServices?WSDL.
Hình 5-3: Mô tả Webservice viễn thông Hà Nội
5.3.2 Các hàm trong dịch vụ
- Mô tả : truy vấn đường cáp viễn thông theo địa chỉ của đường cáp(tên đường, tên phường, tên quận)
- Input : xâu ký tự địa chỉ của đường cáp, String address
- Output : Mảng string chứa danh sách các đường cáp có địa chỉ là address, Arraylist
Các đường cáp được lưu theo định dạng (x1 y1,x2 y2,x3 y3…)
- Mô tả : truy vấn đường cáp viễn thông theo vùng định dạng (đa giác)
- Input : xâu ký tự địa chỉ chứ vùng được xác định, String regionString. Định dạng của vùng: (x1 y1,x2 y2,…,x1 y1)
- Output : Mảng string chứa danh sách các đường cáp trong vùng regionString, Arraylist
Các đường cáp được lưu theo định dạng (x1 y1,x2 y2,x3 y3…)
- Mô tả : truy vấn đường cống bể viễn thông theo địa chỉ của cống bể(tên đường, tên phường, tên quận)
- Input : xâu ký tự địa chỉ của đường cáp, String address
- Output : Mảng string chứa danh sách các cống bể có địa chỉ là address, Arraylist
Các cống bể được lưu theo định dạng (x1 y1,x2 y2,x3 y3…)
- Mô tả : truy vấn đường cống bể viễn thông theo vùng định dạng (đa giác)
- Input : xâu ký tự địa chỉ chứ vùng được xác định, String regionString. Định dạng của vùng: (x1 y1,x2 y2,…,x1 y1)
- Output : Mảng string chứa danh sách các cống bể trong vùng regionString, Arraylist
Các cống bể được lưu theo định dạng (x1 y1,x2 y2,x3 y3…)
- Mô tả : truy vấn bể cáp viễn thông theo địa chỉ của bể cáp(tên đường, tên phường, tên quận)
- Input : xâu ký tự địa chỉ của bể cáp viễn thông, String address
- Output : Mảng string chứa danh sách các bể cáp có địa chỉ address, Arraylist
Các bể cáp được lưu theo định dạng (x1 y1)
- Mô tả : truy vấn bể cáp viễn thông theo vùng định dạng (đa giác)
- Input : xâu ký tự địa chỉ chứa vùng được xác định, String regionString Định dạng của vùng: (x1 y1,x2 y2,…,x1 y1)
- Output : Mảng string chứa danh sách các bể cáp viễn thông trong vùng regionString, Arraylist
Các bể cáp được lưu theo định dạng (x1 y1)
- Mô tả : truy vấn đưa ra các bể cáp gần một điểm được xác định nhất
- Input : xâu ký tự địa chỉ chứa điểm được xác định, String point Định dạng của điểm: (x1 y1)
- Output : Mảng string chứa danh sách các bể cáp viễn thông gần điểm point nhất, Arraylist
Các bể cáp được lưu theo định dạng (x1 y1)
- Mô tả : truy vấn hộp tủ viễn thông theo địa chỉ của hộp tủ(tên đường, tên phường, tên quận)
- Input : xâu ký tự địa chỉ của hộp tủ viễn thông, String address
- Output : Mảng string chứa danh sách các hộp tủ có địa chỉ address, Arraylist
Các bể hộp tủ được lưu theo định dạng (x1 y1)
- Mô tả : truy vấn hộp tủ cáp viễn thông theo vùng định dạng (đa giác)
- Input : xâu ký tự địa chỉ chứa vùng được xác định, String regionString Định dạng của vùng: (x1 y1,x2 y2,…,x1 y1)
- Output : Mảng string chứa danh sách các hộp tủ cáp viễn thông trong vùng regionString, Arraylist
Các bể cáp được lưu theo định dạng (x1 y1)
- Mô tả : truy vấn đưa ra các hộp tủ cáp gần một điểm được xác định nhất
- Input : xâu ký tự địa chỉ chứa điểm được xác định, String point Định dạng của điểm: (x1 y1)
- Output : Mảng string chứa danh sách các hộp tủ cáp viễn thông gần điểm point nhất, Arraylist
Các hộp tủ cáp được lưu theo định dạng (x1 y1)
- Mô tả : truy vấn măng xông cáp viễn thông theo địa chỉ của măng xông (tên đường, tên phường, tên quận)
- Input : xâu ký tự địa chỉ của măng xông, String address
- Output : Mảng string chứa danh sách các măng xông cáp có địa chỉ address, Arraylist
Các măng xông cáp được lưu theo định dạng (x1 y1)
- Mô tả : truy vấn măng xông cáp viễn thông theo vùng định dạng (đa giác)
- Input : xâu ký tự địa chỉ chứa vùng được xác định, String regionString Định dạng của vùng: (x1 y1,x2 y2,…,x1 y1)
- Output : Mảng string chứa danh sách các măng xông cáp viễn thông trong vùng regionString, Arraylist
Các măng xông cáp được lưu theo định dạng (x1 y1)
- Mô tả : truy vấn đưa ra các măng xông cáp gần một điểm được xác định nhất
- Input : xâu ký tự địa chỉ chứa điểm được xác định, String point Định dạng của điểm: (x1 y1)
- Output : Mảng string chứa danh sách các măng xông cáp viễn thông gần điểm point nhất, Arraylist
Các măng xông cáp được lưu theo định dạng (x1 y1)
- Mô tả : truy vấn lỗ cống cáp viễn thông theo địa chỉ của lỗ cống(tên đường, tên phường, tên quận)
- Input : xâu ký tự địa chỉ của lỗ cống, String address
- Output : Mảng string chứa danh sách các lỗ cống cáp có địa chỉ address, Arraylist
Các lỗ cống cáp được lưu theo định dạng (x1 y1)
- Mô tả : truy vấn lỗ cống cáp viễn thông theo vùng định dạng (đa giác)
- Input : xâu ký tự địa chỉ chứa vùng được xác định, String regionString Định dạng của vùng: (x1 y1,x2 y2,…,x1 y1)
- Output : Mảng string chứa danh sách các lỗ cống cáp viễn thông trong vùng regionString, Arraylist
Các lỗ cống cáp được lưu theo định dạng (x1 y1)
- Mô tả : truy vấn đưa ra các lỗ cống cáp gần một điểm được xác định nhất
- Input : xâu ký tự địa chỉ chứa điểm được xác định, String point Định dạng của điểm: (x1 y1)
- Output : Mảng string chứa danh sách các lỗ cống cáp viễn thông gần điểm point nhất, Arraylist
Các lỗ cống cáp được lưu theo định dạng (x1 y1)
- Mô tả : truy vấn tổng đài cáp viễn thông theo địa chỉ của tổng đài (tên đường, tên phường, tên quận)
- Input : xâu ký tự địa chỉ của tổng đài, String address
- Output : Mảng string chứa danh sách các tổng đài cáp có địa chỉ address, Arraylist
Các tổng đài cáp được lưu theo định dạng (x1 y1)
- Mô tả : truy vấn tổng đài cáp viễn thông theo vùng định dạng (đa giác)
- Input : xâu ký tự địa chỉ chứa vùng được xác định, String regionString Định dạng của vùng: (x1 y1,x2 y2,…,x1 y1)
- Output : Mảng string chứa danh sách các tổng đài cáp viễn thông trong vùng regionString, Arraylist
Các tổng đài cáp được lưu theo định dạng (x1 y1)
- Mô tả : truy vấn đưa ra các tổng đài cáp gần một điểm được xác định nhất
- Input : xâu ký tự địa chỉ chứa điểm được xác định, String point Định dạng của điểm: (x1 y1)
- Output : Mảng string chứa danh sách các tổng đài cáp viễn thông gần điểm point nhất, Arraylist
Các tổng đài cáp được lưu theo định dạng (x1 y1)