PDA

View Full Version : Cùng một kết nối database mà truy vấn nhiều lần ( > 1000,chỉ lấy ít dữ liệu) thì có quá chậm không ?



tandaica0612
29-05-2010, 04:37
Mình hiện đang có vấn đề về viết truy vấn cơ sở dữ liệu là :
Do mình phải làm mấy chức năng import nền phải truy vấn cơ sở dữ liệu nhiều , mà chức năng này đòi hỏi phải nhanh lên cần performance trong code truy vấn lên mình muốn hỏi là trong 2 cách sau cách nào khả thi :
1-Lên cùng một kết nối database truy vấn nhiều lần cơ sở dữ liệu ( như các truy xuất check validation các trường trong file excel import , và chỉ truy vấn lấy các trường cần thiết)
2-Lạp tất cả dữ liệu của bảng liên quan vào bộ nhớ (có thể lạp cả các dữ liệu dư thừa vì không biết giới hạn dữ liệu để select) rùi từ đó lại đọc từ bộ nhớ ra rùi kiểm tra validation dữ liệu từ excel truy xuất bộ nhớ nhanh hơn là truy xuất dữ liệu từ database).
Mọi người cho mình hỏi là cách nào là ổn nhất .?
Mình thì mình nghĩ cách 1 tốt hơn , vì nó chỉ truy vấn những trường cần thiết , nhưng mà có người bảo là truy vấn thế chậm , vì nó sẽ phải select nhiều lần trong db , mình search vấn đề này trên mạng cả tiếng anh và tiếng việt , nhưng mà không thấy ai đề cập đến việc trong cùng 1 kết nối mà truy vấn nhiều lần gây ra quá chậm ứng dụng cả.
Còn cách thứ 2 thì lạp tất cả các bảng vào bộ nhớ --> có thể gây tốn bộ nhớ vì select cả các trường thừa thãi (mà với bảng mà nhiều dữ liệu thì ..., và với trường hợp này server sẽ mất kha khá bộ nhớ :( )
Vậy mọi người cho mình hỏi là cách nào ổn hơn .?

vtc_marketing
15-06-2010, 09:23
Hi,

Nghe có vẻ cách-1 ổn.

Tuy nhiên cũng không hiểu rõ câu bạn hỏi lắm.

Regards.