Theo đề xuất của @Thilo, bạn có thể sử dụng một số ý tưởng bao gồm cả tiền tố.
Điều quan trọng nhất là yêu cầu rất nhanh chóng (vì bạn muốn tính năng tự động hoàn thành để cảm nhận tức thời). Vì vậy, bạn phải sử dụng truy vấn sẽ sử dụng các chỉ mục đúng cách.
Với regexp:sử dụng tiền tố /^prefix/
(điều quan trọng là dấu ^ để chỉ định đầu dòng bắt buộc để tạo chỉ mục sử dụng truy vấn).
Truy vấn phạm vi cũng tốt:{ $gt : 'jhc', $lt: 'jhd' } }
Phức tạp hơn nhưng nhanh hơn:bạn có thể lưu trữ cây tiền tố trong mongo (hay còn gọi là try) với các mục nhập như:
{usrPrefix : "anna", compl : ["annaconda", "annabelle", "annather"]}
{usrPrefix : "ann", compl : ["anne", "annaconda", "annabelle", "annather"]}
Giải pháp cuối cùng này rất nhanh (nếu lập chỉ mục tất nhiên) nhưng không hiệu quả về dung lượng. Bạn biết sự đánh đổi mà bạn cũng phải lựa chọn.