BigSense is a RESTful web service, written in Scala, that is designed to handle the collection and retrial of sensor data. It was designed to work with LtSense, but can be extended to work with other sources of sensor inputs. When used with LtSense, it consumes data in the SenseData XML Format and has a Webservice API that can be used to query that data.
Queries can be restricted by timestamp range, date range, sensor number, relay number or combinations of the above constraints. BigSense can also aggregate sensor data, such as given the average temperatures over a given period or showing the average flow rates over a given period. It can handle image data and provides a means for security using RSA certificate verification. Finally, it supports outputs in a number of formats including XML, comma separated values, tab delimited values or HTML tables.
Multiple relational databases are supported including Microsoft SQL Server, MySQL and PostgreSQL (with PostGIS extensions). Its components architecture includes Actions, Conversion, Database Handlers, Formats, Models, Processors, Security Handlers and Validators. Each of these components is fairly independent. They are coupled together using Spring Dependency Injection.