Environmental Monitoring: Database and Beyond Chengyang Zhang Computer Science Department University of North Texas
Overview Data Transmission and Storage Database Design DBMS Database Schema Design Data Presentation Traditional Web Interface Virtual Earth / Google Map Data Exchange XML Derivatives SensorML/O&M Web Services Sensor Web Enablement(SWE)
Overview Data Transmission and Storage Database Design DBMS Database Schema Design Data Presentation Traditional Web Interface Virtual Earth / Google Map Data Exchange XML Derivatives SensorML/O&M Web Services Sensor Web Enablement(SWE)
System Architecture 1 Database Server Internet Client Data Browsing and Processing Base Station Node Wireless Sensor Nodes GPRS Modem Gateway (Single Board Computer) GPRS Link Data loggers 1 Jerry’s slide
Current Data Flow Pull COD Daemon Push UV Daemon Wireless Data Daemon DBChecker Daemon Pull/Push
Raw Data Format COD FTP Data Directory Structure: YEAR/MONTH/cod_date_time 2007/9/cod_ _8.30 File Format: Station_Name/Gate_Name, date, time, rain_guage_reading/gate_status RG1, 9/21/2007, 8:30:57 AM, 0.00 HC_N_Gate_STATUS, 9/21/2007, 8:30:57 AM, UP UV Data Directory Structure: YEAR/MONTH/ uv_ date_time.txt 2007/9/uv_ _12.30 File Format: Date, Time, SUV #1, UVA #2, Temp 1, Temp2 “ ”, “12:30”, 1.367, 0.000, 32, 0
Raw Data Format(cont.) Wireless Data Data Transmission Rate every hour (send 4 data packets) can be adjusted Data Packet Format Directory Structure: YEAR/MONTH/greenbelt_date_time File Format: Date, time, value #1, value #2, …… datetimeSensor Data 4 byte18 * 4 bytes or More
Overview Data Transmission and Storage Database Design DBMS Database Schema Design Data Presentation Traditional Web Interface Virtual Earth / Google Map Data Exchange EML SensorML KML
DBMS Selection Free/Open Source v.s. Commercial Database We choose Free! PostgreSQL v.s. MySQL We choose PostgreSQL! Data Integrity Check Server-side Programming Spatial Cartridge Support(PostGIS)
Overview Data Transmission and Storage Database Design DBMS Database Schema Design Data Presentation Traditional Web Interface Virtual Earth / Google Map Data Exchange EML SensorML KML
Database Schema Design
Overview Data Transmission and Storage Database Design DBMS Database Schema Design Data Presentation Traditional Web Interface Virtual Earth / Google Map Data Exchange XML Derivatives SensorML/O&M Web Services Sensor Web Enablement(SWE)
Web Interface (Powered by PHP)
Overview Data Transmission and Storage Database Design DBMS Database Schema Design Data Presentation Traditional Web Interface Virtual Earth / Google Map Data Exchange XML Derivatives SensorML/O&M Web Services Sensor Web Enablement(SWE)
Virtual Earth Interface
Google Map Interface (KML)
Overview Data Transmission and Storage Database Design DBMS Database Schema Design Data Presentation Traditional Web Interface Virtual Earth / Google Map Data Exchange XML Derivatives SensorML/O&M Web Services Sensor Web Enablement(SWE)
Multi-Layer System Structure * * From CRI proposal
Data Exchange Motivation Retrieve data from Web-enabled Sensor Data Repositories Publish our sensor data as web-enabled service Technology Behind the Scene XML Web Service
Overview Data Transmission and Storage Database Design DBMS Database Schema Design Data Presentation Traditional Web Interface Virtual Earth / Google Map Data Exchange XML Derivatives SensorML/O&M Web Services Sensor Web Enablement(SWE)
XML Derivatives KML ( Keyhole Markup Language ) A markup language for displaying geographical data in an earth browser * Example City of Denton: Doyle and Freeman Rain Gauge Reading: 0 inch , *
XML Derivatives (Cont.) EML ( Ecological Metadata Language) A markup language developed by/for the ecological discipline * * eml packageId: UNTCSE.1.1 system: knb dataset title: Greenbelt Wireless Soil Moisture Dataset creator individualName contact surName:Chengyang surName: Shu individualName
XML Derivatives (cont.) GML ( Geography Markup Language ) * A markup language defined by the OGC to express geographical fatures Example 0,0 100,0 100,100 0,100 0,0 100, , ,300 *
Overview Data Transmission and Storage Database Design DBMS Database Schema Design Data Presentation Traditional Web Interface Virtual Earth / Google Map Data Exchange XML Derivatives SensorML/O&M Web Services Sensor Web Enablement(SWE)
XML Derivatives (cont.) SensorML ( Sensor Model Language ) * An OGC standard o describe processes of sensor measurements and observations discover sensors obtain sensor information access sensor observations receive alerts *
SensorML (cont.) SensorML ( Sensor Model Language ) * *
O&M O&M ( Observations & Measurements ) * *
Overview Data Transmission and Storage Database Design DBMS Database Schema Design Data Presentation Traditional Web Interface Virtual Earth / Google Map Data Exchange XML Derivatives SensorML/O&M Web Services Sensor Web Enablement(SWE)
Web Services * Web Services – A program that can be executed through HTTP and XML SOAP (Simple Object Access Protocol) Request / Response WSDL (Web Service Description Language) Describes how to connect and query information UDDI ( Universal Description Discovery and Integration) Service Registration And Discovery *
Web Services(cont.) SOAP Examples Request <m:SoilMoistureDataRequest xmlns:SOAPSDK1=" Hourly Response <SoilMoistureDataResponse xmlns:SOAPSDK1=" ">.....
Web Services(cont.) WSDL Examples
Overview Data Transmission and Storage Database Design DBMS Database Schema Design Data Presentation Traditional Web Interface Virtual Earth / Google Map Data Exchange XML Derivatives SensorML/O&M Web Services Sensor Web Enablement (SWE)
Sensor Web Enablement * Decision Support Tools - vendor neutral - extensive - flexible - adaptable Heterogeneous sensor network In-Situ monitors Bio/Chem/Rad Detectors Surveillance Airborne Satellite - sparse - disparate - mobile/in-situ - extensible Models and Simulations - nested - national, regional, urban - adaptable - data assimilation Sensor Web Enablement - discovery - access - tasking - alert notification web services and encodings based on Open Standards (OGC, ISO, OASIS, IEEE) * vast.uah.edu/SensorML/presentations/SWE_SensorML_Botts.ppt
SWE Services SOS (Sensor Observation Services) Formerly SCS fetch observations Response to queries WNS (Web Notification Services) asynchronous notification of sensor events two-way SPS (Sensor Planning Services)
SWE Deployment Database (Spatial Database Preferred) Intermediate Program(Middleware) that converts sensor schema and readings to SensorML/O&M javabeans etc, XML Parser SAX etc. SOAP Toolkit Apache soap toolkit etc.
Thank you!