Jakákoli relační databáze by měla být vhodná pro ukládání nezpracovaných dat, jako jsou seznamy skladeb, seznam uživatelů, preference skladeb uživatelů..
Myslím, že zjistíte, že relační databáze (a SQL) nejsou tak skvělé pro ukládání různých datových struktur, které váš doporučující bude konstruovat. Váš modul doporučení pravděpodobně vytvoří data, která ve skutečnosti nemusí být v tabulkách, a manipulace s nimi pro uložení v relační databázi může být jen zbytečná práce.
Buďte si vědomi toho, co děláte, a neztrácejte čas vkládáním věcí do databáze SQL, pokud to není správné. Možná se podívejte na použití databáze orientované na dokumenty, jako je MongoDB .
Doporučovač, který jsem nedávno napsal, je ve skutečnosti proces serveru Java, který načítá nezpracovaná data z MySQL, provádí veškerou svou práci v paměti a poskytuje doporučení mé aplikaci prostřednictvím HTTP API. Dokonce jsem se ani neobtěžoval trvale ukládat data doporučení, protože je lze regenerovat.