Một số cách tăng tốc độ tìm kiếm trên DB:
- Trong các DBMS đều đã vận dụng các thuật toán tìm kiếm tiên tiến thế nhưng để các thuật toán đó có đất dụng võ, đòi hỏi phải có sự phối hợp với người sử dụng.
- Đặt indexes cho các trường cần tìm kiếm (primary key mặc nhiên đã là 1 indexes): cần lưu ý rằng, nếu đã có tập dữ liệu lớn thì nên insert tập dữ liệu ban đầu đó sau đó mới tạo indexes, vì khi tạo indexes nó sẽ thực hiện cấu trúc lại dữ liệu, thao tác này tốn khá nhiều thời gian. Tạo indexes sẽ giúp tìm kiếm nhanh nhưng kéo theo là các lệnh delete, insert, update sẽ thực thi chậm hơn. Tùy “hoàn cảnh” mà chọn giải pháp.
- Tối ưu hóa các câu truy vấn (vấn đề này tìm trên mạng rất nhiều với các từ khóa như: “tối ưu hóa câu truy vấn sql”, “nguyên nhân những câu truy vấn chậm”,…).
Một số cách tăng tốc độ tìm kiếm trên DataTable của .Net:
- Nếu DataTable đã tạo Primary Key mà phải tìm kiếm trên trường này thì sử dụng phương thức DataTable.Rows.Find() thay vì sử dụng DataTable.Select(). Phương thức Find sẽ sử dụng index khi tìm kiếm.
- Nếu column cần tìm không phải là Primary thì nên sử dụng DataView. Trước hết Sort theo column đó rồi tìm kiếm bằng phương thức DataView.FindRows().
- Một giải pháp nữa được thực hiện trên DataTable là dùng lệnh DataTable.Select(null,”[Field_Name]”) sẽ thực hiện sort và tạo index trên [Field_Name], sau đó thực hiện tìm kiếm. Cách này không thấy đề cập tới nhiều nên không chắc lắm.
Không có nhận xét nào:
Đăng nhận xét