CASE STUDY: LinkedBrainz Live Tool
MusicBrainz is an open music encyclopedia that collects music metadata and makes it available to the public. The MusicBrainz database is built on the PostgreSQL relational database engine and contains all of MusicBrainz music metadata.
The LinkedMusicBrainz View (LMB view) is intended to help MusicBrainz to publish its database as Linked Data. The MusicBrainz Database is constantly updated. Hence, data stored in the LinkedMusicBrainz View can quickly become outdated. The LinkedBrainz Live tool (LBL tool) enables a continuous synchronization between LinkedMusicBrainz View and MusicBrainz relational database. The LBL tool was implemented using the LSVF Framework (Framework for Live Synchronization of RDF Views of Relational Data).
Architecture
Figure 2 depicts the general architecture of LinkedBrainz Live tool.
The main components of the LBL tool are:
Local MBD database: We installed a local replica of the MBD database available in MusicBrainz Database/Download. The decompressed database dump has about 7 GB and was stored in PostgreSQL version 9.4.
LMB View and Mappings: We created the R2RML mapping for translating MBD data into the Music Ontology vocabulary, which is used for publishing the LMB view. The LMB view was materialized using the D2RQ tool. It took 67 minutes to materialize the view with approximately 41.1 GB of NTriples. We also provided SPARQL endpoint for querying LMB View.
Triggers: We created the triggers, procedures and class in java to implement the rules required to compute and publish the changesets.
LBL update extractor: This component extracts updates from the replication file provided by MusicBrainz, every hour, which contains a sequential list of the update instructions processed by the MusicBrainz database. When there is a new replication file, the updates should be extracted and then executed against the local of the MBD database.
LBL Syncronization tool: This component enables the LMB View to stay synchronized with the MBD database. It is a very simple adaptation of the synchronization tool for DBpedia Live. It simply downloads the changeset files sequentially, creates the appropriate INSERT/DELETE statement and executes it against the LMB View.
Important Links
SPARQL-endpoints for LMB View: http://virtuoso.mooo.com/sparql.
Changesets Publishe by LinkedBrainz Live tool: http://virtuoso.mooo.com/files/changesets/.
Dumps for LMB View: http://virtuoso.mooo.com/files/dumps/.
Synchronization Tool (Keep a RDF application view of LMB View in sync):https://github.com/narcisoarruda/LBL-Syncronization-tool.