保护Analysis Services的安全


Analysis Services可以用多维数据结构和多维查询语言MDX快速访问数据。Analysis Services提供了根据数据仓库表格设计、创建和管理多维数据集的功能,是微软业务智能战略的基础。

  测试用户对 Analysis Services 数据库的访问权限

  1. 在对象资源管理器中,展开多维数据集,右键单击 Adventure Works Cube,然后单击浏览。

  2. 在 Adventure Works 多维数据集[浏览] 选项卡中,单击更改用户图标。

  3. 在安全上下文对话框中,单击角色,选择 VPSalesRole 角色,确认未选中其他角色,单击确定,然后单击确定更改安全上下文。

  请注意工具栏下方提示您使用的是 VPSalesRole 凭据的信息行。

  4. 在元数据窗格中,依次展开Measures | Internet Sales| Sales,将 Internet Sales – Sales Amount拖动到右侧的结果窗格中,然后将其放置到将汇总或明细字段拖至此处区域(也可以右键单击 Internet Sales – Sales Amount,然后单击添加到数据区域)。

  5. 在元数据窗格中,展开Sales Reason维度,将Sales Reason Type拖动到结果窗格中,然后将其放置到将行字段拖至此处区域(也可以右键单击Sales Reason Type属性,然后单击添加到行区域)。

  确认 VPSalesRole 角色可以查看Marketing、Promotion和Other销售原因类型的销售额。

  6. 右键单击结果区域,然后单击清除结果(也可以在工具栏中单击清除结果)从浏览器清除所有数据。

  7. 在元数据窗格中,依次展开Measures | Sales Quotas,右键单击Sales Amount Quota,然后单击添加到数据区域。

  8. 在元数据窗格中,展开Sales Territory维度,右键单击Sales Territory,然后单击添加到行区域。确认 VPSalesRole 角色可以查看所有区域的销售配额。

  9. 单击更改用户图标。

  10. 在安全上下文对话框中,在角色下拉列表中清除 VPSalesRole 角色,选择 EuroSalesMgrsRole,确认未选中其他角色,单击确定,然后单击确定关闭安全上下文对话框。

  请注意工具栏下方提示您使用的是 EuroSalesMgrsRole 凭据的信息行。

  11. 在元数据窗格中,依次展开Measures | Internet Sales| Sales,右键单击 Internet Sales – Sales Amount,然后单击添加到数据区域。

  12. 在元数据窗格中,展开Sales Reason维度,右键单击Sales Reason Type,然后单击添加到行区域。

  确认 EuroSalesMgrsRole 角色可以查看Marketing、Promotion销售原因类型的销售额,但不能查看Other销售原因类型的销售额。

  13. 在工具栏中,单击清除结果从浏览器清除所有数据。

  14. 在元数据窗格中,依次展开Measures | Sales Quotas,右键单击Sales Amount Quota,然后单击添加到数据区域。

  15. 在元数据窗格中,展开Sales Territory维度,右键单击Sales Territory,然后单击添加到行区域。

  确认 EuroSalesMgrsRole 角色可以查看欧洲市场的销售配额,但不能查看其他区域的销售配额。

  16. 保持多维数据集浏览器窗口打开,下一个练习还要使用此窗口。

  性能监视

  在此练习中,您将使用动态管理视图 (DMV) 监视 Analysis Services 的连接和资源统计信息。监视 Analysis Services 统计信息的功能可帮助您解决与 Analysis Services 相关的问题并优化 Analysis Services 性能。

  注意:您可以从 C:\SQLHOLS\Managing Analysis Services\Starter\Exercise3.txt 复制此练习中使用的脚本。每份脚本前面都带有注释,以标识和代码相关的过程和步骤

  查看 Analysis Services 连接和会话信息

  1. 在 SQL Server Management Studio中的文件菜单中,指向新建,然后单击Analysis Services MDX 查询(也可以在工具栏中单击新建查询)。

  2. 如果显示连接到 Analysis Services 对话框,请单击连接。

  3. 在工具栏中的可用数据库列表中,确保选中 Adventure Works OLAP 数据库。

  4. 键入下列命令并执行,然后滚动浏览结果,查看所有包含以 DISCOVER_ 开头的 TABLE_NAME 值的行。此查询为您提供可用的 DMV。


Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

-->  SELECT * FROM $SYSTEM.DBSCHEMA_TABLES

  ORDER BY TABLE_NAME
  注意:利用这些 DMV,从服务器检索性能统计信息的方式可以非常灵活。您可以编写自定义应用程序或使用 SQL Server Reporting Services 生成报告,收集并查看解决 Analysis Services 环境问题和优化该环境所需的信息。

  5. 在查询页中,使用以下命令替换现有查询,然后单击执行。


Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

-->  SELECT * FROM $SYSTEM.DISCOVER_CONNECTIONS
  6. 查看查询结果。调整左起第五列(CONNECTION_HOST_APPLICATION)的列宽,以查看每个连接的完整应用程序名称。请注意 SQL Server Management Studio 查询和 SQL Server Management Studio 的结果是有区分的。

  注意:CONNECTION_LAST_COMMAND_START_TIME、CONNECTION_LAST_COMMAND_END_TIME 和 CONNECTION_LAST_COMMAND_ELAPSED_TIME_MS 等值可帮助您找出运行时间长或有问题的查询。

  7. 关闭上一练习结束时保留为打开状态的 Adventure Works Cube[浏览]窗口。

  8. 在 MDXQuery1 选项卡中,重新执行步骤 5 的查询 (SELECT * FROM $SYSTEM.DISCOVER_CONNECTIONS),并注意 SQL Server Management Studio 连接不再呈示。记下当前 CONNECTION_ID 值。

  9. 最小化 SQL Server Management Studio。

  10. 单击开始|所有程序| Microsoft Office,然后单击 Microsoft Office Excel 2007。

  11. 在 Excel 功能区中,单击数据选项卡。

  12. 在数据选项卡中,在获取外部数据部分,单击自其他来源,然后单击来自分析服务。

  13. 在连接数据库服务器页中,在服务器名称框中键入 (local),然后单击下一步。

  14. 在选择数据库和表中,在选择数据库框中,选择 Adventure Works OLAP 数据库,单击 Adventure Works Cube,然后单击下一步。

  15. 在保存数据连接文件并完成页中,单击完成。

  16. 在导入数据页中,查看默认设置,然后单击确定。

  17. 在数据透视表字段列表中,在 Internet Sales下,展开Sales,然后选中 Internet Sales-Sales Amount复选框
18. 在数据透视表字段列表中,在Product下,选中Product Categories复选框。

  19. 最小化 Microsoft Office Excel?,然后最大化 SQL Server Management Studio。

  20. 在 MDXQuery1 选项卡中,重新执行步骤 5 的查询 (SELECT * FROM $SYSTEM.DISCOVER_CONNECTIONS),然后记录 Excel 创建的新连接的 CONNECTION_ID。

  21. 在现有查询下,键入以下查询。


Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

-->  SELECT

  session_connection_id

  , session_spid

  , session_user_name

  , session_last_command

  , session_start_time

  , session_cpu_time_ms

  , session_reads

  , session_writes

  , session_status

  , session_current_database

  , session_used_memory

  , session_start_time

  , session_elapsed_time_ms

  , session_last_command_start_time

  , session_last_command_end_time

  FROM $SYSTEM.DISCOVER_SESSIONS
  22. 选择刚刚输入的查询,然后单击执行。

  23. 查看 session_connection_id 与步骤 20 中记录的数字匹配的行的输出。请注意这些结果中包含用户名、上一命令和每个连接的 CPU 时间等有用诊断信息。

  注意:session_status 为 1 表示在报告运行时具有活动查询的会话。

  查看 Analysis Services 对象信息

  单击新建查询。

  24. 键入以下命令并执行,以查看数据库中每个对象的内存使用量。

  SELECT * FROM $SYSTEM.DISCOVER_OBJECT_MEMORY_USAGE

  25. 键入以下命令并执行,以查看数据库中每个对象的活动。

  SELECT * FROM $SYSTEM.DISCOVER_OBJECT_ACTIVITY

  26. 关闭 SQL Server Management Studio 和 Microsoft Office Excel 2007。请勿保存任何文件。

  27. 关闭 Hyper-V 窗口


« 
» 
快速导航

Copyright © 2016 phpStudy | 豫ICP备2021030365号-3