Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Design der Datenbank der Empfehlungsmaschine?

Jede relationale Datenbank sollte gut zum Speichern der Rohdaten wie Songlisten, Benutzerlisten, Songpräferenzen der Benutzer geeignet sein..

Ich denke, Sie werden feststellen, dass relationale Datenbanken (und SQL) nicht so gut geeignet sind, um die verschiedenen Datenstrukturen zu speichern, die Ihr Empfehler erstellen wird. Ihre Empfehlungs-Engine wird wahrscheinlich Daten erstellen, die nicht wirklich in Tabellen sein müssen, und ihre Bearbeitung für die Speicherung in einer relationalen Datenbank kann nur vergeudete Arbeit sein.

Achten Sie einfach darauf, was Sie tun, und verbringen Sie keine Zeit damit, Dinge in eine SQL-Datenbank zu schreiben, wenn es sich falsch anfühlt. Versuchen Sie vielleicht, eine dokumentenorientierte Datenbank wie MongoDB zu verwenden .

Der Recommender, den ich kürzlich geschrieben habe, ist eigentlich ein Java-Serverprozess, der die Rohdaten von MySQL einliest, seine gesamte Arbeit im Arbeitsspeicher erledigt und meiner Anwendung über eine HTTP-API Empfehlungsdaten bereitstellt. Ich habe mir nicht einmal die Mühe gemacht, die Empfehlungsdaten dauerhaft zu speichern, da sie regeneriert werden können.