Trong mongoose, một lược đồ thể hiện cấu trúc của một tài liệu cụ thể, hoàn toàn hoặc chỉ là một phần của tài liệu. Đó là một cách để thể hiện các thuộc tính và giá trị mong đợi cũng như các ràng buộc và chỉ mục. Mô hình xác định giao diện lập trình để tương tác với cơ sở dữ liệu (đọc, chèn, cập nhật, v.v.). Vì vậy, một lược đồ trả lời "dữ liệu trong bộ sưu tập này sẽ như thế nào?" và một mô hình cung cấp chức năng như "Có bản ghi nào phù hợp với truy vấn này không?" hoặc "Thêm tài liệu mới vào bộ sưu tập".
Trong RDBMS thẳng, lược đồ được thực hiện bởi các câu lệnh DDL (tạo bảng, thay đổi bảng, v.v.), trong khi không có khái niệm trực tiếp về một mô hình, chỉ là các câu lệnh SQL có thể thực hiện các truy vấn linh hoạt cao (câu lệnh chọn) cũng như chèn, cập nhật cơ bản. , thao tác xóa.
Một cách khác để nghĩ về nó là bản chất của SQL cho phép bạn xác định "mô hình" cho mỗi truy vấn bằng cách chỉ chọn các trường cụ thể cũng như kết hợp các bản ghi từ các bảng có liên quan với nhau.
Trong các hệ thống ORM khác như Ruby on Rails, lược đồ được xác định thông qua cơ chế ActiveRecord và mô hình là các phương thức bổ sung mà lớp con Model của bạn thêm vào để xác định logic nghiệp vụ bổ sung.