10/10/2018, 13:29
PHP - Nên đọc dữ liệu từ file hay truy vấn MySQL?
Em có viết một trang từ điển, hiện đang dùng phương pháp đọc dữ liệu từ file data, có dạng kiểu thế này
data.txt
File nặng khoảng 2M, gần 60 nghìn dòng dữ liệu.
Khi người dùng tra từ thì nó sẽ tìm trong file rồi trả về. Kiểu này hiện đang áp dụng.
Vấn đề em muốn hỏi là nếu mình sử dụng theo phương pháp đọc dữ liệu từ file rồi trả về kết quả, hay truy vấn MySQL sẽ tối ưu hơn? Hiện tại mới chỉ làm trên localhost nên chưa băn khoăn về khoản băng thông, nếu đưa lên host mà mỗi lần tìm kiếm đọc cái file gần 2M chắc sập quá.
Cảm ơn các bác ạ.
data.txt
Code:
hello [tab] xin chào goodbye [tab] tạm biệt bla [tab] blo
Khi người dùng tra từ thì nó sẽ tìm trong file rồi trả về. Kiểu này hiện đang áp dụng.
Vấn đề em muốn hỏi là nếu mình sử dụng theo phương pháp đọc dữ liệu từ file rồi trả về kết quả, hay truy vấn MySQL sẽ tối ưu hơn? Hiện tại mới chỉ làm trên localhost nên chưa băn khoăn về khoản băng thông, nếu đưa lên host mà mỗi lần tìm kiếm đọc cái file gần 2M chắc sập quá.
Cảm ơn các bác ạ.

Duy Cuong win
viết 15:36 ngày 10/10/2018
Chắc chắn là MySql, bạn có thể dùng UNIQUE INDEX để truy vấn dữ liệu nhanh hơn.

Vô Thin
viết 15:45 ngày 10/10/2018
File text thì hơi nặng, MySQL thì không cần thiết. Với dung lượng khoảng 2MB thì bạn nên dùng SQLite nhé, và tạo một table lên trên memory song song với table hiện tại (table chính thì bạn dùng để lưu khi có bổ sung từ mới) để query cho nhanh.

x_hunter
viết 15:43 ngày 10/10/2018
Cảm ơn các bác ạ, em đang thử nghiên cứu SQLite để làm từ điển.

khuongCOMPUTER
viết 15:42 ngày 10/10/2018
nhanh nhất thì cài cache vào (Xcache hay memcached) rồi load nội dung file vào array và đưa thẳng vào memory dưới dạng shared variables rồi truy vấn trực tiếp từ đó. Sẽ nhanh hơn là dùng SQLite hay mySQL.
Bài liên quan