Resonant: flexible data management platform for the web using a schemaless persistence layer

July 12-14, 2017
(Instructor: Zach Mullen, Kitware, Inc. and Peter Mo, University of Utah)

Description: In this course we will review several NoSQL databases, including MongoDB and OrientDB, and discuss when these databases are advantageous over traditional relational databases. Leveraging this understanding, we will discuss the set of open source tools collectively called Resonant, and show some of the capabilities of the system using examples in the domain of image processing and geospatial analysis. This is an architecture built for rapidly exposing analytics pipelines on the web, with tight integration with the Girder data management system. The system is designed to enable extreme flexibility for batch processing of datasets small or large, and to minimize the burden of integration on algorithm developers. The architecture is designed to scale to arbitrarily many users. Participants in the course will create end-to-end batch analytics algorithms and run them on a shared system. The results of these jobs will be visualized in the web application.

Outline:

  • What is NoSQL?
  • Why NoSQL?
  • What is a Document? (JSON, XML)
  • What is a Graph (OrientDB)?
  • What is MongoDB?
  • What is Resonant? Data, analytics, & visualization
  • Girder high-level overview: core competencies, design principles, technology stack
  • Extending and customizing Girder
  • Girder worker overview
  • Docker as a portable algorithm container
  • Algorithm specifications as data in Girder
  • Image processing and multi-scale image visualization examples (working session)