本系列文章分两部分,本文是第二部分(第一部分参见:你的数据有多干净?)。我们将以测试体验的方式了解微软SQL Server提供的数据分析工具。 其它一些外部分析工具具有更丰富的功能,但是SQL Server授权允许你免费就可以使用这款低调的分析工具。 接下来让我们通过分析“AdventureWorksLT ”数据库中的一些数据来了解这款工具。
在此之前,你需要先安装好SQL Server集成服务,以及与SQL Server捆绑的Visual Studio精简版。在SQL Server 2012中,叫做“SQL Server Data Tools”;而在SQL Server 2008……
我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。
我原创,你原创,我们的内容世界才会更加精彩!
【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】
微信公众号
TechTarget
官方微博
TechTarget中国
本系列文章分两部分,本文是第二部分(第一部分参见:你的数据有多干净?)。我们将以测试体验的方式了解微软SQL Server提供的数据分析工具。
其它一些外部分析工具具有更丰富的功能,但是SQL Server授权允许你免费就可以使用这款低调的分析工具。
接下来让我们通过分析“AdventureWorksLT ”数据库中的一些数据来了解这款工具。
在此之前,你需要先安装好SQL Server集成服务,以及与SQL Server捆绑的Visual Studio精简版。在SQL Server 2012中,叫做“SQL Server Data Tools”;而在SQL Server 2008中,名称叫做“Business Intelligence Development Studio”。
如果你缺少这些组件,你可以运行SQL Server安装程序并勾选相关组件,操作很简单。
配置分析工具
不管你启动哪个Visual Studio工作环境,都要创建一个集成服务项目。然后,从SSIS工具箱中拖拽一个数据分析任务到设计面板上,然后双击开始配置。
配置结果信息存储在XML文件中,所以需要指定保存文件的名称和路径。
点击目标旁边的空白框,会出现一个箭头。
点击箭头,然后点击“New File connection”。
在结果框中,指定路径和文件名(包括.xml后缀)。
点击“确定”按钮,然后点击“Quick Profile”按钮。
点击“ADO.NET Connection”旁边的“新建”按钮。
在出现的对话框中,指定SQL Server和托管待分析数据的数据库(我使用的是“AdventureWorksLT2012 ”数据库),然后点击“确定”按钮。
点击表或视图下拉框,选择待分析数据(我选用的是“SalesLT.Product”)。
保留默认勾选的复选框,然后点击“确定”按钮。确定后就会回到主设计界面。
最后,按“F5”就可以开始分析了。
分析成功,在SQL Server 2008中会有一个绿色小框来显示,在SQL Server 2012中是个绿色小勾。如果你看到红色小框或者红叉,那么可以在“Progress ”标签页找到哪里出错了。
查看结果
假设你看到的是绿色(在集成服务中每个人都喜欢这个颜色),那么接下来启动“Data Profile Viewer”应用程序。在开始菜单中,它在“Microsoft SQL Server XXXX”文件夹的集成服务子文件夹下。
在查看器中,点击“打开”按钮,找到你之前配置的xml文件。你现在可以看到分析结果了。
“adventureWorks”库中的数据本来是干干净净的,所以我做了一些修改,你自己直接做的话看到的分析结果会不一样。
在查看器左侧面板中,你可以看到我们选择的表,它下面是数据分析的五个不同方面(也就是我们配置任务时默认选中的五项)。
点击“Candidate Key Profiles ”,就会在右侧面板中显示结果。
该信息展示了值的唯一性,你可以看看我的数据(修改过的),“名称”列包含的数据不是百分之百唯一的。
我可以点击“名称”列来查看更多,界面中“ Key Violations ”部分下面会显示更多信息。
错误的产品是“HL Road Frame – Black, 58”,问题是有两行有相同的名称(产品名称通常应该是唯一的)。
在“ Key Violations ”中的问题产品上点击,就会显示出需要关注的行。
在左侧面板中,点击“Column Length Distribution Profiles”。
功能正如其名,这个页面会分析每个列值的长度。
我这里显示的结果,“颜色”列包含列最小长度是2。
就像我们前面例子中所做的那样,我们可以向下钻取,我可以看到那些值的分布,进一步钻取我可以看到脏数据对应的实际行。
其它类型的分析操作都是类似的。
“Column NULL Ratio Profiles”显示了某一列中“NULL”值的百分比。
如果你有些列实际上不允许为“NULL”,例如“Product Name”,那么这个功能就非常有用。
“Column Statistics Profiles ”显示了日期和数值的最小值、最大值、平均值以及标准偏差。对于识别“327岁的员工”与“价格为负数的产品”这类不合理数据非常有帮助。
“Column Value Distribution Profiles ”显示某一列中有多少不同的值。这对于处理像“性别”这种列是很有用的,你可能预期该列只有两个不同值,但是却找到了15个,很容易发现问题。
还有另外两个分析功能也是可用的,不过默认没有启用。
其中一个就是“Functional Dependency Profile ”,它可以找到那些依赖于其它列值得列。
这一条功能对于检查地址信息时很有用;例如,我们希望相同城市的地址共用相同的邮政编码。
总结
该分析工具的局限性在于,源数据必须存储在SQL Server数据库中。例如,如果你希望分析存储在平面文件中的数据,那么你必须先把数据导入到SQL Server数据库中。
此外,该分析工具不支持创建额外的定制分析功能实现扩展。你看到的所有功能就是它能提供的所有功能。
局限性且放一旁,SQL Server附带提供的这款工具为那些希望得到并能快速运行数据分析的人提供了很好的起点。
作者
相关推荐
-
微软发布Linux SQL Server预览版 不只推广新特性
微软最近发布了SQL Server 2016 SP1,它为用户提供了在Linux系统上可用的SQL Server。微软这么做是为了扩大SQL Server的用户群,推广SQL Server的新特性。
-
Collaborate 2015:当BI遭遇物联网
作为GE全球研究院的首席架构师,Shyam Nath最近一直在关注物联网技术与传统商业智能(BI)如何结合。
-
管理Azure SQL数据库的授权安全性
本文深入介绍了一些支持细粒度控制数据访问的Azure SQL数据库授权方法,它们最多可以深入到控制各个数据库对象和语句类型。
-
微软宣布下一代数据库产品计划 云成为重中之重
微软数据平台副总裁T.K. Ranga Rengarajan本周在西雅图举行的PASS(SQL Server专家协会)峰会2014上介绍了最新的SQL Server数据库进展。