Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

sao chép vào bảng tạm thời mất nhiều thời gian

Bảng tạm thời có thể không phải là lựa chọn tốt nhất tùy thuộc vào những gì bạn đang cố gắng đạt được ... Nó có thể trở nên hữu ích khi tạo một bảng với một số hợp nhất dữ liệu để thu hẹp phạm vi của các yêu cầu tiếp theo nhưng hiếm khi hiệu quả để làm như vậy.

Ngoài ra, các bảng tạm thời không thể được truy cập nhiều lần, vì vậy cần có một bảng thực.

Việc tạo một bảng yêu cầu ghi đĩa, điều này kém hiệu quả hơn rất nhiều so với một lựa chọn thuần túy trong RAM. Sử dụng phương pháp bộ nhớ đệm, bạn có thể truy xuất kết quả của một lựa chọn trước đó rất nhanh. Bạn có thể sử dụng lựa chọn đó làm phần TỪ trong các truy vấn của mình để làm cho nó nhanh hơn so với việc gộp chung trong một cơ sở dữ liệu khổng lồ. Nhưng ngay cả khi đó ...

Chúng tôi đang phát triển trên tập dữ liệu khoảng 1To, các truy vấn lớn là các sản phẩm phát hiện theo quyền của người dùng (danh mục, cửa hàng, ...), chúng tôi đã cố gắng tạo một bảng cho mỗi người dùng trỏ đến các sản phẩm mà anh ta có quyền và sau đó sử dụng bảng đó để lấy dữ liệu mà không yêu cầu điều kiện ở đâu rất lớn nhưng sử dụng SSD vẫn bị chậm. Vì vậy, chúng tôi vừa đổ bộ nhớ RAM lớn trên máy chủ và SELECT mà chúng tôi đã sử dụng để lấp đầy các bảng tạm thời được chạy cho mỗi người dùng khi đăng nhập, sau đó được sử dụng như FROM và mọi thứ đều hoàn hảo.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. nếu bảng không tồn tại, hãy thực hiện một truy vấn dài

  2. Shoretel - Truy vấn cuộc gọi đi

  3. MySQL:Tự động tăng chỉ với số chẵn hoặc số lẻ?

  4. PHP &MySQL Bao gồm nút Xóa trên cùng một trang

  5. Chạy một thủ tục được lưu trữ từ crontab