Cloud Services and a Data API for Electrophysiology
Andrey Sobolev (German INCF Node, Department Biology II, Ludwig-Maximilians-Universität München, Germany), Aljoscha Leonhardt (German INCF Node, Department Biology II, Ludwig-Maximilians-Universität München, Germany), Philipp Rautenberg (German INCF Node, Department Biology II, Ludwig-Maximilians-Universität München, Germany), Christian Kellner (German INCF Node, Department Biology II, Ludwig-Maximilians-Universität München, Germany), Andreas Herz (German INCF Node, Department Biology II, Ludwig-Maximilians-Universität München, Germany), Thomas Wachtler (German INCF Node, Department Biology II, Ludwig-Maximilians-Universität München, Germany)
The G-Node services provide data management in the cloud, including tools for organization, annotation, search, and backup. Backbone is a central data storage system accessed through a common application interface (API). This API supports a common data model for electrophysiology and flexible data annotation[1], reported as NEO[2] and odML[3]. The interface is based on REST principles[4] and supports data transfer via JSON/BSON. Native client libraries in commonly used programming languages (including Python and Matlab[5]) enable researchers to perform computations in familiar analysis environments while retaining the advantages that cloud storage entails. Thus, scientists may select whatever technology is most suitable for their current research with their data being available at all times and from all locations. The platform also features powerful search and query capabilities from simple full-text search to specialized query and filter mechanisms such as data slicing or fine-grained recording channel selection.
These services are complemented by common tools for data access like neuroshare[6], NEO I/O[2], or odML[3], and provide convenient data conversion. Compatible files are automatically converted to native objects which may, in turn, be exported as needed. The platform encourages collaboration between both individual scientists and labs. Data sets, metadata, and files can be shared based on various criteria; simultaneous work on such data sets is supported. Furthermore, changes to stored objects are tracked continuously, which makes the reproduction of individual analysis steps effortless and transparent.
Our platform equips every electrophysiologist with the tools necessary for integrating sophisticated data management into day to day experimental workflow, thus fostering scientific progress through neuroinformatics.
[1] http://g-node.github.com/[…]/data_api_specification.html
[2] http://packages.python.org/neo/
[3] https://github.com/G-Node/python-odml
[4] http://en.wikipedia.org/[…]/Representational_state_transfer
[5] https://github.com/G-Node/gnode-client-matlab
[6] https://github.com/G-Node/python-neuroshare
Supported by BMBF grant 01GQ0801.