MongoDB là một hệ quản trị cơ sở dữ liệu NoSQL phân tán, mà trong đó việc tối ưu hóa truy vấn thông qua việc sử dụng chỉ mục là rất quan trọng. Dưới đây là một số cách đánh chỉ mục trên MongoDB:

Single Field. Đánh chỉ mục đơn giản:

db.collection.createIndex({"field": 1})

Chỉ mục được đánh theo trường (field) của tài liệu (document) trong collection.

Compound Index. Đánh chỉ mục đa trường:

db.collection.createIndex({"field1": 1, "field2": -1})

Lưu ý: mặc định tên của một chỉ mục sẽ được nối giữa các chỉ mục và phương hướng của nó thông qua dấu gạch dưới. Với ví dụ bên trên thì tên chỉ mục sẽ là field1_1_field2_-1. Bạn cũng có thể đặt tên cho chỉ mục bằng cách thức sau:

db.collection.createIndex({"field1": 1, "field2": -1},{name: "feild1 feild2"})

Multikey Index. Đánh chỉ mục trong trường là một array:

db.collection.insert({name: "abc", field1: [{field2:"bcd"},{field2:"cde"}]})
db.collection.createIndex({"field1.field2": 1})

Đánh chỉ mục trên các giá trị mảng:

db.collection.createIndex({"field": "hashed"})

Chỉ mục này sử dụng thuật toán băm để đánh chỉ mục các giá trị trong một mảng. Chỉ mục này sử dụng “hashed” như một loại chỉ mục.

Đánh chỉ mục văn bản (text index):

db.collection.createIndex({"field": "text"})

Chỉ mục này được sử dụng để tìm kiếm trên các trường chứa văn bản.

Trên đây là một số cách đánh chỉ mục trên MongoDB. Bạn có thể tham khảo thêm tài liệu chính thức của MongoDB để biết thêm chi tiết.

Leave a Reply

Your email address will not be published. Required fields are marked *