Devo progettare un database in cui devo associare un audio_id con più tag (parole). Sto prendendo in considerazione i seguenti approcci per selezionarne uno da:
1) Per avere più campi per più tag (colonne: tag1, tag2, tag3 .... tag10) corrispondenti a un singolo audio_id. Il numero di tag nella mia applicazione non sarà superiore a 10-15.
2) Per salvare i tag (parole) come una singola stringa separata da virgola corrispondente a un singolo audio_id.
3) Per salvare le associazioni (tag: audio_id) in una tabella separata. Ma il problema qui è che le associazioni possono essere n a n. È possibile associare più tag a un audio_id e lo stesso tag può trovarsi in più audio_id.
Per favore fatemi sapere se può esserci un progetto alternativo per questo scenario o è meglio prendere in considerazione qualsiasi altro tipo di database diverso da MySQL.
Il numero totale di tag sarà di circa un milione e audio_id di circa poche migliaia. Sono preoccupato per le prestazioni del sistema.