← VevDB home
Documentation

MusicBrainz validation#

The MusicBrainz workflow runs Datomic tutorial queries against a durable VevDB store from Clojure and Kvist.

Requirements#

Setup#

Create the store and run both host suites:

scripts/musicbrainz_workshop_setup.sh --validate

The script fetches pinned tutorial sources under build/upstream.

If portable export chunks are missing, create them from a local Datomic Pro installation:

DATOMIC_HOME=/path/to/datomic-pro \
  scripts/musicbrainz_workshop_setup.sh --from-datomic --validate

Ordinary VevDB validation does not require Datomic. --from-datomic uses a local Datomic installation to read the backup and create the export.

Override the data and store paths:

VEV_MUSICBRAINZ_EXPORT_PREFIX=/path/to/export-prefix \
VEV_MUSICBRAINZ_STORE=/path/to/musicbrainz.db \
  scripts/musicbrainz_workshop_setup.sh --validate

Individual suites#

scripts/musicbrainz_workshop_clojure.sh
scripts/musicbrainz_workshop_kvist.sh

Datomic comparison#

The optional comparison requires a local Datomic Pro installation:

scripts/musicbrainz_sample.sh prepare
scripts/compare_musicbrainz_workshop.sh

For VevDB-only row and fingerprint checks:

scripts/compare_musicbrainz_workshop.sh --skip-datomic

Use scripts/compare_musicbrainz_workshop.sh --help for workload and timing options.

The comparison checks row counts and portable result fingerprints. It is a compatibility and regression test, not a published benchmark.