Kho dữ liệu - Điều chỉnh
Kho dữ liệu không ngừng phát triển và không thể đoán trước được truy vấn mà người dùng sẽ đăng trong tương lai. Do đó, việc điều chỉnh hệ thống kho dữ liệu trở nên khó khăn hơn. Trong chương này, chúng ta sẽ thảo luận về cách điều chỉnh các khía cạnh khác nhau của kho dữ liệu như hiệu suất, tải dữ liệu, truy vấn, v.v.
Khó khăn trong việc điều chỉnh kho dữ liệu
Điều chỉnh kho dữ liệu là một thủ tục khó khăn do những lý do sau:
Kho dữ liệu là động; nó không bao giờ bất biến.
Rất khó để dự đoán truy vấn mà người dùng sẽ đăng trong tương lai.
Yêu cầu kinh doanh thay đổi theo thời gian.
Người dùng và hồ sơ của họ liên tục thay đổi.
Người dùng có thể chuyển từ nhóm này sang nhóm khác.
Tải dữ liệu về kho cũng thay đổi theo thời gian.
Note - Có kiến thức đầy đủ về kho dữ liệu là rất quan trọng.
Đánh giá hiệu suất
Dưới đây là danh sách các thước đo khách quan về hiệu suất -
- Thời gian phản hồi truy vấn trung bình
- Tốc độ quét
- Thời gian sử dụng mỗi ngày truy vấn
- Sử dụng bộ nhớ cho mỗi quá trình
- Tỷ lệ thông lượng I / O
Sau đây là những điểm cần nhớ.
Cần nêu rõ các biện pháp trong thỏa thuận mức dịch vụ (SLA).
Việc cố gắng điều chỉnh thời gian phản hồi sẽ không có ích gì nếu chúng đã tốt hơn những yêu cầu.
Điều cần thiết là phải có những kỳ vọng thực tế trong khi đánh giá hiệu suất.
Điều cần thiết là người dùng phải có những kỳ vọng khả thi.
Để che giấu sự phức tạp của hệ thống với người dùng, nên sử dụng các tập hợp và chế độ xem.
Cũng có thể người dùng có thể viết một truy vấn mà bạn chưa điều chỉnh.
Điều chỉnh tải dữ liệu
Tải dữ liệu là một phần quan trọng của quá trình xử lý qua đêm. Không có gì khác có thể chạy cho đến khi quá trình tải dữ liệu hoàn tất. Đây là điểm vào hệ thống.
Note- Nếu có sự chậm trễ trong việc truyền dữ liệu, hoặc dữ liệu đến thì toàn bộ hệ thống sẽ bị ảnh hưởng nặng nề. Do đó, điều rất quan trọng là phải điều chỉnh tải dữ liệu trước tiên.
Có nhiều cách tiếp cận khác nhau để điều chỉnh tải dữ liệu được thảo luận bên dưới:
Cách tiếp cận rất phổ biến là chèn dữ liệu bằng cách sử dụng SQL Layer. Trong cách tiếp cận này, các kiểm tra và ràng buộc thông thường cần được thực hiện. Khi dữ liệu được chèn vào bảng, mã sẽ chạy để kiểm tra xem có đủ không gian để chèn dữ liệu hay không. Nếu không có đủ dung lượng thì có thể phải phân bổ thêm dung lượng cho các bảng này. Các kiểm tra này cần thời gian để thực hiện và tốn kém cho CPU.
Cách tiếp cận thứ hai là bỏ qua tất cả các kiểm tra và ràng buộc này và đặt dữ liệu trực tiếp vào các khối được định dạng sẵn. Các khối này sau đó được ghi vào cơ sở dữ liệu. Nó nhanh hơn so với cách tiếp cận đầu tiên, nhưng nó chỉ có thể hoạt động với toàn bộ khối dữ liệu. Điều này có thể dẫn đến lãng phí không gian.
Cách tiếp cận thứ ba là trong khi tải dữ liệu vào bảng đã chứa bảng, chúng ta có thể duy trì các chỉ mục.
Cách tiếp cận thứ tư nói rằng để tải dữ liệu trong các bảng đã chứa dữ liệu, drop the indexes & recreate themkhi quá trình tải dữ liệu hoàn tất. Sự lựa chọn giữa cách tiếp cận thứ ba và thứ tư phụ thuộc vào lượng dữ liệu đã được tải và bao nhiêu chỉ mục cần được xây dựng lại.
Kiểm tra tính toàn vẹn
Kiểm tra tính toàn vẹn ảnh hưởng nhiều đến hiệu suất của tải. Sau đây là những điểm cần nhớ:
Cần hạn chế kiểm tra tính toàn vẹn vì chúng đòi hỏi sức mạnh xử lý lớn.
Kiểm tra tính toàn vẹn nên được áp dụng trên hệ thống nguồn để tránh làm giảm hiệu suất của tải dữ liệu.
Truy vấn điều chỉnh
Chúng tôi có hai loại truy vấn trong kho dữ liệu -
- Truy vấn cố định
- Truy vấn đặc biệt
Truy vấn cố định
Các truy vấn cố định được xác định rõ. Sau đây là các ví dụ về các truy vấn cố định -
- báo cáo thường xuyên
- Truy vấn soạn trước
- Tổng hợp chung
Việc điều chỉnh các truy vấn cố định trong kho dữ liệu cũng giống như trong hệ thống cơ sở dữ liệu quan hệ. Sự khác biệt duy nhất là lượng dữ liệu được truy vấn có thể khác nhau. Tốt là nên lưu trữ kế hoạch thực thi thành công nhất trong khi thử nghiệm các truy vấn cố định. Việc lưu trữ kế hoạch thực thi này sẽ cho phép chúng tôi phát hiện kích thước dữ liệu đang thay đổi và độ lệch dữ liệu, vì nó sẽ khiến kế hoạch thực thi thay đổi.
Note - Chúng ta không thể làm được nhiều hơn trên bảng thực tế nhưng trong khi xử lý các bảng thứ nguyên hoặc tổng hợp, bộ sưu tập thông thường về tinh chỉnh SQL, cơ chế lưu trữ và phương thức truy cập có thể được sử dụng để điều chỉnh các truy vấn này.
Truy vấn đặc biệt
Để hiểu các truy vấn đặc biệt, điều quan trọng là phải biết những người dùng đặc biệt của kho dữ liệu. Đối với mỗi người dùng hoặc nhóm người dùng, bạn cần biết những điều sau:
- Số lượng người dùng trong nhóm
- Liệu họ có sử dụng các truy vấn đặc biệt trong khoảng thời gian đều đặn hay không
- Họ có thường xuyên sử dụng các truy vấn đặc biệt hay không
- Liệu họ có thỉnh thoảng sử dụng các truy vấn đặc biệt vào những khoảng thời gian không xác định.
- Kích thước truy vấn tối đa mà chúng có xu hướng chạy
- Kích thước trung bình của truy vấn mà họ có xu hướng chạy
- Liệu họ có yêu cầu quyền truy cập chi tiết vào dữ liệu cơ sở hay không
- Thời gian đăng nhập đã trôi qua mỗi ngày
- Thời gian cao điểm của việc sử dụng hàng ngày
- Số lượng truy vấn họ chạy mỗi giờ cao điểm
Points to Note
Điều quan trọng là phải theo dõi hồ sơ của người dùng và xác định các truy vấn được chạy một cách thường xuyên.
Điều quan trọng nữa là việc điều chỉnh được thực hiện không ảnh hưởng đến hiệu suất.
Xác định các truy vấn tương tự và đặc biệt thường xuyên chạy.
Nếu các truy vấn này được xác định, thì cơ sở dữ liệu sẽ thay đổi và các chỉ mục mới có thể được thêm vào cho các truy vấn đó.
Nếu các truy vấn này được xác định, thì các tổng hợp mới có thể được tạo riêng cho các truy vấn đó sẽ dẫn đến việc thực thi hiệu quả của chúng.