1. A computer method of performing a music search, the method comprising: receiving a music query that specifies a music element; generating a set of search parameters based on the music element specified by the received music query; directing the set of search parameters against a database comprising a plurality of data records, each data record being associated with a music piece and a set of music elements relating to the music piece, wherein: the set of music elements associated with at least one data record comprises data deconstructed from the at least one musical piece; identifying a set of matching data records in the database, the set of matching data records comprising data records that match the set of search parameters; identifying a set of matched music pieces in the database, the set of matched music pieces comprising music pieces that are associated with the set of matching data records; producing search output comprising the matched music pieces arranged in a ranked list.