Alternative MusicBrainz search server
If you are working with a local MusicBrainz database and want to search in it, there aren’t that many choices. You can use the internal PostgreSQL full-text search or you can use the official MusicBrainz search server.
I’ve been playing with the idea of a customizable Solr-based solution for a long time. Creating a simple Solr index with the MusicBrainz data is not hard, but keeping it up to date is more complicated.
The mbslave package now includes a few scripts for creating and
updating a Solr search index. See the README
file for more information on
how to set it up.
There are a few differences compared to the official MusicBrainz search server:
- Everything is in a single index, so there is no need to tell it which entity you are interested in.
If you want to restrict the search to a particular entity, use filter query (e.g.
fq=kind:artist
). - It’s easy to extend the index to include more fields. There is no configuration file for this yet, but you can edit the field definition directly in the source code.
- It doesn’t store as much data as the MusicBrainz search server. The intended workflow is to use the database for displaying results.
I wrote it primarily for my own needs, but if it ends up being useful to people, I’ll probably make it more configurable and move to a separate package as it does not necessarily depend on mbslave.