MapR Music Application uses the MusicBrainz database to explain how to develop an application with MapR Converged Data Platform with a focus on MapR-DB JSON.
- Introduction
- MapR Music Architecture
- Setup
- Import the Data Set
- Working with MapR-DB
- Working with Java
- Create a REST API
- Deploy to Java EE (Wildfly)
- Building a UI with Angular
- Working Arrays
- CDC
- Creating Recommendation Engine
MapR Music Repository contains following directories:
Directory contains scripts for registering users at Wildfly application server, importing MapR Music Data Set, testing recommendation engine and running the app in a Docker container.
Contains Wildfly configuration files, which are used while building MapR Music Docker image.
Utility application which allows to convert MusicBrainz database dump into MapR Music Dataset.
Sample, ready to use MapR Music dataset, generated with the script described above.
Application's documentation and tutorial.
MapR Music Elasticsearch Service, which listens albums and artists table events and publishes the changes to the Elasticsearch. This service use MapR-DB Change Data Capture (CDC) feature.
MapR Music REST Service, built on top of MapR-DB. This Web application developped in Java use JAX-RS and OJAI to expose CRUD operations at the top of MapR-DB tables.
Angular application that consume the REST APIs to allow user to browse, edit and create albums and artists.
Recommendation Engine, built using Spark MLlib's Alternating Least Squares (ALS) algorithm, to create Albums/Artists recommendations. This service uses the MapR-DB OJAI Connector for Apache Spark to read albums, artists ratings, and writes the recommendations back into MapR-DB.
Moreover, repository contains Dockerfile, which allows you to build Mapr Music Docker image based on MapR PACC, download,configure and start: Wildfly, Elasticsearh and deploy MapR Music application.
Next : MapR Music Architecture