私はこれらの機能を備えたデータベースを設計したいと思っています: 1.ユーザー 2.映画 ユーザーは映画を評価することができ、そのランキングで新しい映画を推薦します!デザインデータベース
また、私には最高のデータベースは何ですか? SQLまたはNoSQL?
私はDjangoを使用します。 私を助けてください:
私はこれらの機能を備えたデータベースを設計したいと思っています: 1.ユーザー 2.映画 ユーザーは映画を評価することができ、そのランキングで新しい映画を推薦します!デザインデータベース
また、私には最高のデータベースは何ですか? SQLまたはNoSQL?
私はDjangoを使用します。 私を助けてください:
構造に関しては、私は2つの独立したテーブルMOVIES
と第三のテーブルを介して接続さUSERS
をお勧めしたい、多かれ少なかれ、このように:このように
CREATE TABLE movie
(id SERIAL PRIMARY KEY
, name VARCHAR(100)
, date DATE
[other attributes]
);
CREATE TABLE user
(id SERIAL PRIMARY KEY
, name VARCHAR(100)
[other attributes]
);
CREATE TABLE user_movie
(id SERIAL PRIMARY KEY
, user_id INTEGER NOT NULL REFERENCES user(id)
, movie_id INTEGER NOT NULL REFERENCES movie(id)
, rating INTEGER NOT NULL
[other attributes]
);
、ユーザーは複数のムービーを評価することができますが、ムービー複数回評価することができます。 user_movie
で映画のキーを検索すると、受け取ったすべての評価が返され、現在の評価を判断して適切に提案できるようになります。
最高のデータベースは...このデータベースがどれほど大きくなるか、同時接続数はどれくらいかなど、十分な情報は私たちに提供していませんでした。私はPostgreSQLユーザーです私はそれが幸せだと言わなければならない。なぜなら、それは無料でかなり丈夫だからである。私はそれをお勧めします。特に、あなたのシステムが成長することを期待するならば。
しばらく前に私はこの記事を読んでいます(http://www.sarahmei.com/blog/2013/11/11/why-you-should-never-use-mongodb/)。私はあなたのアプリケーションが非常に似ているのでここに入れます。記事はかなり古いことに注意してください。 – Stefano
ありがとうございます。それは非常に便利だった:) – Lobster