你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
快速入门:使用 Azure 门户创建专用 SQL 池工作负载分类器
在本快速入门中,你将创建一个工作负载分类器,用于将查询分配到工作负载组。 该分类器将 ELTLogin
SQL 用户的请求分配到 DataLoads
工作负载组。 按照快速入门:配置工作负载隔离教程创建 DataLoads
工作负载组。 本教程将使用 WLM_LABEL 选项创建工作负载分类器,这样有助于对请求进一步进行正确的分类。 该分类器还会将 HIGH
工作负载重要性分配到这些请求。
如果还没有 Azure 订阅,可以在开始前创建一个免费 Azure 帐户。
登录到 Azure 门户
登录 Azure 门户。
注意
在 Azure Synapse Analytics 中创建专用 SQL 池实例可能会产生一个新的可计费服务。 有关详细信息,请参阅 Azure Synapse Analytics 定价。
先决条件
本快速入门假定你已拥有具有 CONTROL DATABASE 权限的专用 SQL 池实例。 如果需要创建一个 SQL 池,请参考创建和连接 - 门户创建名为 mySampleDataWarehouse 的专用 SQL 池。
存在工作负载组 DataLoads
。 请参阅快速入门:配置工作负载隔离教程以创建工作负载组。
重要
专用 SQL 池必须联机才能配置工作负载管理。
创建 ELTLogin 的登录名
使用 CREATE LOGIN 在 master
数据库中为 ELTLogin
创建 SQL Server 身份验证登录名。
IF NOT EXISTS (SELECT * FROM sys.sql_logins WHERE name = 'ELTLogin')
BEGIN
CREATE LOGIN [ELTLogin] WITH PASSWORD='<strongpassword>'
END
;
创建用户并授予权限
创建登录名后,需要在数据库中创建一个用户。 使用 CREATE USER 在 mySampleDataWarehouse 中创建 SQL 用户 ELTRole
。 由于我们将在本教程中测试分类,因此请授予对 mySampleDataWarehouse 的 ELTLogin
权限 。
IF NOT EXISTS (SELECT * FROM sys.database_principals WHERE name = 'ELTLogin')
BEGIN
CREATE USER [ELTLogin] FOR LOGIN [ELTLogin]
GRANT CONTROL ON DATABASE::mySampleDataWarehouse TO ELTLogin
END
;
配置工作负载分类
分类允许你基于一组规则将请求路由到工作负载组。 在快速入门:配置工作负载隔离教程中,我们已创建 DataLoads
工作负载组。 现在,你将创建一个工作负载分类器,用于将查询路由到 DataLoads
工作负载组。
导航到 mySampleDataWarehouse 专用 SQL 池页面。
选择“工作负载管理”。
选择
DataLoads
工作负载组右侧的“设置和分类器”。选择“分类器”列下的“未配置”。
选择“+ 添加分类器”。
在“名称”中输入
ELTLoginDataLoads
。在“成员”中输入
ELTLogin
。为“请求重要性”选择
High
。 这是可选字段,默认设置为一般重要性 。在“标签”中输入
fact_loads
。选择“添加” 。
选择“保存”。
验证并测试分类
检查 sys.workload_management_workload_classifiers 目录视图,验证是否存在 ELTLoginDataLoads
分类器。
SELECT * FROM sys.workload_management_workload_classifiers WHERE name = 'ELTLoginDataLoads'
检查 sys.workload_management_workload_classifier_details 目录视图,验证分类器详细信息。
SELECT c.[name], c.group_name, c.importance, cd.classifier_type, cd.classifier_value
FROM sys.workload_management_workload_classifiers c
JOIN sys.workload_management_workload_classifier_details cd
ON cd.classifier_id = c.classifier_id
WHERE c.name = 'ELTLoginDataLoads'
运行以下语句以测试分类。 确保以 ELTLogin
身份连接并在查询中使用 Label
。
CREATE TABLE factstaging (ColA int)
INSERT INTO factstaging VALUES(0)
INSERT INTO factstaging VALUES(1)
INSERT INTO factstaging VALUES(2)
GO
CREATE TABLE testclassifierfact WITH (DISTRIBUTION = ROUND_ROBIN)
AS
SELECT * FROM factstaging
OPTION (LABEL='fact_loads')
使用 ELTLoginDataLoads
工作负载分类器验证已分类到 DataLoads
工作负载组的 CREATE TABLE
语句。
SELECT TOP 1 request_id, classifier_name, group_name, resource_allocation_percentage, submit_time, [status], [label], command
FROM sys.dm_pdw_exec_requests
WHERE [label] = 'fact_loads'
ORDER BY submit_time DESC
清理资源
若要删除在本教程中创建的 ELTLoginDataLoads
工作负载分类器,请执行以下步骤:
单击
DataLoads
工作负载组右侧的“1 分类器” 。单击“分类器” 。
单击
ELTLoginDataLoads
工作负载分类器右侧的...
。单击“删除” 。
单击“保存” 。
我们会针对专用 SQL 池中存储的数据,按数据仓库单位收费。 这些计算和存储资源是分开计费的。
- 如果想要将数据保留在存储中,可以在不使用专用 SQL 池时暂停计算。 如果暂停计算资源,则你只需支付数据存储费用。 准备好处理数据时,可以恢复计算。
- 若要避免将来产生费用,可以删除该专用 SQL 池。
遵循以下步骤清理资源。
登录到 Azure 门户,选择你的专用 SQL 池。
若要暂停计算,请选择“暂停” 按钮。 暂停专用 SQL 池后,会看到“启动”按钮。 若要恢复计算,请选择“启动”。
若要删除专用 SQL 池以免产生计算或存储费用,请选择“删除”。
后续步骤
使用 Azure 门户监视指标监视工作负载。 有关详细信息,请参阅管理和监视工作负载管理。