SQL Server分析服务性能优化浅析
来源:asp之家 发布时间:2010-01-16 13:30:00
在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
22. 选择刚刚输入的查询,然后单击执行。
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 窗口
猜你喜欢
- jenkins是什么? Jenkins是一个开
- 为什么要讲 __repr__在 Python 中,直接 print 一个实例对象,默认是输出这个对象由哪个类创建的对象,以及在内存中的地址(
- next()方法当一个文件被用作迭代器,典型例子是在一个循环中被使用,next()方法被反复调用。此方法返回下一个输入行,或引发
- 一、HTTP协议的网络服务HTTP协议是基于TCP/IP协议栈的,并且它也是一个面向普通文本的协议。只要搞清楚了HTTP请求的报文(报文的头
- <html> <head> <title>JavaScript Data Access Test<
- 其实很简单,一般的数组去重可以直接用 new Set() 方法即可,但是数组对象的话,比较复杂,不能直接用,我们可以采取间接的方法来去重un
- 窗口标题pygame.display.set_caption(title, icontitle=None)'''•
- 导语:谷歌浏览器中有个很有名的彩蛋:当你网络出现问题时,就会出现一个“小恐龙游戏”。🦖相信很多人都玩过 chrome 上提供的恐龙跑跑游戏,
- 假如有一个数据表A:id name title
- 本文实例讲述了Python strip()函数的正则表达式实现方法。分享给大家供大家参考,具体如下:题目如下:写一个函数,它接受一个字符串,
- MySQL变量包括系统变量和系统变量。这次的学习任务是用户自定义变量。用户变量主要包括局部变量和会话变量。用户自定义变量的声明方法形如:@v
- 在使用Jupyter notebook时有这么一句代码start_frame = imread(“OwnCollection\vehicle
- Pandas是一个强大的数据处理库,它提供了高性能、易于使用的数据结构和数据分析工具。本文将介绍Pandas常用的数据结构和常用的数据分析技
- Pytorch调用forward()函数Module类是nn模块里提供的一个模型构造类,是所有神经网络模块的基类,我们可以继承它来定义我们想
- 这不是什么原创,是我跟据OReilly.JavaScript.The.Definitive.Guide.5th.Edition.Aug.20
- 本文实例讲述了Python3最长回文子串算法。分享给大家供大家参考,具体如下:1. 暴力法思路:对每一个子串判断是否回文class Solu
- for...[if]...构建List (List comprehension)1.简单的for...[if]...语句Python中,fo
- 描述 写出一个程序,接受一个由字母、数字和空格组成的字符串,和一个字母,然后输出输入字符串中该字母的出现次数。不区分大小写,字符串长度小于5
- 我的Python环境:3.7在Python类里声明一个装饰器,并在这个类里调用这个装饰器。代码如下:class Test():
- 有时候,我们需要替换指定标签外的内容,而保留标签里面的内容不替换。比如当我们要在浏览器中显示出编辑器显示的原始格式时、需要将普通换行符“\n