Cả hai đều dùng B-tree làm cấu trúc index nền, nên đều có độ phức tạp tìm kiếm O(log N) và hỗ trợ range query như nhau.
Khác biệt nằm ở data model:
- MongoDB index "đào sâu" được vào nested document (vd address.zipcode) và tự index từng phần tử của mảng (multikey index).
- PostgreSQL có index chuyên biệt cho mảng/JSONB (như GIN); còn B-tree mặc định của nó không tự index từng phần tử mảng như MongoDB.
Tóm lại: thuật toán giống nhau, khác nhau là cách mỗi DB áp B-tree lên mô hình dữ liệu của mình.