Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 16 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
16
Dung lượng
1,25 MB
Nội dung
BIÊN BẢN ĐÁNH GIÁ Nhóm: 10 Mã LHP: 1582eCIT2511 GV: Hà Minh Phương STT Họ Tên MSV Chức vụ NT Đánh Giá Nguyễn Thị Trúc 12D190038 Nhóm trưởng Lê Thanh Tùng 12D190039 Thành viên Trần Ánh Tuyết 12D190098 Thành viên Nguyễn Thị Uyên 12D190040 Thành viên Đỗ Thị Vân 12D190228 Thành viên Phạm Minh Vân 12D190115 Thành viên Vũ Thị Vân 12D190170 Thành viên Đỗ Hoàng Việt 12D190229 Thành viên Nguyễn Thị Yến 12D190100 Thành viên Nhóm trưởng Nguyễn Thị Trúc Mở đầu: Quản lý tài nguyên - Resource Governor - SQL Server 2008 điểm Governor sử dụng để hạn chế người dùng nhóm người dùng chi phối lớp tài nguyên mức cao Các mục kiểm tra gồm có độ rộng băng tần CPU, thời gian timeout, số lần ngoại lệ, số lần khóa số lần nhàn rỗi Nếu mức ngưỡng Resource Governor đạt tới hệ thống kích hoạt kiện dừng q trình I Nội dung SQL server 2008 có nét đặc trưng quản lý tài nguyên Nó cho phép bạn giới hạn lượng tiêu thu tài nguyên server theo loại kết nối khác Ví dụ: Bạn sử dụng để giới hạn thời gian xử lý, nhớ cho người dùng, ứng dụng hệ thống Một vài thuật ngữ: - Resource pools (Nhóm tài nguyên): gồm phần CPU nhớ SQL server - Workload groups (Nhóm cơng việc): tập hợp phiên làm việc tạo sử dụng tài nguyên server Khi tạo workload group, bạn cần gán giá trị cho vùng chứa tài nguyên - Classifier function (Chức phân loại): giúp SQL Server gán giá trị cho phiên nhóm cơng việc dựa mối quan hệ thuộc tính (như người dùng, ứng dụng…) Mỗi phiên làm việc bắt đầu SQL Server, Resource Governor (nếu kích hoạt) sử dụng chức để phân tích thuộc tính kết nối phiên gán vào Workload groups dựa thuộc tính Sau SQL Server cho phép phiên làm việc sử dụng CPU tài nguyên nhớ phân bổ cho Resource Pool sở chia sẻ với phiên khác Workload group (hoặc Workload group khác gán Resource pools) Bộ điều chỉnh tài nguyên phân loại phiên lần: tạo Nếu bạn thay đổi chức phân loại, thay đổi ảnh hưởng đến phiên Các phiên tồn trì phân loại ban đầu chúng Creating resource pools: Tạo nhóm tài nguyên SQL Server có nhóm tài ngun cấu hình trước - Nhóm tài ngun nội (trong sử dụng nhóm khối lượng cơng việc nội bộ): xử lý tài nguyên cho SQL Server Khơng có giới hạn việc sử dụng nguồn lực nhóm tài nguyên nội người dùng khơng thể sửa đổi chúng - Nhóm tài nguyên mặc định: có giá trị tối thiểu giá trị tối đa 100 cho nhớ thời gian xử lý mặc định Người dùng sửa đổi đặc điểm muốn Bạn tạo nhóm tài nguyên riêng cách sử dụng CREATE RESOURCE POOL với cú pháp sau: CREATE RESOURCE POOL resource_pool_name WITH ( [ MIN_CPU_PERCENT = value] [ [ , ] MAX_CPU_PERCENT = value] [ [ , ] MIN_MEMORY_PERCENT = value] [ [ , ] MAX_MEMORY_PERCENT = value] ) Trong câu lệnh resource_pool_name phải tên với chữ không 128 ký tự Mỗi value nên giá trị xác định số nguyên từ đến 100 Các tham biến nhóm tài ngun sau: • MIN_CPU_PERCENT tỷ lệ phần trăm CPU trung bình để đảm bảo cho nhóm tài nguyên Tổng giá trị MIN_CPU_PERCENT cho tất nhóm tài nguyên trường hợp khơng thể vượt q 100% • MAX_CPU_PERCENT cung cấp tỷ lệ phần trăm tối đa trung bình truy vấn gán, nhóm tài nguyên nhận truy vấn khác hồn thành cho thời gian xử lý • MIN_MEMORY_PERCENT phần bảo đảm tối thiểu mà nhớ dành riêng cho nhóm tài nguyên Tổng giá trị MIN_MEMORY_PERCENT cho tất nhóm tài ngun trường hợp khơng thể vượt 100% • MAX_MEMORY_PERCENT cung cấp số lượng tối đa nhớ mà nhóm tài nguyên sử dụng Ví dụ: Muốn sử dụng Resource Governor để hạn chế người sử dụng SSMS đến 50% giá trị CPU tài nguyên nhớ Bạn tạo nhóm tài nguyên với tên “SSMS pool” với câu lệnh T-SQL sau: CREATE RESOURCE POOL SSMSpool WITH (MAX_CPU_PERCENT = 50, MAX_MEMORY_PERCENT = 50) Nếu bạn muốn chỉnh sửa nhóm tài nguyên sử dụng lệnh ALTER RESOURCE POOL tương tự sau: ALTER RESOURCE POOL {resource_pool_name | “default”} WITH ( [ MIN_CPU_PERCENT = value] [ [ , ] MAX_CPU_PERCENT = value] [ [ , ] MIN_MEMORY_PERCENT = value] [ [ , ] MAX_MEMORY_PERCENT = value] ) Ví dụ bạn muốn sửa đổi mặc định để tiêu thụ tối đa 75% CPU 25% nhớ Bạn sử dụng câu lệnh T-SQL sau: ALTER RESOURCE POOL “default” WITH ( MAX_CPU_PERCENT = 75, MAX_MEMORY_PERCENT = 25) Khi bạn muốn thay đổi tài nguyên gán cho nhóm tài nguyên theo mặc định, ban phải kèm theo từ “default” dấu ngoặc kép Creating workload groups SQL Server 2008 kèm cấu hình sẵn với hai nhóm khối lượng cơng việc, nội mặc định Những nhóm khối lượng công việc sử dụng nguồn tài nguyên tạo Tạo nhóm khối lượng cơng việc cách sử dụng CREATE GROUP Với cú pháp sau đây: CREATE WORKLOAD GROUP workload_group_name WITH ( [ IMPORTANCE = { LOW | MEDIUM | HIGH } ] [ [ , ] REQUEST_MAX_MEMORY_GRANT_PERCENT = value ] [ [ , ] REQUEST_MAX_CPU_TIME_SEC = value ] [ [ , ] REQUEST_MEMORY_GRANT_TIMEOUT_SEC = value ] [ [ , ] MAX_DOP = value ] [ [ , ] GROUP_MAX_REQUESTS = value ] ) [ USING { resource_pool_name | “default” } ] Các tham số để CREATE Workload lệnh GROUP là: IMPORTANCE phản ánh tầm quan trọng tương đối nhóm khối lượng cơng việc, có giá trị LOW | MEDIUM | HIGH Resource Governor sử dụng giá trị phân bổ nguồn lực nhóm cơng việc khác cách sử dụng tài nguyên cạnh tranh cho thời gian CPU nhớ REQUEST_MAX_MEMORY_GRANT_PERCENT giá trị từ đến 100 xác định số tiền tối đa nhớ mà truy vấn từ hệ thống tài nguyên Con số tỷ lệ phần trăm nhớ đến tài nguyên, tỷ lệ phần trăm tổng số nhớ hệ thống REQUEST_MEMORY_GRANT_TIMEOUT_SEC số tiền tối đa thời gian (toàn giây) mà truy vấn chờ đợi cho nguồn lực sử dụng truy vấn khác MAX_DOP số 64 cho thấy mức độ tối đa song song GROUP_MAX_REQUESTS số nguyên xác định số lượng tối đa truy vấn thực đồng thời nhóm Resource_pool_name tên hệ thống tài ngun có sẵn cho nhóm khối lượng cơng việc Ví dụ: CREATE Workload GROUP SSMSworkload WITH ( IMPORTANCE = MEDIUM) USING SSMSpool Bạn sửa đổi nhóm khối lượng công việc cách sử dụng khối lượng cơng việc ALTER Lệnh GROUP, có cú pháp tương tự CREATE khối lượng cơng việc Creating classifier function Hàm phân loại hàm người dùng định nghĩa mà gán phiên cho nhóm tải làm việc dựa thuộc tính liên hệ Sau vài đặc trưng quan trọng hàm phân loại: • Cần lập hàm phân loại sởliệu • Hàm phân loại trả tên nhóm tải làm việc, khơng trả tên nhóm tải làm việc hợp lệ, Resource Governor gán phiên cho nhóm mặc định • Hàm phân loại phải bị ràng buộc Lập hàm schemabound cách thêm câu lệnh WITH SCHEMABINDING định nghĩa hàm • Chỉ có hàm phân loại hoạt động lúc Sau hàm phân loại bổ sung cho trường hợp mô tả trên: cho tất phiên SSMS vào nhóm tải làm việc SSMS CREATE FUNCTION dbo.SSMSClassifier() RETURNS SYSNAME WITH SCHEMABINDING AS BEGIN DECLARE @wkldgroup SYSNAME IF (APP_NAME() = ‘Microsoft SQL Server Management Studio’) SET @wkldgroup = ‘SSMSgroup’ ELSE RETURN NULL RETURN @wkldgroup END Activating and deactivating Resource Governor Khi sẵn sàng khởi động Resource Governor, trước hết phải gán cho hàm phân loại lệnh dưới: ALTER RESOURCE GOVERNOR WITH (CLASSIFIER_FUNCTION = dbo.SSMSClassifier) Cuối cùng, cần áp dụng thay đổi cách hướng dẫn máy chủ SQL cấu hình lại Resource Governor với thay đổi Câu lệnh sau thực điều này: ALTER RESOURCE GOVERNOR RECONFIGURE Phải đưa lệnh RECONFIGURE muốn thay đổi cấu hình Resource Governor không máy chủ không thực thay đổi Nếu muốn giải hoạt Resource Governor đối tượng máy chủ SQL, sử dụng lệnh sau: ALTER RESOURCE GOVERNOR DISABLE II Demo Creating resource pools a) Đặt giới hạn Pool ReportQueries FinanceApp min_cpu max_cpu_pe min_memory_p _percent 0 rcent 50 25 ercent 0 b) Thực yêu cầu Cách 1: Sử dụng truy vấn CREATERESOURCEPOOL [ReportQueries] WITH(min_cpu_percent=0, max_cpu_percent=50, min_memory_percent=0, max_memory_percent=50, AFFINITY SCHEDULER =AUTO ) GO CREATERESOURCEPOOL [FinanceApp] WITH(min_cpu_percent=0, max_cpu_percent=25, min_memory_percent=0, max_memory_percent=40, AFFINITY SCHEDULER =AUTO ) GO ALTER RESOURCE GOVERNOR RECONFIGURE; GO Cách 2: Dùng giao diện max_memory_ percent 50 40 Bước 1: Vào Resource governor -> click chuột phải vào Resource Pool, chọn New Resource Pool Bước 2: Thêm pool giá trị Minium CPU %, Maximum CPU %, Minium Memory % Maxium memory % Và click [OK] 2 Creating workload groups a) Yêu cầu request_ request_m WORKLOA importanc DGROUP e _time_se y_grant_p Medium c 1000 ercent 25 Medium 2000 40 ExceQueries ReportQueri esWG max_cpu ax_memor request_mem ma group_ ory_grant_ti x_d max_re meout_sec op quests 1000 20 1000 30 Cách 1: Thực truy vấn USE [master] GO CREATE WORKLOADGROUP [ExceQueries] WITH(group_max_requests=20, importance=Medium, request_max_cpu_time_sec=1000, request_max_memory_grant_percent=25, request_memory_grant_timeout_sec=1000, max_dop=4)USING [FinanceApp] GO USE [master] GO CREATE WORKLOADGROUP [ReportQueriesWG] WITH(group_max_requests=30, importance=Medium, request_max_cpu_time_sec=2000, request_max_memory_grant_percent=40, request_memory_grant_timeout_sec=1000, max_dop=6)USING [ReportQueries] GO Cách 2: Thực giao diện Bước 1: Vào Resource Governor -> Resource Pool -> System Resource Pool -> click chuột phải vào FinanceApp chọn New Workload Group Bước 2: Tại bảng Wordload Group for resource pool default thêm wordload group giá trị tương ứng 3 Creating classifier function Cách 1: Thực câu truy vấn CREATE FUNCTION Resourcegclassifier() RETURNSSYSNAME WITHSCHEMABINDING AS BEGIN DECLARE @WLGRP ASSYSNAME IF(Host_name()='TBSClient') SET @WLGRP ='ReportQueriesWG' ELSEIF (Host_name()='TBSSQL') SET @WLGRP ='ExcelQueries' ELSE SET @WLGRP ='default' RETURN @WLGRP END GO Cách 2: Thực giao diện Bước 1: Vào Resource Governor -> Resource Pool - > System Resource Pool -> click chuột phải vào FinanceApp chọn Properties Bước 2: Tại button classifier function chọn [dbo] [Resourcegclassifie] click [OK] 4 Activating and deactivating Resource Governor a) Activating Resource Governor Cách 1: Thực câu truy vấn Enable Resource Governor ALTER RESOURCEGOVERNOR RECONFIGURE; GO Cách 2: Thực giao diện Bước 1: Vào Resource Governor -> click chuột phải chọn Enable b) Deactivating Resource Governor Cách 1: Thực câu truy vấn -Disable Resource Governor ALTER RESOURCE GOVERNOR Disable; GO Cách 2: Thực giao diện Bước 1: Vào Resource Governor -> click chuột phải chọn Disable Kết luận: Sử dụng Resource Governor giúp giới hạn tài nguyê, giảm thiểu lãng phí, phân vùng sử dụng hợp lý tài nguyên CPU memory Tài liệu tham khảo: SQL.Server.2008.For.Dummies, Google, Youtube ... cho nhóm khối lượng cơng việc Ví dụ: CREATE Workload GROUP SSMSworkload WITH ( IMPORTANCE = MEDIUM) USING SSMSpool Bạn sửa đổi nhóm khối lượng cơng việc cách sử dụng khối lượng cơng việc ALTER Lệnh... phản ánh tầm quan trọng tương đối nhóm khối lượng cơng việc, có giá trị LOW | MEDIUM | HIGH Resource Governor sử dụng giá trị phân bổ nguồn lực nhóm cơng việc khác cách sử dụng tài nguyên cạnh tranh... workload groups SQL Server 2008 kèm cấu hình sẵn với hai nhóm khối lượng cơng việc, nội mặc định Những nhóm khối lượng cơng việc sử dụng nguồn tài nguyên tạo Tạo nhóm khối lượng công việc cách