NoSQLについての記事を読んでいます。私はそれが関係に基づいていないことを知っているが、私はいくつかの基本的なことをする方法を見つけることができません。 (そして私はそれについての実際のサンプルコードを見つけられませんでした)。NoSQL計画例
ユーザー、投稿、コメントを保存します。
SQLバージョン:シンプル、[OK]を
user's table: user_id, username
posts's table: post_id, user_id, content
comments's table: comment_id, content
。私が起草何のNoSQLで
は(100%機能、私は今のところはMongoDBなどのような任意の技術を使用していない)である:
users:
{
id: XX,
username: "John"
},
{
id: OO,
username: "Mike"
}
posts:
{
id: YY,
content: "How are you all ?",
user: {
id: OO,
username: "Mike"
},
comments: {
id: ZZ,
content: "Fine",
user: {
id: XX,
username: "John"
}
}
}
私は場所に投稿やコメントでのユーザーのIDを格納している可能性が私はNoSQL、SQLではないので、私はそれをやっていません。
最初に?このデータモデルはNoSQLにとってうまくいきますか?
第2に、以前の質問で「はい」の場合、ユーザーXX(John)が「Tony」のユーザー名を変更するとどうなりますか?潜在的に私は彼からのすべての投稿を更新しなければならず、コメントごとに同じものを更新する必要があります。彼はそれがユーザーの人生の間に投稿したと想像してみましょう、10000 +コメント、wtf。だから私はそれが間違っていると推測している。
私の誤解を明確にすることはできますか?
NoSQLは単に「SQLではない」という意味ですか? NoSQLと呼ばれる標準化された構文はないので、すべては使用しているデータベースに依存します。あなたが投稿するものはJavaScriptオブジェクトのようなものです。 –
NoSQLデータストア(Cassandraなど)は、通常、キー値ストアです。したがって、あなたのケースでは、おそらくキーがユーザーIDになりますし、はい、それが指しているJSON BLOBを処理する方法を見つける必要があります。 –