Mình đang có lượng data hơn 300k dòng excel và 120 cột phát sinh trong tháng mình có làm web dùng mysql để lưu nhưng truy vấn chậm quá. Có cách nào nhanh hơn ko vậy.
chjcken12 @nvthong1009 đầu tiên bạn phải hiểu rõ những câu lệnh sql bạn dùng có ý nghĩa thế nào trước: - có thể lệnh sql bạn đang dùng truy vấn lồng nhau nên tốc độ sẽ chậm hơn -> tìm cách tách ra - các column chưa dc index dẫn đến truy xuất chậm -> đánh index cho những cột cần (mysql index thì bạn cứ search google là ra cả đống) ...
gatheringviolet @nvthong1009 Phải xem cấu trúc dữ liệu rồi tối ưu cấu trúc các bảng ghi trong mysql, nếu đã tối ưu nhưng không cải thiện tốc độ thì phải xem câu truy vấng của bạn, còn cách cuối cùng là nâng cấp phần cứng thôi.
hjhdahjdo @nvthong1009 Do bạn không tối ưu tốt thôi, thấy bạn có dùng truy vấn lồng. Cái đó khá mất time kaka
thuanapache @hjhdahjdo Nếu đã tối ưu hết truy vấn mà vẫn chậm thì phải làm thêm 1 app chạy background mỗi này chạy truy vấn trước rồi lưu vào bảng kết quả, rồi khi cần coi bang kết quả thôi. Ví dụ coi báo cáo hằng tháng thì cho chạy hằng ngày lúc 1h đêm để lấy báo cáo từng ngày, lưu vào bảng kết quả ngày, đến tháng thì đọc lại cái báo cáo kết quả ngày để lấy báo cáo tháng. Đó là 1 ví dụ đơn giản nhất. Còn nếu cao cấp hơn thì trả tiền để “lên cloud”, mướn dịch vụ power bi chẳng hạn thì muốn truy vấn vài chục triệu data cũng ko khó
sao_lai_the @nvthong1009 Vấn đề của bạn đã liên quan đến hiệu năng của hệ thống. Bạn nên xem xét lại phần thiết kế CSDL cũng như tối ưu câu lệnh sql. Tôi giả định phần cứng của bạn đang hoạt động tốt.