130 likes | 145 Views
Develop a data discovery service that allows users to find data sets based on geographic region, observed quantities, or keywords. This project aims to create an expandable, extensible, and scalable system using LDAPv3 as the standard. The directory server will be populated automatically from data servers, with tools to assist in query creation. It will work with both applications and web servers.
E N D
Using a LDAP Directory Server for Environmental Data Discovery Donald Denbo NOAA-PMEL/UW-JISAO Presented by Eugene Burger NOAA-PMEL/UW-JISAO http://www.epic.noaa.gov/cdp
Objective Develop a data discovery service that enables users to find data sets available from on-line Data Servers based on geographic region, observed quantities, or keyword. 18th AMS International Conference on IIPS
Design Goals • Expandable, extensible, and scalable • Use standards when possible (LDAPv3) • Platform independent • Automated population of directory directly from data servers • Tools to aid in the creation of queries • Work both with applications and web servers 18th AMS International Conference on IIPS
Approach • Extend existing LDAP objects and parameters to create DataServer and DataCollection objects. • Develop application to retrieve metadata from Data Server and XML configuration file then merge/update directory entries. • Enhance Web Server and Desktop Application to directly access LDAP Directory Server. • Develop monitor application to continuously test availability of Data Server and its data collections and appropriately modify directory entry. 18th AMS International Conference on IIPS
Architecture Directory service has three major components. • Directory server and the flow of information • The schema (relationship between directory objects and parameters) • LDAP query construction 18th AMS International Conference on IIPS
Directory Server • Directory information updated directly from remote data servers. • Queries can be made from both desktop client and Web client. Queries follow the LDAP protocol. • Data server and data collection information can be easily updated. Only Directory Server address needs to be hard-coded into client. 18th AMS International Conference on IIPS
Update Availability Status Directory Server DesktopClient Create and Update Entries Directory Search Data DirectorySearch Data Server Monitor WebClient Data Test Availabilityof Data Server WebServer DataServers
Directory Schema • Directory information is structured as a “tree”. • “dataserver” object contains data server location, name, owner, etc. • “datacollection” object contains data collection name, description, temporal and spatial ranges, keywords, owner, etc. 18th AMS International Conference on IIPS
Directory Schema o=cdp.noaa.gov ou=CDPServers ou=People ou=Groups ou=EPICCTDServer ou=NODCServer ou=TAOServer ou=UHSLServer cid=NorthPacific cid=HourlySL cid=SouthPacific cid=DailySL cid=Alaska cid=MonthlySL
Query Construction • LDAP queries have a “Reverse Polish” flavor. • For example, &(keyword=atlantic)(keyword=salinity) is requesting a keyword match of atlantic and salinity. • JavaCC parser developed to translate user friendly entry to LDAP query. For example, Temperature AND salinity AND (pacific OR atlantic) is translated to &(|(keyword=atlantic)(keyword=pacific))(&(keyword=salinity)(keyword=temperature)) 18th AMS International Conference on IIPS
Graphical Query Entry 18th AMS International Conference on IIPS
Keyword List • Keyword list downloaded from directory server • Popup used to aid the user in constructing a query 18th AMS International Conference on IIPS
Future Directions • Add directory-side parsing and comparisons of date-range strings. • Add directory-side parsing and intersection checking of Latitude-Longitude domain bounds. 18th AMS International Conference on IIPS