“Cơ sở dữ liệu lớn” thực sự là một khái niệm viển vông. Đã có những câu trả lời và ý kiến rất khác nhau được đăng trong các câu trả lời cho câu hỏi này. Một số cách tiếp cận để định nghĩa Cơ sở dữ liệu “nhỏ”, “vừa” và “lớn” có thể có ý nghĩa hơn những cách khác NHƯNG VẬY, tại một số điểm, tôi cho rằng mỗi định nghĩa đều đúng, đúng và hợp lệ.
Một số định nghĩa có ý nghĩa hơn những định nghĩa khác bởi vì chúng tập trung vào các khía cạnh khác nhau về tầm quan trọng đối với việc thiết kế, lập trình, sử dụng, bảo trì và quản trị Cơ sở dữ liệu và những khía cạnh khác nhau này là điều thực sự quan trọng đối với Cơ sở dữ liệu có thể sử dụng được. Chỉ xảy ra rằng tất cả những khía cạnh này đều bị ảnh hưởng bởi khái niệm "Kích thước cơ sở dữ liệu".
Vì vậy, Điều này có nghĩa là không quan trọng nếu bạn có thể xác định xem một Cơ sở dữ liệu cụ thể có lớn hay không?
Chắc chắn không. Điều đó có nghĩa là bạn sẽ áp dụng khái niệm khác nhau trong khi đánh giá các khía cạnh thiết kế / vận hành / quản trị khác nhau của Cơ sở dữ liệu của bạn. Nó cũng có nghĩa là mọi thời điểm khái niệm này sẽ là viển vông.
Ví dụ: chiến lược Chỉ mục cơ sở dữ liệu (một khía cạnh của thiết kế Cơ sở dữ liệu) bị ảnh hưởng bởi số lượng bản ghi cho mỗi bảng (thước đo “kích thước”), bởi kích thước bản ghi lần đếm bản ghi (một thước đo khác của “kích thước”) và bởi Truy vấn Vs . Tỷ lệ hoạt động Tạo / Cập nhật / Xóa (một khía cạnh của việc sử dụng Cơ sở dữ liệu).
Thời gian phản hồi truy vấn sẽ tốt hơn nếu các chỉ mục được sử dụng cho các bảng có số lượng bản ghi lớn. Tùy thuộc vào bản chất của mệnh đề WHERE, ORDER BY và các mệnh đề tổng hợp bản ghi, bạn có thể cần một số chỉ mục cho các bảng nhất định.
Các hoạt động Tạo, Cập nhật và Xóa bị ảnh hưởng tiêu cực khi số lượng chỉ mục trên (các) bảng bị ảnh hưởng tăng lên. Nhiều chỉ mục hơn cho một bảng bị ảnh hưởng có nghĩa là nhiều thay đổi hơn mà RDBMS phải thực hiện, dành nhiều thời gian hơn và nhiều tài nguyên hơn để áp dụng những thay đổi đó.
Ngoài ra, nếu RDBMS của bạn dành nhiều thời gian hơn để áp dụng những thay đổi đó, thì các khóa cũng được duy trì trong thời gian dài hơn, ảnh hưởng đến thời gian phản hồi các truy vấn khác được gửi đến hệ thống cùng một lúc.
Vì vậy, làm thế nào để bạn cân bằng số lượng và thiết kế các chỉ mục của bạn? Làm thế nào để bạn biết liệu bạn có cần một chỉ mục bổ sung hay không và nếu bằng cách thêm chỉ mục đó, bạn sẽ không tạo ra tác động tiêu cực lớn đến thời gian phản hồi truy vấn? Trả lời: Bạn kiểm tra và lập cấu hình cơ sở dữ liệu của mình dựa trên tải mục tiêu theo yêu cầu tải / hiệu suất của bạn và phân tích dữ liệu cấu hình để khám phá xem có cần tối ưu hóa thêm / thiết kế lại / chỉ mục hay không.
Các chiến lược Chỉ mục khác nhau được yêu cầu cho các Truy vấn khác nhau. Tạo / Cập nhật / Xóa tỷ lệ hoạt động. Nếu Cơ sở dữ liệu của bạn đang chịu tải nặng các truy vấn nhưng hiếm khi được cập nhật, hiệu suất cho ứng dụng tổng thể sẽ tốt hơn nếu bạn thêm mọi chỉ mục để cải thiện thời gian phản hồi truy vấn. Mặt khác, nếu Cơ sở dữ liệu của bạn liên tục được cập nhật nhưng không có các hoạt động truy vấn lớn, thì hiệu suất sẽ tốt hơn nếu bạn sử dụng ít chỉ mục hơn.
Tất nhiên còn có các khía cạnh khác: Thiết kế lược đồ cơ sở dữ liệu, Chiến lược lưu trữ, Thiết kế mạng, Chiến lược sao lưu, Quy trình lưu trữ / Kích hoạt / v.v. lập trình, Lập trình ứng dụng (dựa trên Cơ sở dữ liệu), v.v. Tất cả các khía cạnh này bị ảnh hưởng khác nhau bởi các khái niệm riêng biệt về “kích thước” (kích thước bản ghi, số lượng bản ghi, kích thước chỉ mục, số chỉ mục, thiết kế lược đồ, kích thước lưu trữ, v.v.).
Tôi muốn có thêm thời gian vì chủ đề này rất hấp dẫn. Tôi hy vọng đóng góp nhỏ này đóng vai trò là điểm khởi đầu cho bạn trong thế giới SQL hấp dẫn này.