sql >> データベース >  >> NoSQL >> MongoDB

マングース:スキーマvsモデル?

    マングースでは、スキーマは特定のドキュメントの構造を完全に、またはドキュメントの一部として表します。これは、期待されるプロパティと値、および制約とインデックスを表現する方法です。モデルは、データベースと対話するためのプログラミングインターフェイスを定義します(読み取り、挿入、更新など)。したがって、スキーマは「このコレクションのデータはどのようになりますか?」と答えます。モデルは、「このクエリに一致するレコードはありますか?」などの機能を提供します。または「コレクションに新しいドキュメントを追加する」。

    ストレートRDBMSでは、スキーマはDDLステートメント(テーブルの作成、テーブルの変更など)によって実装されますが、モデルの直接的な概念はなく、柔軟性の高いクエリ(selectステートメント)と基本的な挿入、更新を実行できるSQLステートメントのみです。 、操作を削除します。

    別の考え方として、SQLの性質上、特定のフィールドのみを選択し、関連するテーブルのレコードを結合することで、各クエリの「モデル」を定義できます。

    Ruby on Railsなどの他のORMシステムでは、スキーマはActiveRecordメカニズムを介して定義され、モデルは、モデルサブクラスが追加する追加のメソッドであり、追加のビジネスロジックを定義します。



    1. mongodを使用してUTCに日付を保存するときにタイムゾーンの問題に対処するにはどうすればよいですか?

    2. Redisストア(または任意のデータベース?)ロックメカニズム(NodeJS)

    3. Redisリストまたはsetpopメソッドスレッドは安全ですか?

    4. Angular、NodeJS、Express、MongoDBを使用してオンラインフードストアWebサイトを作成する