Lập chỉ mục & Tìm kiếm
Lập chỉ mục & Tìm kiếm
MongoDB Atlas đi kèm với một công cụ tìm kiếm toàn văn bản có thể được sử dụng để tìm kiếm tài liệu trong bộ sưu tập.
Tìm kiếm Atlas được cung cấp bởi Apache Lucene.
Tạo chỉ mục
Chúng tôi sẽ sử dụng bảng thông tin Atlas để tạo chỉ mục trên cơ sở dữ liệu "sample_mflix" từ dữ liệu mẫu mà chúng tôi đã tải trong phần Giới thiệu về Tập hợp .
- Từ bảng điều khiển Atlas, nhấp vào tên Cụm của bạn rồi nhấp vào tab Tìm kiếm .
- Nhấp vào nút Tạo chỉ mục tìm kiếm .
- Sử dụng Visual Editor và nhấp vào Tiếp theo.
- Đặt tên cho chỉ mục của bạn, chọn Cơ sở dữ liệu và Bộ sưu tập bạn muốn lập chỉ mục và nhấp vào Tiếp theo.
- Nếu bạn đặt tên cho chỉ mục của mình là "mặc định", bạn sẽ không phải chỉ định tên chỉ mục trong giai đoạn đường dẫn
$search
. - Chọn cơ sở dữ liệu
sample_mflix
và bộ sưu tậpmovies
.
- Nếu bạn đặt tên cho chỉ mục của mình là "mặc định", bạn sẽ không phải chỉ định tên chỉ mục trong giai đoạn đường dẫn
- Nhấp vào Tạo chỉ mục tìm kiếm và đợi chỉ mục hoàn tất.
Chạy một truy vấn
Để sử dụng chỉ mục tìm kiếm của chúng tôi, chúng tôi sẽ sử dụng toán tử $search
trong quy trình tổng hợp của mình.
Ví dụ
db.movies.aggregate([
{
$search: {
index: "default", // optional unless you named your index something other than "default"
text: {
query: "star wars",
path: "title"
},
},
},
{
$project: {
title: 1,
year: 1,
}
}
])
Hãy tự mình thử » Giai đoạn đầu tiên của quy trình tổng hợp này sẽ trả về tất cả tài liệu trong bộ sưu tập movies
có chứa từ "ngôi sao" hoặc "cuộc chiến" trong trường title
.
Giai đoạn thứ hai sẽ chiếu các trường title
và year
từ mỗi tài liệu.