(NCKH) nghiên cứu mô hình giám sát thảm họa và môi trường bờ biển việt nam (NCKH) nghiên cứu mô hình giám sát thảm họa và môi trường bờ biển việt nam (NCKH) nghiên cứu mô hình giám sát thảm họa và môi trường bờ biển việt nam (NCKH) nghiên cứu mô hình giám sát thảm họa và môi trường bờ biển việt nam (NCKH) nghiên cứu mô hình giám sát thảm họa và môi trường bờ biển việt nam (NCKH) nghiên cứu mô hình giám sát thảm họa và môi trường bờ biển việt nam (NCKH) nghiên cứu mô hình giám sát thảm họa và môi trường bờ biển việt nam (NCKH) nghiên cứu mô hình giám sát thảm họa và môi trường bờ biển việt nam (NCKH) nghiên cứu mô hình giám sát thảm họa và môi trường bờ biển việt nam (NCKH) nghiên cứu mô hình giám sát thảm họa và môi trường bờ biển việt nam
Trang 1TRƯỜNG ĐẠI HỌC HÀNG HẢI VIỆT NAM
KHOA CÔNG NGHỆ THÔNG TIN
THUYẾT MINH
ĐỀ TÀI NCKH CẤP TRƯỜNG
ĐỀ TÀI
Nghiên cứu mô hình giám sát thảm họa
và môi trường bờ biển Việt Nam
Chủ nhiệm đề tài: TS Trần Đăng Hoan
Hải Phòng, tháng 15 /05/2015
Trang 2Mục lục
Mở
1 Mô hình tích hợp giám sát môi trường bờ biển 1
1.1 Hệ thống giám sát tích hợp 1
1.1.1 Các chi tiết về hạ tầng 1
1.1.2 Quản trị dữ liệu 3
1.1.3 Phân tích dữ liệu 3
1.1.4 Báo cáo và truyền tin 3
1.2 Thách thức của việc thu thập dữ liệu từ xa 4
1.3 Các kiểu giám sát 5
1.3.1 Các báo cáo 5
1.4 Một số ứng dụng điển hình 6
1.4.1 Nghiên cứu Acid hóa đại dương 6
1.4.2 Mạng cảm biến nhằm ứng phó với tẩy trắng san hô ở đảo Racha Yai, Thái Lan 6
1.5 Quản trị dữ liệu hàng hải và những thách thức 7
1.6 Kiến trúc hệ thống 8
1.6.1 Kien truc de xuat 8
1.6.2 Phần cứng 8
2 Giới thiệu về DataTurbine 10 2.1 DataTurbine 10
2.1.1 Kiến trúc của DataTurbine 11
2.1.2 Server 11
2.1.3 Source 12
2.1.4 Sink 13
2.2 Những điểm mạnh và hạn chế của DataTurbine 14
1
Trang 3MỤC LỤC 2
3.1 Tổng quan 16
3.2 Lập trình sử dụng SAPI 17
3.2.1 Các kiểu đối tượng trong SAPI 17
3.2.2 ChannelMap 18
Kiểu dữ liệu của kênh 19
Các phương thức của ChannelMap 19
3.2.3 Client 22
3.2.4 Source Client 24
3.2.5 Sink Client 27
3.3 Một số kết quả thử nghiệm 30
3.3.1 Thử nghiệm trên dữ liệu sensor Intel 30 3.3.2 Thử nghiệm trên dữ liệu video qua chương trình video chat 32
Trang 41.1 Các bước có liên quan đến khai phá dữ liệu, lưu trữ và truy nhập, bắt đầu từ tiếp nhận dữ liệu thô và kết thúc bằng việc công bố dữ liệu và các sản phẩm, trong vòng đời của dữ liệu được tiếp nhận từ
một chương trình giám sát 2
1.2 Một kiến trúc hệ thống cho các hệ thống giám sát môi trường 8
2.1 Kiến trúc của DataTurbine 11
3.1 Tải dữ liệu vào RBNB server 25
3.2 Tải dữ liệu ảnh vào RBNB server 26
3.3 Một cách khác để tải dữ liệu ảnh vào RBNB server 26
3.4 Sink lấy dữ liệu đã đưa vào RBNB server 28
3.5 Sink lấy dữ liệu ảnh đã đưa vào RBNB server 29
3.6 Kênh nhiệt độ 30
3.7 Kênh ánh sáng 30
3.8 Kênh độ ẩm 31
3.9 Kênh điện thế 31
Danh sách hình vẽ
Trang 5Danh sách hình vẽ
Trang 63.1 Các kiểu dữ liệu của SAPI 193.2 Các kiểu MIME 20
4
Danh sách bảng
Trang 7Việt Nam là quốc gia nằm dọc bờ biển với chiều dài 11.409,1km, trong đóchiều dài bờ biển tiếp giáp biển Đông là 3.444km Với mục tiêu đưa Việt Namtrở thành một Quốc gia mạnh về biển theo Nghị quyết về Chiến lược biển ViệtNam đến năm 2020 được thông qua tại Hội nghị lần thứ tư Ban Chấp hànhTrung ương Đảng khóa X, việc bảo vệ và giám sát môi trường biển và bờ biểnViệt Nam đóng một vai trò quan trọng trong Chiến lược biển Việt Nam Trênthế giới việc nghiên cứu và phát triển mô hình và hệ thống giám sát thảm họa
và môi trường Biển thu hút sự quan tâm không chỉ của cộng đồng các nhànghiên cứu về biển và hàng hải mà còn dành được sự quan tâm của các nhànghiên cứu thuộc các lĩnh vực khác, trong đó có các nhà khoa học máy tính,các chuyên gia công nghệ thông tin Là một đơn vị nghiên cứu và đào tạo hàngđầu trong lĩnh vực biển và hàng hải Việt Nam, Đại học Hàng Hải Việt Namcũng đã và đang tập trung vào việc nghiên cứu và phát triển các mô hình và hệthống giám sát thảm họa và môi trường biển Là những nhà khoa học hoạtđộng trong lĩnh vực Công nghệ Thông tin, chúng tôi muốn đề xuất một môhình hạ tầng về công nghệ thông tin như là một phần của mô hình của hệthống giám sát bờ biển Việt Nam
Chúng tôi đề xuất ra một mô hình giám sát thảm họa và môi trường dọc bờbiển Việt Nam, trong đó mục tiêu đưa ra giải pháp về hạ tầng công nghệ thôngtin như là một phần của hệ thống giám sát thảm họa và môi trường bờ biển.Trong đề tài này, chúng tôi sẽ giới thiệu một ứng dụng mã nguồn mở có tên làDataTurbine Báo cáo kỹ thuật bao gồm ba chương:
• Chương 1 - Giới thiệu tóm lược mô hình giám sát tích hợp và kiến trúcgiám sát thời gian thực Giới thiệu thách thức của việc giám sát dữ liệu từxa
• Chương 2 - Cài đặt và cấu hình DataTurbine: Chương này sẽ trình bày vềcác yêu cầu để cài đặt DataTurbine lên hệ thống, quá trình cài đặt và triểnkhai các thành phần của DataTurbine lên hệ thống
Mở đầu
Trang 8• Chương 3 - Lập trình cho DataTurbine: Chương này tập trung trình bày về việc
i
Mở đầu
Trang 9MỞ ĐẦU iilập trình cho DataTurbine sử dụng SAPI (Simple ApplicationProgramming Interface) Trong chương sẽ có các ví dụ đơn giản để minhhọa về các bước đưa dữ liệu vào server và lấy dữ liệu từ server Chươngnày cũng giới thiệu một số kết quả thử nghiệm với lập trình choDataTurbine.
Mặc dù chúng tôi đã rất nỗ lực để hoàn thành đề tài với chất lượng tốt nhất
có thể nhưng trong quá trình thực hiện đề tài vẫn khó tránh khỏi những saisót Vì vậy, chúng tôi rất mong nhận được những ý kiến đóng góp của cácđồng nghiệp để đề tài hoàn thiện hơn
Trang 10Chương 1
Mô hình tích hợp giám sát
môi trường bờ biển
1.1 Hệ thống giám sát tích hợp
Giám sát tích hợp như là đo lường một cách có hệ thống, nhất quán, và đồng
bộ các biến vật lý, hóa học, sinh học, và kinh tế xã hội của các bộ phận khácnhau của hệ thống sinh thái theo thời gian và tại các vị trí xác định
Giám sát tích hợp khi được lập kế hoạch và thực thi một cách hiệu quả, sẽmang lại hai lợi ích chính Lợi ích đầu tiên là có được sự hiểu biết tốt hơn vềcác quan hệ nhân quả bên trong các hệ thống sinh thái và phản ứng của các hệthống này đối với các hành động quản lý Lợi ích chính thứ hai là sử dụng hiệuquả các tài nguyên hiện có để giám sát tình trạng của MNES Hình 1.1chỉ ra cácbước của một mô hình giám sát tích hợp
1.1.1 Các chi tiết về hạ tầng
Mục tiêu bao gồm:
1.Cung cấp một dịch vụ có giá trị cho vùng bằng cách cung cấp cho ngư nhân và địa phương dịch vụ để đánh giá chất lượng nước trong vùng vịnh
2.Hiểu mô hình môi trường gây lên lụt lội và các sự kiện khác
3.Cung cấp một hệ thống cảnh báo sớm cho ngư dân và địa
phương
Trang 111
Trang 12Hình 1.1: Các bước có liên quan đến khai phá dữ liệu, lưu trữ và truy nhập, bắt đầu từ tiếp nhận dữ liệu thô và kết thúc bằng việc công bố dữ liệu và các sản phẩm, trong vòng đời của dữ liệu được tiếp
nhận từ một chương trình giám sát
CHƯƠNG 1 MÔ HÌNH TÍCH HỢP GIÁM SÁT MÔI TRƯỜNG BỜ
Trang 131.1.2 Quản trị dữ liệu
Quản trị dữ liệu là một chức năng căn bản của hệ thống giám sát dữ liệu bởi vì
nó cung cấp hạ tầng, các tiến trình, và các chuẩn cần thiết cho phép lưu trữ,khai phá, và truy nhập dữ liệu được tạo ra từ các chương trình giám sát đãđược lựa chọn và các chương trình có liên quan khác Quản trị dữ liệu có tínhchất căn bản đối với luồng dữ liệu phù hợp với mục đích sử dụng đúng lúc vàtin cậy từ các thiết bị thu thập dữ liệu cho các phân tích viên dữ liệu, nhữngbáo cáo viên và những người truyền tin Một hệ thống quản trị dữ liệu đượcthiết kế đúng đắn phải là một đặc trưng trung tâm của một chương trình giámsát tích hợp, vì vòng đời của dữ liệu sẽ kéo dài trong suốt sự nghiệp của cácnhà khoa học Quản trị dữ liệu cho các chương trình giám sát thường khôngnhận được đủ sự quan tâm
1.1.3 Phân tích dữ liệu
Phân tích dữ liệu cho hệ thống tích hợp có vai trò quan trọng trong đối chiếucác tập dữ liệu từ các chương trình giám sát và hoàn thành việc phân tích ởquy mô vùng và địa phương để thấy được hiệu quả của quản trị dữ liệu trongviệc tăng cường và duy trì các giá trị MNES Phân tích dữ liệu về cơ bản sẽchuyển đổi dữ liệu giám sát kinh tế, xã hội, sinh thái thành tri thức và hiểu vềcác xu thế trong các giá trị MNES và các áp lực ở quy mô vùng và địa phương
1.1.4 Báo cáo và truyền tin
Báo cáo và truyền tin là chức năng cơ bản của giám sát tích hợp vì nó tập trungvào đưa ra các thông điệp chủ đạo và mức độ thích hợp của việc cung cấpthông tin về các kết quả giám sát cho đúng người đúng lúc Báo cáo và truyềnthông tin phức tap cho những người quản lý theo một khuôn dạng rõ ràng dễhiểu có tính chất căn bản nếu giám sát nhằm mục đích kích hoạt một phản ứngquản lý Các chức năng căn bản của một hệ thống giám sát tích hợp
1.Xác định rõ ràng mục đích của chương trình giám sát và các mục tiêu giám sát
2.Biên dịch và phân tích thông tin có liên quan đến các chương trình giám sát hiện có
3.Phát triển các mô hình khái niệm
4.Phát triển thiết kế lấy mẫu chung cho hệ thống giám sát tích hợp
Trang 145.Phát triển các giao thức giám
sát 6.Quản trị dữ liệu
7.Phân tích dữ liệu
8.Báo cáo và truyền tin
9.Tổng quát và kiểm tra
1.2 Thách thức của việc thu thập dữ liệu từ xa
Để thu thập dữ liệu trong một khoảng thời gian dài, tại những địa điểm cách
xa hàng trăm dặm (miles) từ trung tâm điều hành Chúng ta cần thiết lập mộtloạt các sensor trên thực địa để liên tục đo nhiệt độ, độ ẩm, và thu thập hìnhảnh Tất cả các dữ liệu cần được lưu trữ an toàn để sau đó được trích ra vàphân tích
Nhưng việc tiếp nhận và lưu trữ dữ liệu một cách đáng tin cậy khó hơn tatưởng Đôi khi các sensors bị hỏng trên khi thu thập dữ liệu cho một thửnghiệm dài hạn, và nếu chúng không được truyền qua một mạng LAN, thì cácnhà khoa học có thể không biết được chúng bị hỏng cho tới khi họ tìm kiếm dữliệu và phát hiện ra rằng thử nghiệm bị thất bại Có được dữ liệu đúng lúc vàđáng tin cậy từ một vị trí khác cũng là một thách thức Một số các nhà nghiêncứu muốn thiết lập thử nghiệm ở một vị trí ở xa chỉ để đưa ra một cảnh báokhi các điều kiện nào đó là đúng, chẳng hạn sự hình thành của một cơn bão-vìthế các nhà khoa học chỉ cần đi tới thực địa khi cần Dữ liệu không đáng tincậy có thể phá hỏng toàn bộ các kế hoạch này Ngoài ra, nhiều chương trìnhnghiên cứu cài đặt các sensor từ một số nhà sản xuất, và thường khó mà tíchhợp các phần mềm và phần cứng không đồng nhất vào cùng một hệ thống.Nếu không có một định dạng thống nhất, có thể cần mất nhiều thời gian để tổchức dữ liệu với các chỉ dẫn thích hợp Để đảm bảo có được dữ liệu tốt, nhữngcâu hỏi mà chúng ta cần trả lời là:
• Làm thế nào để truyền dữ liệu giữa các nguồn, các kho dữ liệu, và các ứngdụng mà sử dụng nó?
• Làm thế nào để truyền dữ liệu gần với thời gian thực một cách tin cậy trêncác mạng truyền dữ liệu có hiệu năng khác nhau
Trang 151.3 Các kiểu giám sát
Giám sát có thể cung cấp thông tin về các yếu tố vật lý hóa học (ví dụ, độ mặtcủa nước biển, nhiệt độ, mức độ ô nhiễm), các loài (ví dụ, thảm thực vật dướibiển, sự thay đổi về độ bao phủ của các rặng san hô), và các độ đo về tìnhtrạng chung của hệ thống sinh thái Người ta chia giám sát môi trường bờ biển
và các vùng biển thành các tầng giám sát
• Giám sát quy mô tầng 1 nhằm mục đích cung cấp thông tin có liên quanđến tình trạng chung và các xu thế cho những khu vực trải dài trên quy
mô toàn quốc đến khu vực
• Giám sát và đánh giá ở quy mô tầng 2: Giám sát quy mô địa phương.Giám sát tầng 2 nhằm mục đích cung cấp thông tin có liên quan đến tìnhtrạng và xu thế cho các khu vực mà tương đối nhỏ so với tầng 1 Giám sát
ở quy mô này sẽ cung cấp thông tin về tình trạng và các xu thế
• Giám sát tầng 3: Giám sát cụ thể với từng điểm Giám sát tầng 3 nhằm mụcđích giải quyết các vấn đề liên quan đến từng điểm
1.3.1 Các báo cáo
Các thẻ báo cáo sẽ đưa ra thông tin được thông dịch một cách dễ dàng về tìnhtrạng và các xu thế của khu vực báo cáo Các thành phần của mot bản báo cáohàng năm về tình trạng và xu thế hàng năm của tài nguyên biển và tài nguyênvùng bờ biển bao gồm:
• Báo cáo khung cảnh- một đặc trưng hóa về tài nguyên/atlas, bao gồmnhưng không chỉ hạn chế ở thông tin cập nhật nhất về các mặt độ quầnthể dọc theo các vùng bờ biển
• Sử dụng đất
• Phân loại các vùng nước trên bản đồ
•
Trang 161.4 Một số ứng dụng điển hình
1.4.1 Nghiên cứu Acid hóa đại dương
Acid hóa đại dương là kết quả của việc tích tụ các khí gas do hiệu ứng nhàkính-chủ yếu là do CO2 trong khí quyển Khi các khí gas tích lũy trong khí
quyển, chúng cũng hòa tan trong nước biển và tăng độ axit của nước biển ?.
Hiện nay cộng đồng khoa học vẫn không biết nhiều về axit hóa đại dương ởcác khu vực bờ biển, phần lớn việc thu thập dữ liệu được tiến hành ở các vùngnước mở Vì thế Smith Lat tại viện Scripps Institue of Oceangraphy đã sửdụng SensorPod để thiết lập một chương trình triển khai tại Scripps Pier đểthiết lập một chương trình giám sát Axit hóa đại dương lâu dài Axit hóa đạidương có thể đóng vai trò như tác nhân gây vôi hóa các sinh vật biển mà có vỏhoặc các khung xương ngoài như con trai, con hàu, san hô Triển khai ScrippPier tại UC San Diego tiếp tục vận hành tốt với số lần gặp sự cố là tối thiểu kể
từ tháng 3 năm 2013 Triển khai Scripps Pier có tiềm năng trở thành chuẩncông nghiệp để giám sát độ pH tại khu vực bờ biển
1.4.2 Mạng cảm biến nhằm ứng phó với tẩy trắng san hô
ở đảo Racha Yai, Thái Lan
Biến đổi khí hậu và sự gia tăng nhiệt độ bề mặt nước biển, kết hợp với hiệuứng axit hóa đại dương đã gây tác động xấu tới các hệ sinh thái biển Hệ sinhthái rạn san hô rất nhạy cảm với những thay đổi khí hậu trong môi trường vật
lý Tẩy trắng san hô do nhiệt độ nước biển cao bất thường đã có những tácđộng tàn phá và lan rộng trên toàn thế giới Nhiều yếu tố vật lý làm giảm tỷ lệtẩy trắng san hô như ánh sáng thấp, dòng chảy cao, nhiệt độ thấp và các chấtdinh dưỡng cao hơn Mối liên hệ giữa các điều kiện vật lý và các phản ứngsinh học dẫn tới tẩy trắng san hô cho phép dự đoán hiện tượng này dựa trên
số đo các thông số vật lý Do đó, việc giám sát các thông số này trở thành mộtphần quan trọng của việc phát hiện và ứng phó với tẩy trắng san hô Trên yêucầu đó, một mạng cảm biến đã được lắp đặt ở đảo Racha Yai, Thái Lan vào đầu
năm 2011 nhằm cung cấp thông tin thời gian thực về các sự kiện ? Hệ thống
được lắp đặt bao gồm một camera dưới nước, hai camera trên bờ, một CTD,nhiều cảm biến nhiệt độ / ánh sáng HOBO, cảm biến G và hai trạm thời tiếtDavis Việc thu nhận và truyền dữ liệu trong hệ thống này được thực hiện nhờ
sử dụng DataTurbine Dữ liệu được truyền qua nhiều server DataTurbine vàđưa vào các server dữ liệu nội bộ trong một vài định dạng sau khi làm sạchvới các bài kiểm tra chất lượng dữ liệu kèm theo các thống
Trang 17kê Kể từ khi bắt đầu triển khai vào đầu năm 2011, hệ thống này đã hoạt độngrất ổn định Các gián đoạn nếu có chỉ là do việc bảo trì và mất điện Đảo RachaYai có tẩy trắng san hô rộng lớn trong năm 2010 nhưng trong năm 2011 đãkhông còn quan sát được hiện tượng này.
1.5 Quản trị dữ liệu hàng hải và những thách
thức
Trước tiên, chúng ta cần phân biệt dữ liệu với thông tin Dữ liệu là các giá trịthô có thể quan sát được có được từ các hoạt động nghiên cứu và giám sát; cácgiá trị này có thể là số (các độ đo nhiệt độ hoặc độ mặn) Thông tin được sửdụng để đề cập tới dữ liệu mà đã được xử lý hoặc kết quả Quản trị dữ liệuhàng hải hoặc đại dương là quá trình nhập, kiểm soát chất lượng, lưu trữ vàcông bố dữ liệu nghiên cứu và giám sát được thu thập trong các vùng biển vàđại dương Dữ liệu thường được phân thành dữ liệu vận hành thời gian thực(dữ liệu được thu thập bởi các mạng sensor và các nền tảng đó, được truyềnbởi vệ tinh và sóng radio) và dữ liệu lưu trữ/dịch vụ (dữ liệu được thu thậpbởi các nhóm nghiên cứu và các dự án nghiên cứu, bao gồm dữ liệu mô hìnhhóa, dữ liệu lĩnh vực, dữ liệu thử nghiệm) Dữ liệu được thu thập tự động trêncác tầu nghiên cứu được gọi là dữ liệu bán vận hành Quản trị dữ liệu hàng hảigặp phải những thách thức sau:
• Thứ nhất, sự tăng lên đáng ngạc nhiên về dung lượng dữ liệu, đặc biệttrong lĩnh vực cảm nhận từ xa
• Thứ hai, là sự da dạng về các kiểu dữ liệu cần phải quản lý: dữ liệu sinhhọc, địa chất, địa lý, hóa lý, tất cả đều phải được tích hợp, và các phân tích
và các sang phẩm thông tin phải rút ra từ các dữ liệu này
• Thứ ba, sự khác biệt chính giữa quy mô mà dữ liệu được thu thập vàthông tin cần đến
Rất hiếm các dự án thu thập dữ liệu và thông tin trên quy mô cục bộ, và trênkhoảng thời gian ngắn Bản thân con người gây lên các vấn đề như sự nóng lêntoàn cầu và sự tăng lên của mực nước biển, sự cạn kiệt của các loài cá, ô nhiễm,
đã đặt ra sự cần thiết phải quản lý dữ liệu ở quy mô toàn cầu, tích hợp các tập
dữ liệu cục bộ là cách duy nhất để tạo ra cơ sở thông tin dữ liệu toàn cầu đểđưa ra các quyết định
Quản trị dữ liệu hiện đại không thể tách rời khỏi công nghệ thông tin
Những tiến bộ gần đây trong công nghệ trợ giúp cho việc làm việc với sự đa dạng và dung
Trang 18Hình 1.2: Một kiến trúc hệ thống cho các hệ thống giám sát môi trường
lượng của các luồng dữ liệu Internet đưa ra cách thức để trao đổi dữ liệu vớichi phí thấp Ấn bản điện tử ngày càng trở nên là phương pháp được lựa chọncho truyền tin các kết quả nghiên cứu và thông báo các thông tin khác
1.6 Kiến trúc hệ thống
1.6.1 Kien truc de xuat
Hình ?? chỉ ra kiến trúc cho các hệ thống giám sát môi trường trong đó
DataTurbine được sử dụng như là một thành phần kiến trúc
1.6.2 Phần cứng
Chúng tôi lựa chọn một thiết bị di động Android để thu thập dữ liệu, vì nó cómức tiêu thụ năng lượng thấp và nó có khả năng chạy Java Chúng tôi sử dụngcác thiết bị di động chạy năng lượng mặt trời và 3G tích hợp để truyền dữ liệu.Các sensor đo điện thế, nhiệt độ, độ ẩm cho phép chúng ta phân tích trạngthái của thiết bị SensorPod: SensorPod là một nền tảng tính toán di động,được thiết kế tùy biến, có khả năng thích ứng cho các mạng Sensor phối hợpvới các điện
Trang 19thoại di động Android với các sensor môi trường và một hệ thống quản trị dữliệu điện đoán đám mây Kiến trúc mang tính modun của nó được dựa trên cácchuẩn mở và phần mềm mã nguồn mở SensorPod có thể
Giám sát thời gian thực môi trường và các hệ thống sensor Cung cấp cho cácnhà khoa học siêu dữ liệu (metadata) như tình trạng, QA, và các tham số đượcxác định bởi người sử dụng Cho phép những người phát triển tùy biến vớicác dự án của họ với thực tế công nghiệp tốt nhất và các xu thế công nghệ.Với SensorPod dựa trên điện thoại Android, trạm phía bờ không còn cầnthiết nữa Dữ liệu đươc truyền về Amazon Cloud trong thời gian thực Bằngcách tận dụng lợi thế của các hệ thống thương mại mạnh SensorPod trở thànhmột cách kinh tế và tin cậy để đơn giản hóa việc triển khai sensor Dưới đây lànhững lý do tại sao lại sử dụng SensorPod?
• Trang bị cho các nhà nghiên cứu công nghệ dễ sử dụng Tăng cường sức mạnh nghiên cứu với công nghệ có thể tiếp cận được
• Đưa ra một hạ tầng mạnh cho triển khai và bảo trì sensor lâu dài
• Đơn giản hóa kiến trúc-quản lý trị dữ liệu và mạng truyền tin
• Cài đặt một kiến trúc mở và linh hoạt
• Tránh phải mua hệ thống phần cứng và phần mềm thương mại
• Hệ thống được thiết kế để có thể chấp nhận được cả các sensor số và tương tự
Thử nghiệm đã chỉ ra rằng, trước khi sử dụng SensorPod, các sensor dướinước đã được triển khai dưới nước vài tháng Thông thường, các senssor sẽhoạt động sai do cạn kiệt pin hoặc các vấn đề khác, dẫn tới việc bỏ sót hoặc cácđiểm dữ liệu chất lượng thấp Với SensorPod, thông tin thời gian thực, các nhàkhoa học có thể giám sát và phản ứng lại tình trạng của pin, và các kết quả đọcsensor bằng cách lên lịch bảo trì Điều này cực kỳ quan trọng trong việc đảmbảo rằng dữ liệu được thu thập là phù hợp và chính xác và mất mát dữ liệu làtối thiểu trong một tiến trình thu thập dài
Trang 20hiện xử lý thời gian thực và còn nhiều hơn thế nữa ? DataTurbine được phát
triển bởi công ty Creare, một công ty tư vấn kỹ thuật và phát triển phần mềm
ở Hanover, New Hampshire Lúc mới ra đời, nó là một sản phẩm thương mại
Sự phát triển của DataTurbine diễn ra cùng lúc với sự tiến bộ trong công nghệcảm biến và truyền thông và mong muốn của cộng đồng khoa học kỹ thuật làtriển khai các mạng cảm biến quy mô lớn trong thế giới thực và các hệ thốngquan sát về môi trường DataTurbine đã được phát triển như một công cụtruyền dữ liệu cho các ứng dụng thu nhận dữ liệu thời gian thực và độc lậpvới các ứng dụng cụ thể Sau nhiều năm cộng tác và nhiều tháng đàm phán,giám đốc điều hành của công ty Creare đã ký quyết định về việc phát hànhDataTurbine như là một sản phẩm phần mềm mã nguồn mở Tháng 10/2007,DataTurbine chính thức được chuyển từ phần mềm độc quyền sang phần mềm
mã nguồn mở theo giấy phép Apache 2.0 Tất cả mã nguồn và tài liệu đượccông khai trên website của dự án Hiện nay, các nhà phát triển và cộng đồngngười dùng vẫn tiếp tục phát triển phần mềm và hỗ trợ việc phát triển ứngdụng
DataTurbine gồm có 3 thành phần chính, đó là:
• Server: nhận và phân phát dữ liệu
• Source: chương trình đưa dữ liệu vào server
Trang 2110
Trang 22Hình 2.1: Kiến trúc của DataTurbine
• Sink: chương trình lấy dữ liệu từ server
Mỗi thành phần có thể được đặt trên cùng một máy hoặc các máy khác nhau,điều này tạo nên sự linh hoạt trong việc triển khai ứng dụng
2.1.1 Kiến trúc của DataTurbine
2.1.2 Server
Server của DataTurbine được chứa trong rbnb.jar (viết tắt của Ring BufferedNetwork Bus), nó là phần cốt lõi của DataTurbine và được sử dụng như điểmtrung tâm mà các ứng dụng (source và sink) giao tiếp với Server hoàn toànđộc lập với dữ liệu mà nó nhận và có thể chấp nhận nhiều kiểu dữ liệu khácnhau bao gồm số, âm thanh, video, văn bản, Server có thể được nghĩ tớinhư một chuỗi các bộ đệm vòng với dữ liệu mới được thêm vào và dữ liệu cũ
bị xóa đi khi vùng lưu trữ đầy Source sẽ định rõ kích thước lưu trữ (archivesize) và kích thước bộ nhớ cache (cache size) của chúng
• Kích thước lưu trữ quyết định kích thước bộ đệm vòng và lượng dữ liệu được
CHƯƠNG 2 GIỚI THIỆU VỀ DATATURBINE 22
Trang 23đưa vào bộ đệm trước khi bị bỏ đi Một giá trị tốt phụ thuộc vào không gian lưu trữ của thiết bị mà server đang chạy trên đó và nhu cầu của dự án.
• Kích thước bộ nhớ cache quyết định có bao nhiêu bộ đệm vòng được chứatrong bộ nhớ (RAM) Điều này một lần nữa được quyết định bởi bản chấtcủa hệ thống và các ứng dụng Bộ nhớ cache có thể làm tăng tốc độ xử lýnhưng một bộ nhớ cache lớn hơn không đồng nghĩa với một hệ thốngnhanh hơn
Cách tiếp cận này cho phép các ứng dụng tương tác với dữ liệu trong thời giangần với thời gian thực (near real-time) Sink có thể đọc dữ liệu khi nó được thuthập và hiển thị nó trực tuyến, trong Matlab hoặc các ứng dụng khác Sinkcũng có thể tương tác với dữ liệu và đưa nó vào thiết bị lưu trữ lâu dài
Server yêu cầu một nhãn thời gian (timestamp) chính xác cho mỗi điểm dữliệu Một hạn chế của điều này là dữ liệu không thể được tải lại vào server.Điều này có nghĩa là dữ liệu phải được đi vào theo thứ tự và như vậy, mỗiđiểm dữ liệu phải có một nhãn thời gian lớn hơn nhãn thời gian được ghinhận trước đó Kích thước được xác định trong số lượng frame Frame là mộtcấu trúc dữ liệu gồm một hoặc nhiều kênh (channel) với một hoặc nhiều đốitượng dữ liệu trên một kênh Do đó kích thước của frame có thể nhỏ hoặc lớn
và có thể khác nhau giữa các frame
2.1.3 Source
Source là chương trình đưa dữ liệu vào server Source chạy độc lập với servernhư một ứng dụng riêng biệt và sử dụng mạng để giao tiếp Nó có thể chạytrên cùng máy với server hoặc trên một máy khác Mỗi source có thể chứanhiều kênh và mỗi kênh có thể có kiểu dữ liệu riêng của nó Source điều khiểnviệc cấp phát không gian lưu trữ trên ổ cứng và bộ nhớ của phía server
Cấu tạo của source như sau:
• Tên: Xác định source
• Server đích: Server mà source gửi dữ liệu tới
• Kích thước bộ nhớ cache: Source định rõ có bao frame dữ liệu để cấp phát
bộ đệm cho nó trong bộ nhớ của server
• Kích thước lưu trữ: Source định rõ có bao nhiêu frame dữ liệu để lưu trữ trên ổ cứng của server
Trang 24• Các kênh:Mỗi kênh gồm:Tên: Xác định kênh cụ thể; Kiểu MIME: Kiểu truyền thông mà các ứng dụng có thể sử dụng để đưa ra các quyết định về
dữ liệu
Trang 25chúng đang nhận Mỗi kênh chỉ có thể lưu trữ một kiểu dữ liệu;Dữ liệu: chuỗi các điểm dữ liệu, bao gồm thời gian và giá trị.
Chúng ta hãy tưởng tượng về một tháp khí tượng đo nhiệt độ và độ ẩmđược đặt trên một ngọn đồi Gần đó là một trạm đo nhiệt độ Chúng ta muốnđưa dữ liệu này vào DataTurbine trên một chiếc laptop ở trạm đó Các bướcchúng ta cần thực hiện là:
• Khởi động server trên laptop (rbnb.jar)
• Khởi động source thứ nhất trên laptop, cái đọc dữ liệu từ tháp khí tượng
và đưa nó vào DataTurbine, source này chứa 2 kênh (nhiệt độ và độ ẩm)
• Khởi động source thứ hai trên laptop, cái đọc dữ liệu từ trạm và đưa nóvào server, source này chỉ chứa 1 kênh (nhiệt độ)
Laptop của chúng ta hiện đang có 3 chương trình đang chạy độc lập Bây giờchúng ta đã có dữ liệu trong server và chúng ta cần một cách để truy cập nó.Điều này sẽ được thảo luận trong phần sau PlugIn là một kiểu source đặc biệt.Trong khi source thông thường chủ động gửi dữ liệu tới DataTurbine server thìplugin gửi dữ liệu để đáp lại các yêu cầu được gửi tới nó thông qua kết nốiplugin server
2.1.4 Sink
Sink là chương trình lấy dữ liệu từ server và sử dụng nó, ví dụ đưa nó vàoMatlab hoặc Real-time Data Viewer hoặc đặt nó vào một cơ sở dữ liệu quan hệhoặc một file để lưu trữ lâu dài Cũng giống như source, sink chạy độc lập vớiserver như một ứng dụng riêng biệt và sử dụng mạng để giao tiếp Nó có thểchạy trên cùng máy với server hoặc trên một máy khác Các kiểu sink thườnggặp
• Viewer: Ứng dụng mà có thể được sử dụng để truy cập và tương tác vớiviệc truyền dữ liệ nhu Real-time Data Viewer (RDV), Google Earth,
• Web Server: Ứng dụng mà cung cấp dữ liệu như là nội dung trang webcho việc hiển thị công khai VD: Các đồ thị trên một website công cộng
• Analysis: Lấy dữ liệu và thực hiện một số loại phân tích thủ công hoặc tựđộng VD: Mat lab, R, ESPER, Export: Xuất dữ liệu vào trong một filehoặc tập hợp các file cho việc phân phối hoặc tích hợp VD: CSV files,Excel,
Trang 26
• Storage: Lưu trữ lâu dài trong cơ sở dữ liệu hoặc một tập các file VD: Lưutrữ trong một cơ sở dữ liệu quan hệ Khác: Dễ dàng code bất kỳ sink nào
1 Khởi động server trên laptop (rbnb.jar)
2.Khởi động source trên laptop đọc dữ liệu từ tháp khí tượng
3.Khởi động source trên laptop đọc dữ liệu từ trạm đo nhiệt
độ
4.Khởi động sink để quan sát dữ liệu lúc nó được thu thập trong thời gian thực Trong trường hợp này chúng ta sẽ sử dụng Real-time Data Viewer (RDV)
5.Khởi động sink để đưa dữ liệu vào thiết bị lưu trữ lâu dài
Laptop của chúng ta hiện đang có 5 chương trình chạy độc lập (1 server, 2source và 2 sink) Chúng ta hầu như chắc chắn sẽ giữ cho server, source vàsink (cái đưa dữ liệu vào thiết bị lưu trữ) chạy mọi thời điểm Nhưng chúng ta
sẽ chạy và dừng sink quan sát (trong trường hợp này là RDV) khi cần thiết
2.2 Những điểm mạnh và hạn chế của
DataTur-bine
DataTurbine có những điểm mạnh sau
• DataTurbine là một công cụ truyền dữ liệu đáng tin cậy
• DataTurbine có khả năng tương tác với dữ liệu trong thời gian thực hoặc gần thời gian thực
• Dễ dàng làm việc với nhiều kiểu dữ liệu khác nhau
• Tách biệt cái thu nhận dữ liệu (source) với cái sử dụng dữ liệu (sink)
• Liên tục truy cập dữ liệu trong lịch sử và dữ liệu thời gian thực