Secure Data Service

screenshot of Secure Data Service

This is the ESDS. It contains the backend for the project. The main projects that are to be used are ingestion-service, api, simple-idp, search-indexer, dashboard, admin-tools and databrowser. All of the projects are Maven driven with the exception of admin-tools and databrowser. Those are both R...

Overview

The ESDS and databrowser project is a versatile and robust system designed for data management and exploration. Built primarily with Java and Maven, along with Ruby on Rails for some components, this project supports various versions of databases and tools to maintain seamless functionality. Its architecture is particularly suitable for developers looking to implement a local development environment tailored for data services.

This project features a unique combination of technologies, including MongoDB for database management and ActiveMQ for message processing. In addition to its core functionalities, the documentation provides a comprehensive guide for setup and execution, ensuring a streamlined development experience.

Features

  • Multi-Technology Support: Combines Java 7, Maven 3, and Ruby 2.0.0 for a flexible development environment catering to different tech stacks.
  • Database Compatibility: Utilizes MongoDB version 2.4.8 for optimal compatibility, ensuring that your local setup runs without hiccups.
  • ActiveMQ Integration: Incorporates ActiveMQ version 5.8 for efficient message processing, enhancing system performance.
  • Bundler for Ruby Gems: Simplifies Ruby dependency management through the Ruby bundler gem, enabling ease of use and efficient package handling.
  • Configurable Environment Variables: Allows user-defined configurations such as SLI_ROOT for more straightforward navigation of the datastore.
  • Custom Build Options: Offers command-line flags (e.g., -Dsli.env) to tailor the environment for local or sandbox versions of services.
  • Automated Database Reset: Contains scripts that facilitate the resetting of MongoDB databases, contributing to a clean development slate with each build.
  • Extensive Documentation: Provides clear instructions on installation and configuration, making it accessible for both beginners and experienced developers alike.