Trước hết, bạn có cần sử dụng chúng để lập chỉ mục tìm kiếm văn bản không? GIN và GiST là chỉ mục chuyên dùng cho một số kiểu dữ liệu. Nếu bạn cần lập chỉ mục các giá trị số nguyên hoặc ký tự đơn giản thì chỉ mục B-Tree bình thường là tốt nhất.
Dù sao, tài liệu PostgreSQL có một chương về GIST
và một trên GIN
, nơi bạn có thể tìm thêm thông tin.
Và, cuối cùng nhưng không kém phần quan trọng, cách tốt nhất để tìm cái nào là tốt nhất là tạo dữ liệu mẫu (càng nhiều càng tốt cho kịch bản thực) và sau đó tạo chỉ mục GIST , đo lượng thời gian cần thiết để tạo chỉ mục, chèn giá trị mới, thực hiện truy vấn mẫu. Sau đó, thả chỉ mục và làm tương tự với chỉ mục GIN. So sánh các giá trị và bạn sẽ có câu trả lời mình cần, dựa trên dữ liệu của bạn.