MSSQL Server分析服务性能优化浅析 |
在SQL Server数据库治理中,针对 综合服务Analysis Services 的性能优化必不可少,这里我们将学习到 使用DMV来进行Analysis Services 的优化 。 使用动态治理视图 (DMV) 监督 Analysis Services 的衔接和资源统计信息 。 Analysis Services 统计信息的 性能可协助您解决与 Analysis Services 有关的问题并优化 Analysis Services 性能 。 留神:您 可以从 C:\SQLHOLS\Managing Analysis Services\Starter\Exercise3.txt 复制此练习中 使用的脚本 。每份脚本前面都带有 诠释,以标识和代码 有关的过程和步骤 1. 在 SQL Server Management Studio中的文件菜单中,指向新建, 而后单击Analysis Services MDX 查问(也 可以在工具栏中单击新建 查问) 。 2. 假如显示衔接到 Analysis Services 对话框,请单击衔接 。 3. 在工具栏中的可用数据库列表中,确保选中 Adventure Works OLAP 数据库 。 4. 键入下列命令并执行, 而后滚动阅读 后果,查看全部包括以 DISCOVER_ 开头的 TABLE_NAME 值的行 。此 查问为您提供可用的 DMV 。 SELECT * FROM $SYSTEM.DBSCHEMA_TABLES ORDER BY TABLE_NAME 留神:利用这些 DMV,从服务器检索性能统计信息的 模式 可以十分灵便 。您 可以编写自定义 利用程序或 使用 SQL Server Reporting Services 生成报告,收集并查看解决 Analysis Services 环境问题和优化该环境所需的信息 。 5. 在 查问页中, 使用以下命令替换现有 查问, 而后单击执行 。 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. 在现有 查问下,键入以下 查问 。 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 23. 查看 session_connection_id 与步骤 20 中记录的数字匹配的行的输出 。请 留神这些 后果中包括消费者名、上一命令和每个衔接的 CPU 工夫等有用诊断信息 。 留神:session_status 为 1 示意在报告运行时 存在 运动 查问的会话 。 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 窗口 |