2017-02-11 7 views
2

私はMysqlについてUber、Linkedinのような大企業を利用していると聞きました。私はNodeJがMongoDBよりMysqlを使うのが最善だと思います。私が間違っている?たぶん私はMongoDBについての機能を知らないかもしれませんNodeJがMysqlではなくMongoDBを使用するのはなぜですか?

+2

SQLとNoSQLのデータベースとそれらの小道具との違いを理解したら、MySQLまたはMongoDBまたは両方を使用できます。人々は通常、他の大企業が使用しているものではなく、自分に最適なものを使用します。 –

答えて

5

NoSQLの学習を始めたときと同じようなジレンマでした。 RDBMSの背景から来ていますNoSQLやMongoDBは拡張が容易で、JSONのようなシンタックスを持っており、JavaScriptの開発者がいます。 MongoDBので

Todo Database (MySQL): 
- Todo (table) 
    - Id 

- Todo Item (table) 
    - TodoId 
    - TodoName 

使用すると、1つの表にすべてをかけるか、コレクションそうのようなことができます:後であなたが壊れ以上追加することを決定した場合

Todo: { 
    Id: //some uniq id, 
    Items: [ 
    0: { 
     name: 'wash the dishes' 
    }, 
    1: // and so on 
    ] 
} 

そして、あなたは藤堂アプリを開発していた。この構造を想像してみてあなたはアプリはほとんど石に設定されていると感じた場合、あなたがそうすることができる詳細は、それ故に言葉「スケール」のすべての

Todo: { 
    Id: asdf 
} 

TodoItem: { 
    todoId: asdf, 
    name: 'wash the dishes', 
    etc: // and so on 
} 

そして、最高のは、MySQLやPostgreSQLの大企業に転送することができますあなたが言及している。

これは単なる簡単な例で、おそらくNoSql over Sqlを使用してもあまり効果がありません。しかし、これを考えると、あなたは馴染みのないデータ関係で新しいアプリを構築しようとしています。はい、ER図を作成し、それを必要なだけノーマライズすることができます。アプリケーションの構築を開始すると、表の関係全体に影響する可能性のある非常に重要なフィールドが実現しました。あなたはむしろ速くビルドして手を汚し、NoSqlを使って乱雑なテーブルやコレクションを構築し、あなたのアプリがもっと早く生きてくるのを見てみませんか?

希望に役立ちます。

関連する問題