Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Projekt bazy danych silnika rekomendacji?

Każda relacyjna baza danych powinna nadawać się do przechowywania surowych danych, takich jak listy utworów, lista użytkowników, preferencje utworów użytkowników.

Myślę, że okaże się, że relacyjne bazy danych (i SQL) nie są zbyt dobre do przechowywania różnych struktur danych, które będzie konstruował Twój rekomendujący. Twój silnik rekomendacji prawdopodobnie utworzy dane, które tak naprawdę nie muszą znajdować się w tabelach, a manipulowanie nimi w celu przechowywania w relacyjnej bazie danych może być po prostu zmarnowaną pracą.

Po prostu bądź świadomy tego, co robisz i nie marnuj czasu na umieszczanie rzeczy w bazie danych SQL, jeśli wydaje Ci się to niewłaściwe. Może warto rozważyć użycie bazy danych zorientowanej na dokumenty, takiej jak MongoDB .

Rekomendator, który ostatnio napisałem, jest w rzeczywistości procesem serwera Java, który odczytuje surowe dane z MySQL, wykonuje całą swoją pracę w pamięci i dostarcza dane rekomendacji do mojej aplikacji za pośrednictwem interfejsu API HTTP. Nawet nie zawracałem sobie głowy przechowywaniem danych rekomendacji na stałe, ponieważ można je zregenerować.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Czy przypisywanie bazy danych MySQL każdemu użytkownikowi w mojej witrynie jest nierozsądne?

  2. Mysql:Wybierz wiersze z tabeli, których nie ma w innej

  3. MySQL:Co się dzieje z polami niezagregowanymi w grupie GROUP BY?

  4. MySQL Boolean tinyint(1) przechowuje wartości do 127?

  5. Składnia symboli zastępczych MySQLdb w Pythonie