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

PostgreSQL:Cách tối ưu hóa cơ sở dữ liệu của tôi để lưu trữ và truy vấn một biểu đồ khổng lồ

Tôi đoán đó là do “mật độ” của các bản ghi cùng khóa trên đĩa. Tôi nghĩ rằng các bản ghi có cùng id được lưu trữ dày đặc (tức là ít khối) và những bản ghi có cùng liên kết được lưu trữ ở mức thưa thớt (tức là , được phân phối cho một số lượng lớn các khối). Nếu bạn đã chèn các bản ghi theo thứ tự id, tình huống này có thể xảy ra.

Giả sử rằng:1. có 10.000 bản ghi, 2. chúng được lưu trữ theo thứ tự như (id, link) =(1, 1), (1, 2), ..., (1, 100), (2, 1) ..., and3. 50 bản ghi có thể được lưu trữ trong một khối.

Trong giả định ở trên, khối # 1 ~ # 3 bao gồm các bản ghi (1, 1) ~ (1, 50), (1, 51) ~ (1, 100) và (2, 1) ~ (2, 50) tương ứng.

Khi bạn SELECT * FROM edges WHERE id=1 , chỉ có 2 khối (# 1, # 2) được tải và quét. Mặt khác, SELECT * FROM edges WHERE link=1 yêu cầu 50 khối (# 1, # 3, # 5, ...), mặc dù số lượng hàng là như nhau.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Trợ cấp truy vấn cho một bảng trong postgres

  2. PostgreSQL 10 trên Linux - LC_COLLATE locale en_US.utf-8 không hợp lệ

  3. bất kỳ cách nào để thực hiện các truy vấn được tham số hóa và đóng gói nó bằng python trong hàm

  4. Cách kiểm tra SQL đặc biệt của tôi với các tham số trong cửa sổ truy vấn Postgres

  5. Sao lưu cơ sở dữ liệu Postgresql bằng Python