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

Làm cách nào để thiết kế một bảng lưu trữ dữ liệu rất lớn?

Kích thước đó đưa bạn vào lãnh thổ VLDB (cơ sở dữ liệu rất lớn). Những thứ về cơ bản là khác nhau ở độ cao đó.

Câu hỏi của bạn không thể được trả lời nếu không có đầy đủ các yêu cầu về trách nhiệm trong ứng dụng của bạn. Bạn cần thiết kế để đạt được hiệu suất liên quan đến những gì ứng dụng của bạn nên LÀM với dữ liệu.

Lời khuyên của tôi là nhờ một người đã có kinh nghiệm trước đó tham gia, hoặc bạn gần như chắc chắn 100% sẽ thất bại.

Nếu bạn sử dụng Oracle, nó cung cấp một số kiểu phân vùng mà bạn sẽ muốn sử dụng rất cẩn thận. Bạn cần phân vùng cho các mục đích quản trị (di chuyển dữ liệu, xây dựng chỉ mục, khôi phục dữ liệu) cũng như cho hiệu suất truy vấn:

  • Phân vùng theo phạm vi, ví dụ:theo phạm vi ngày
  • Liệt kê phân vùng, để lưu trữ các phần dữ liệu nói theo quốc gia ('SE', 'US', 'GB')
  • Phân vùng băm. Lưu trữ dữ liệu của bạn vào một trong các phân vùng dựa trên hàm băm
  • Hoặc bất kỳ sự kết hợp nào ở trên

Ngoài ra, bạn cần một người biết cách xây dựng và cấu hình một cỗ máy quái vật với thông lượng I / O thực sự tuyệt vời. Bạn cần nhiều hơn 1GB / s, điều này không hề rẻ khi bạn cũng cần lưu trữ 200 TB. Trên thực tế, nếu 200 TB đó chỉ là dữ liệu bảng, bạn sẽ cần phải tăng gấp đôi hoặc gấp ba số đó để có thể tạo chỉ mục, bảng tổng hợp, bản sao lưu, v.v.

Rất tiếc, tôi không thể cung cấp cho bạn một giải pháp sẵn sàng để sử dụng, nhưng tôi muốn đảm bảo rằng bạn hiểu rằng bạn không chỉ xây dựng một cơ sở dữ liệu có kích thước trên mức trung bình. Nó rất lớn!



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. if (điều kiện, sau đó, khác) trong Oracle

  2. Câu hỏi về thời gian thực của Oracle DBA

  3. Oracle Chèn truy vấn trong thủ tục được lưu trữ không hoạt động khi được gọi từ mã phía sau

  4. Các thuộc tính Biểu mẫu và Báo cáo Oracle 11g Cập nhật hàng loạt

  5. CẬP NHẬT SQL trong một thứ hạng CHỌN trên câu phân vùng