-
Notifications
You must be signed in to change notification settings - Fork 13
CHORDS User Experience
Much of this content can also be explored in greater detail on the CHORDS User Site.
You are a researcher. You are making a variety of real-time geophysical measurements at dispersed field sites. Your colleagues are routinely generating analysis products. You want to combined these diverse artifacts without a huge development effort to allow you to visualize and assimilate your data as it is collected. You are ready to "jump on the cloud bandwagon". But you don't have an IT staff, an IT budget, or time.
[Note - in general we might want to try an focus more on required/desired functionality, rather than implementation at this point. State what we want to be able to achieve and then we can figure out what is possible or reasonable - kk]
CHORDS will make this just about easy as it can get.
You create an account on a cloud service provider (e.g. Amazon), and create and run your own copy of the free CHORDS instance. Once it is running, you will have a complete real-time system that integrates a web server, a database, and simple management tools. Your CHORDS system has a unique (and legible) URL that you can share with team members and other stakeholders.
The CHORDS web server is now available to handle data traffic. Observations from sensors, analytical products, and other artifacts are streamed directly to the server with simple HTTP requests. In the same fashion, data consumers will send HTTP requests to fetch data and meta-data from CHORDS. CHORDS is based on simple to use web services.
As the owner of the CHORDS instance, you use web forms to configure the types of data streams that will be admitted to the CHORDS database, and the ways that the data can be navigated and delivered to requesting users. "Point-and-click" options allow the database to be archived and/or delivered en-masse to your system.
Management web pages on your CHORDS server provide continuous information on the data traffic statistics and resource utilization. As the system operator, you can enable and disable particular data streams, control access to the datastore, and activate/deactivate the system.
The CHORDS system receives data via a RESTful HTTP API. To adapt a sensor to work with CHORDS, you can either modify the data stream at the sensor level, or implement software to reformat the data stream and transmit it over the Internet. This allows you to transmit data from devices, even if they were not originally designed with Internet transmission in mind. The software to transform the stream is simple, and different examples are provided with CHORDS for some of the most common device types. It is even possible for your device to query CHORDS for data to be used in real time decision making and control.
You and your stakeholders now want to access the data. CHORDS provides standard data access services, such as OGC-compliant web maps (WMS), web features (WFS), web coverage (WCS - defaults to netCDF), and Keyhole Markup Language (KML). In their simplest form, data is accessed through these services by issuing an OGC service compliant URL string from your browser. Many, if not most, GIS tools and many analysis tools now support the use of these services so it is just a matter of pointing them to the CHORDS server location. Other queries could be provided to produce tablular views in the browser window, or create downloadable files in a variety of formats (text, csv, netCDF, excel, etc.).
Users can embed OGC queries in scripts and programs, which can then perform automatic and continuos data monitoring and analysis.
[not sure about support for this] Furthermore, your CHORDS server has pre-made query packages that you can download and plug into your Matlab, Excel and Python programs. These provide a high-level interface between your own analysis system and CHORDS, so that you can quickly be analyzing and visualizing your real-time observations.
You have quickly spun-up a real-time and Internet-based data collection, management and distribution system. The cloud based CHORDS server was simple to create, easy to configure and manage, and inexpensive to operate. Adapting your data sources was the most daunting part, but it's straightforward, and you are technically inclined anyway. Best of all, your real-time data is now available to anyone who can write a URL.
Project Management
- Stakeholders
- Communication
- Use Cases
- Requirements
- Deliverables
- Milestones Associated with a Release
- "Sandbox" Milestones
- Github Workflow
AWS
- AWS Portal Migrations
- Amazon Appliance Workflow
- Overview
- Bringing up a new CHORDS Portal
- Cloud Formation
- EC2 Costing and Memory Constraints
Docker
- Running CHORDS
- Docker on AWS
- Duplicating Docker/Influxdb portals
- Docker on Raspberry Pi
- Docker Details and Tips
- Running CHORDS on Windows 10
Influxdb
Data Formats
Google Maps
Ingest Utilities
Miscellaneous
- Recovery from a full disk
- Github/Dockerhub release scheme
- CHORDS gh-pages and jeykll
- Bootstrap
- CHORDS Portal Web Site
- Dashboard Helper Refactor
- Development Notes
- Heroku
- Meteobridge
- Migrating from mysql to mysql/influxdb portals
- NCAR Wx Stations into CHORDS
- PAWS to CHORDS
- Post Get Query Syntax
- Postgres Testing
- Rails Tips
- Ruby and Rails Resources
- CUAHSI Archive
Historical Archive