Thư viện tri thức trực tuyến
Kho tài liệu với 50,000+ tài liệu học thuật
© 2023 Siêu thị PDF - Kho tài liệu học thuật hàng đầu Việt Nam

Chuẩn bị kỳ thi số 731 lấy chứng chỉ DBA (Quản trị cơ sở dữ liệu) DB2 9, Phần 4: Giám sát hoạt động
Nội dung xem thử
Mô tả chi tiết
huẩn bị kỳ thi số 731 lấy chứng chỉ DBA (Quản trị cơ sở dữ liệu) DB2 9, Phần
4: Giám sát hoạt động của DB2
Roger Sanders, Quản lý cao cấp, EMC
Tóm tắt: Hướng dẫn này giới thiệu cho bạn bộ các công cụ giám sát đã có sẵn
cho DB2® 9 và chỉ cho các bạn cách sử dụng mỗi công cụ để giám sát xem hệ
thống cơ sở dữ liệu của bạn hoạt động tốt (hoặc kém) như thế nào. Đây là bài thứ
tư trong loạt bảy bài hướng dẫn mà bạn có thể sử dụng để chuẩn bị kỳ thi lấy
Chứng chỉ Quản trị cơ sở dữ liệu DB2 9 cho các hệ điều hành Linux®, UNIX® và
Windows™ (Kỳ thi 731).
Trước khi bạn bắt đầu
Về loạt bài hướng dẫn này
Nếu bạn đang chuẩn bị dự kỳ thi 731 lấy chứng chỉ quản trị cơ sở dữ liệu (DBA)
DB2, bạn đã đến đúng chỗ - đây là một kiểu phòng tự học. Loạt bảy bài hướng dẫn
chuẩn bị lấy chứng chỉ DB2 này gồm các khái niệm chính mà bạn cần biết để làm
bài kiểm tra. Hãy làm bài tập ở nhà của bạn ở đây và giảm bớt căng thẳng trong
ngày thi.
Về bài hướng dẫn này
Việc tinh chỉnh và định cấu hình cho cơ sở dữ liệu DB2 có thể là một quá trình
phức tạp, đôi khi là rất khó cho các quản trị viên cơ sở dữ liệu mới vào nghề. Tuy
nhiên, có một số lượng lớn các công cụ, các hàm và các ứng dụng đi kèm với DB2
mà một khi ta làm chủ được chúng, thì nhiệm vụ này trở nên đơn giản
Hướng dẫn này được thiết kế để giới thiệu cho bạn một bộ các công cụ giám sát
sẵn có tại DB2 9 và chỉ cho các bạn cách sử dụng mỗi công cụ để giám sát xem hệ
thống cơ sở dữ liệu của bạn hoạt động tốt (hoặc kém) như thế nào. Trong hướng
dẫn này, bạn sẽ tìm hiểu xem:
Cách trình giám sát của hệ thống cơ sở dữ liệu làm việc như thế nào
Cách thu thập các thông tin chụp nhanh (snapshot) như thế nào
Cách tạo ra các trình giám sát sự kiện và dữ liệu giám sát sự kiện được thu
thập như thế nào
Cách sử dụng trình giám sát tình trạng sức khỏe máy tính và Trung tâm sức
khỏe máy tính (Health Center) như thế nào
Các dữ liệu giải nghĩa toàn diện và dữ liệu chụp nhanh giải nghĩa khác nhau
như thế nào
Các dữ liệu giải nghĩa toàn diện và dữ liệu chụp nhanh giải nghĩa được thu
thập như thế nào
Cách sử dụng công cụ Giải nghĩa trực quan (Visual Explain) để xem giải
nghĩa về dữ liệu chụp nhanh
Đây là hướng dẫn thứ tư trong loạt bảy bài hướng dẫn để giúp bạn chuẩn bị kỳ thi
lấy chứng chỉ Quản trị cơ sở dữ liệu DB2 9 cho Linux, UNIX và Windows (Kỳ thi
731). Các tư liệu trong hướng dẫn này chủ yếu dành cho các mục tiêu trong phần 4
của kỳ thi, có tên "Phân tích hoạt động của DB2." Bạn có thể xem các mục tiêu
này tại địa chỉ: http://www-03.ibm.com/certify/tests/obj731.shtml.
Mục đích của bài hướng dẫn
Sau khi hoàn thành hướng dẫn này, bạn sẽ có thể:
Thu giữ các hình chụp nhanh bằng cách sử dụng hàm GET SNAPSHOT
hoặc các hàm SQL
Tạo và kích hoạt trình giám sát sự kiện
Định cấu hình trình giám sát tình trạng sức khỏe bằng cách sử dụng Trung
tâm sức khỏe máy tính (Health Center)
Thu giữ và phân tích các thông tin giải nghĩa / Giải nghĩa trực quan
Nhận biết các hàm của công cụ xác định vấn đề của DB2 (ví dụ: db2pd và
db2mtrk)
Các yêu cầu cần có
Để được tham dự được kỳ thi DBA DB2 9 thì bạn đã phải vượt qua kỳ thi 730, Cơ
bản về DB2 9. Chúng tôi khuyên bạn nên xem loại bài hướng dẫn: Cơ bản về DB2
trước khi bắt đầu loạt bài hướng dẫn này.
Để giúp bạn hiểu một số tư liệu được trình bày trong hướng dẫn này, bạn phải biết
các thuật ngữ sau:
Ngôn ngữ truy vấn có cấu trúc (SQL): Một ngôn ngữ được tiêu chuẩn
hoá dùng để định nghĩa các đối tượng và thao tác dữ liệu trong một cơ sở
dữ liệu quan hệ.
Trình tối ưu hóa DB2: Một thành phần của trình tiền biên dịch SQL, Trình
tối ưu hoá chọn kế hoạch truy cập cho câu lệnh SQL dùng ngôn ngữ thao
tác dữ liệu bằng cách mô hình hóa các chi phí thực hiện của một số kế
hoạch truy cập có thể và chọn ra kế hoạch có chi phí ước tính tối thiểu.
Yêu cầu về hệ thống
Bạn không cần một bản sao của DB2 để hoàn thành hướng dẫn này. Tuy nhiên,
bạn sẽ học được nhiều hơn từ hướng dẫn này, nếu bạn tải về phiên bản dùng thử
miễn phí DB2 9 của IBM để làm theo bài hướng dẫn này.
Thu giữ dữ liệu chụp nhanh
Trình giám sát hệ thống cơ sở dữ liệu
Giám sát cơ sở dữ liệu là một hoạt động sống còn, hoạt động này, khi được thực
hiện thường xuyên, sẽ cung cấp các thông tin phản hồi liên tục về tình trạng sức
khỏe của một hệ thống cơ sở dữ liệu. Bởi vì giám sát cơ sở dữ liệu là một phần
không thể tách rời của công tác quản trị cơ sở dữ liệu, DB2 9 được trang bị một
tiện ích giám sát được gọi là trình giám sát hệ thống cơ sở dữ liệu. Mặc dù cái tên
"trình giám sát hệ thống cơ sở dữ liệu" hàm ý rằng chỉ có một công cụ giám sát
được cung cấp, nhưng trong thực tế trình giám sát hệ thống cơ sở dữ liệu gồm có
hai công cụ riêng biệt, có thể được sử dụng để thu giữ và trả về các thông tin giám
sát hệ thống: một trình giám sát chụp nhanh và một hoặc nhiều trình giám sát sự
kiện. Trình giám sát chụp nhanh cho phép bạn chụp một bức tranh về trạng thái
của cơ sở dữ liệu tại một thời điểm cụ thể trong khi các trình giám sát sự kiện thu
giữ và ghi lại dữ liệu khi các sự kiện cơ sở dữ liệu cụ thể xảy ra. Các thông tin thu
thập bởi cả hai công cụ này được lưu trữ trong các thực thể được gọi là các phần
tử giám sát (hoặc gọi là phần tử dữ liệu). Mỗi phần tử giám sát được sử dụng được
xác định bởi một tên duy nhất và được thiết kế để nắm giữ một loại hình thông tin
cụ thể. Các kiểu phần tử sau đây được sử dụng để lưu trữ dữ liệu giám sát:
Bộ đếm (Counters). Bộ đếm lưu giữ tổng số lần mà các hành động hay sự
kiện đã xảy ra. Giá trị của bộ đếm tăng lên trong suốt cuộc đời của trình
giám sát, thường thì phần tử bộ đếm giám sát cho phép bắt đầu lại. Một ví
dụ về phần tử bộ đếm là tổng số câu lệnh SQL đã được thi hành đối với cơ
sở dữ liệu.
Bộ đo (Gauges). Bộ đo lưu giữ số lần mà hành động hay sự kiện đã xảy ra
tại một thời điểm cụ thể. Khác với các giá trị của bộ đếm, các giá trị của bộ
đo có thể tăng hoặc giảm và giá trị của nó tại một thời điểm bất kỳ nào đó
thường phụ thuộc vào mức độ hoạt động của cơ sở dữ liệu. Một ví dụ về
phần tử bộ đo là số lượng các ứng dụng hiện đang được kết nối với cơ sở
dữ liệu.
Ngấn nước (Watermarks). Ngấn nước cho biết giá trị cao nhất (tối đa)
hoặc thấp nhất (tối thiểu) của một mục kể từ khi trình giám sát bắt đầu. Một
ví dụ về phần tử ngấn nước là số lượng lớn nhất các hàng bị tác động bởi
một hoạt động cập nhật.
Thông tin (Information). Theo như tên gọi, các phần tử thông tin cung cấp
các chi tiết mang tính chất tham khảo về tất cả các hoạt động giám sát được
thực hiện. Ví dụ về các phần tử thông tin bao gồm tên của pool đệm, tên cơ
sở dữ liệu và các bí danh, chi tiết đường dẫn, v.v..
Mốc thời gian (Timestamps). Mốc thời gian cho biết ngày giờ mà một
hoạt động hay sự kiện đã diễn ra. Các giá trị của mốc thời gian được tính
bằng số giây và phần triệu của giây đã trôi qua kể từ ngày 1 tháng Một năm
1970. Một ví dụ về phần tử mốc thời gian là ngày giờ thiết lập kết nối đầu
tiên tới cơ sở dữ liệu.
Thời gian (Time). Các phần tử thời gian lưu vết thời lượng đã dùng để
thực hiện một hoạt động hoặc một sự kiện. Các giá trị thời gian được tính
bằng số giây và phần triệu giây đã trôi qua kể từ khi hoạt động hay sự kiện
này được bắt đầu và một số phần tử thời gian cho phép đặt bắt đầu lại. Một
ví dụ về phần tử thời gian là lượng thời gian đã được dùng để thực hiện một
hoạt động sắp xếp.
Trình giám sát của hệ thống cơ sở dữ liệu có thể sử dụng bất kỳ tổ hợp nào của các
phần tử này để thu thập dữ liệu giám sát, và một khi dữ liệu đó đã được thu thập,
thì có thể sử dụng một số phương thức để trình bày các dữ liệu lưu trữ trong mỗi
phần tử đã sử dụng; đối với cả hai, trình giám sát chụp nhanh lẫn giám sát sự kiện,
bạn có thể tùy chọn cách lưu trữ tất cả dữ liệu thu thập được, vào trong một tệp tin
hay vào các bảng cơ sở dữ liệu, xem chúng trên màn hình, hoặc xử lý chúng bằng
cách sử dụng một ứng dụng tùy chỉnh. (Trình giám sát hệ thống cơ sở dữ liệu trả
về dữ liệu giám sát cho một ứng dụng khách, sử dụng dòng dữ liệu tự mô tả. Với
ứng dụng giám sát chụp nhanh bạn gọi ra các API chụp nhanh thích hợp để chụp
nhanh dữ liệu và sau đó xử lý dòng dữ liệu được trả về; với một ứng dụng giám sát
sự kiện, bạn chuẩn bị để nhận dữ liệu được tạo ra thông qua một tệp tin hoặc một
đường ống (pipe) có đặt tên, kích hoạt trình giám sát sự kiện thích hợp và xử lý
luồng dữ liệu dưới dạng đã nhận được.)
Trình giám sát chụp nhanh
Trình giám sát chụp nhanh được thiết kế để thu thập thông tin về trạng thái của
một cá thể trình quản trị cơ sở dữ liệu DB2 và các cơ sở dữ liệu mà nó kiểm soát
tại một thời điểm cụ thể (nói cách khác là tại thời điểm thực hiện chụp nhanh).
Việc chụp nhanh là hữu ích để xác định tình trạng của một hệ thống cơ sở dữ liệu,
và khi chụp nhanh theo những khoảng thời gian đều đặn, thì chúng có thể cung
cấp cho ta các thông tin có giá trị, có thể sử dụng để quan sát các xu hướng và xác
định các khu vực có vấn đề tiềm tàng. Việc chụp nhanh có thể được thực hiện
bằng cách thi hành câu lệnh GET SNAPSHOT từ Trình xử lý dòng lệnh
(Command Line Processor - CLP) của DB2 bằng cách sử dụng các hàm bảng chụp
nhanh thích hợp trong một truy vấn, hoặc bằng cách sử dụng các giao diện lập
trình (API) giám sát chụp nhanh trong một ứng dụng C hoặc C++. Ngoài ra, có thể
đo cắt thiết kế chức năng chụp nhanh để trả về các kiểu giá trị dữ liệu giám sát cụ
thể (ví dụ: có thể định cấu hình một bản chụp nhanh chỉ để trả lại các thông tin về
pool đệm).
Các chuyển mạch của trình giám sát chụp nhanh
Thông thường thì việc thu thập các dữ liệu giám sát hệ thống đòi hỏi thêm tải công
việc xử lý. Ví dụ, để tính toán thời gian thi hành câu lệnh SQL, trình quản lý cơ sở
dữ liệu của DB2 phải gọi đến hệ điều hành để có được mốc thời gian trước và sau
khi câu lệnh SQL được thực thi. Các cuộc gọi hệ thống kiểu này có thể chi phí đắt.
Một tác động phụ khác của việc sử dụng trình giám sát hệ thống là lượng tiêu
dùng bộ nhớ tăng lên – trình quản trị cơ sở dữ liệu DB2 sử dụng bộ nhớ để lưu trữ
các dữ liệu đã thu thập được cho mọi phần tử giám sát đang được theo dõi bởi
trình giám sát hệ thống.
Để giúp giảm thiểu tải công việc tăng thêm liên quan đến việc thu thập thông tin
giám sát hệ thống này, một nhóm các chuyển mạch được gọi là các chuyển mạch
giám sát chụp nhanh có thể được sử dụng để kiểm soát những thông tin nào được
thu thập khi chụp nhanh được thực hiện; kiểu và số lượng thông tin sẽ thu thập
được xác định thông qua cách thiết lập các chuyển mạch chụp nhanh. Mỗi chuyển
mạch giám sát chụp nhanh có hai cách thiết đặt: ON (bật) và OFF (tắt). Khi
chuyển mạch giám sát chụp nhanh được đặt ở trạng thái OFF, thì các thông tin
giám sát không được thu thập cho các phần tử thuộc quyền kiểm soát của chuyển
mạch ấy. Các thông tin sẽ được thu thập nếu chuyển mạch được đặt ở trạng thái
ON. (Xin nhớ rằng một số lượng đáng kể các thông tin giám sát không nằm dưới
sự kiểm soát của các chuyển mạch và luôn luôn được thu thập, bất kể các chuyển
mạch giám sát chụp nhanh đã được thiết lập như thế nào). Bạn có thể xem các
chuyển mạch có sẵn, cùng với các mô tả về các loại thông tin thu thập được khi
từng bộ chuyển mạch được thiết lập ở trạng thái bật (ON) tại bảng 1.
Bảng 1. Các chuyển mạch giám sát chụp nhanh
Nhóm trình
giám sát
Chuyển mạch
giám sát
Tham số cấu hình của
trình quản trị cơ sở
dữ liệu
Các thông tin được
cung cấp
Pools đệm BUFFERPOOL dft_mon_bufferpool
Số lần hoạt động của
pool đệm (nói cách khác
là số lần của các hoạt
động đọc và ghi đã thực
hiện và lượng thời gian
cho từng hoạt động
đọc/ghi).
Khóa (Locks) LOCK dft_mon_lock
Số khóa đã nắm giữ và
số lần gặp phải chu kỳ
khóa chết
Sắp xếp (Sorts) SORT dft_mon_sort Số lượng các hoạt động
sắp xếp đã thực hiện, số
lượng heaps đã được sử
dụng, số lần tràn bộ nhớ
gặp phải và hiệu năng
sắp xếp.
Câu lệnh SQL STATEMENT dft_mon_stmt
Thời gian bắt đầu xử lý
câu lệnh SQL, Thời gian
kết thúc xử lý câu lệnh
SQL, và mã nhận dạng
câu lệnh SQL.
Bảng (Tables) TABLE dft_mon_table
Số lượng các hoạt động
với bảng được thực hiện
chẳng hạn như số hàng
đã được đọc, số hàng đã
được viết, vv..
Mốc thời gian
(Timestamps)
TIMESTAMP dft_mon_timestamp
Thông tin về thời gian
và mốc thời gian.
Giao dịch
(Transactions)
UOW dft_mon_uow
Thời gian bắt đầu giao
dịch, thời gian kết thúc
giao dịch lần và trạng
thái hoàn tất giao dịch.
Theo mặc định, tất cả các chuyển mạch tại bảng 1 được đặt ở trạng thái tắt (OFF),
ngoại trừ chuyển mạch TIMESTAMP (mốc thời gian), được thiết lập ở trạng thái
bật (ON) và được khởi tạo khi cá thể khởi chạy lần đầu tiên.
Xem các thiết đặt của các chuyển mạch giám sát chụp nhanh hiện tại
Như đã đề cập ở phần trước thì kiểu và số lượng thông tin được thu thập khi thực
hiện một bản chụp nhanh sẽ được kiểm soát, trong một chừng mực nào đó, tùy
theo cách các chuyển mạch chụp nhanh đã được thiết lập như thế nào. Trước khi
bạn chụp nhanh cơ sở dữ liệu, thì điều quan trọng là bạn phải biết được chuyển
mạch chụp nhanh nào đã được bật và chuyển mạch chụp nhanh nào vẫn tắt. Làm
thế nào để bạn có thể biết được các thiết lập hiện tại của mỗi chuyển mạch chụp
nhanh là gì ? Cách đơn giản nhất là thi hành câu lệnh GET MONITOR
SWITCHES từ trong CLP. Cú pháp cơ bản cho lệnh này là:
GET MONITOR SWITCHES <AT DBPARTITIONNUM [PartitionNum]>
ở đây tham số PartitonNum xác định phân đoạn của cơ sở dữ liệu (trong môi
trường cơ sở dữ liệu nhiều phân đoạn) nơi trạng thái của các chuyển mạch giám
sát chụp nhanh có sẵn sẽ được lấy ra và được hiển thị.
Lưu ý: Các tham số hiển thị trong dấu ngoặc nhọn (< >) là tùy chọn, các tham số
hoặc tùy chọn được hiển thị trong dấu ngoặc vuông ([ ]) là bắt buộc; và dấu phẩy
kèm theo dấu ba chấm (...) biểu thị rằng các tham số trước đó có thể được lặp lại
nhiều lần.