转:浅析基于微软SQL Server 2012 Parallel Data Warehouse的大数据解决方案
综述
随着越来越多的组织的数据从GB、TB级迈向PB级,标志着整个社会的信息化水平正在迈入新的时代 – 大数据时代。对海量数据的处理、分析能力,日益成为组织在这个时代决胜未来的关键因素,而基于大数据的应用,也在潜移默化地渗透到社会的方方面面,影响到每一个人的日常生活,人们日常生活中看到的电视节目、浏览的网页、接收到的广告,都将是基于大数据分析之后提供的有针对性的内容。
微软在大数据领域的战略重点,在于更好地帮助客户“消费”大数据,让所有的用户都能够从几乎任何规模任何类型的任何数据当中获得可以转化为业务执行的洞察力。基于这一战略,微软发布了新一代并行数据仓库一体机SQL Server Parallel Data Warehouse(简称PDW),提供大规模并行处理并具备灵活线性横向扩展能力的数据仓库平台,其主要新特性主要体现在以下3个方面:
- 为大数据而建: 通过Polybase这一数据处理的突破性技术统一查询结构化、半结构划和非结构化数据,帮助用户使用最熟悉的标准SQL语言即可轻松实现Hadoop表和关系型数据库表的关联查询。同时,由于目前大部分常用的商业智能分析工具都无法直接查询Hadoop, 而Polybase技术通过从数据库平台层面对Hadoop的集成,使用户可以采用熟悉的现有商业智能工具即可实现对大数据的灵活分析和展现。例如,用户可以利用熟悉的Microsoft Excel在同一表格中分析结构化和非结构化的数据。
- 新一代性能与规模:采用可更新的 xVelocity 聚集列存储技术,实现高至50倍的性能提升。基于大规模并行处理引擎技术,提供从几个TB到PB级数据的线性横向扩展能力。
- 最优化的软硬件价值:SQL Server 并行数据仓库一体机具备预装的硬件和软件,集成了目前微软最新一代的软件创新技术如xVelocity 列存储、Polybase、Windows Server 2012 Hyper-V虚拟化技术,Storage Spaces存储技术等驱动精简高效的硬件架构,提供性价比优势。
本文将深入介绍SQL Server 2012 Parallel Data Warehouse的Polybase技术,并结合具体业务场景示例讲解Polybase技术如何为业务人员提供简单易用的大数据解决方案。
总体来讲,Polybase技术包含以下具体功能:
- 用一个外部表来定义Hadoop中数据的结构。
- 通过运行SQL语句实现对Hadoop数据的查询。
- 通过PDW可关联查询Hadoop数据与关系型数据库PDW中的表,实现Hadoop与PDW数据的整合。
- 通过运行SQL命令来查询Hadoop并将结果集保存到PDW的表中,轻松实现将Hadoop数据导入到PDW。
- Hadoop也可以作为PDW的一个在线数据归档系统,通过运行简单SQL命令即可将PDW中的数据导出到Hadoop,并随时通过PDW对归档在Hadoop中的数据进行在线查询。
下面我们通过一个示例来进一步说明上述Polybase技术的应用场景及使用方法,在这个示例当中我们将基于与美国Sandy飓风相关的一些数据,通过对这些数据的分析来协助决策派往美国各州救援资源的调配计划。
首先,在PDW关系型数据库中可以创建一张表[dbo].[nws_ffg7],存储来自于美国海洋气象局National Oceanic and Atmospheric Administration(简称NOAA)的数据。与SQL Server 2012的体验相同,我们可以通过标准的SQL Server Data Tools工具来连接PDW,如下图所示。基于[dbo].[nws_ffg7]表可以创建一个视图CREATE VIEW flashflood AS SELECT * FROM [dbo].[nws_ffg7]。通过查询flashflood视图返回的结果集可以看到,这张表里面主要存储美国各个州的名称、地理属性信息如经度、纬度,以及各州在未来多个时间段的降雨量预测信息,如未来1小时(HR1列)、3小时(HR3列)、6小时(HR6列)等等。
然后在Hadoop环境当中,我们将来自于另外一个数据源 – 美国人口调查局US Census Bureau的数据导入到Hadoop环境中,这个数据主要包括美国各州的具体人口分布信息。
为了便于进一步深入分析各州的降雨量预测与人口分布情况的关联,我们需要将Hadoop中的数据与PDW的数据进行联合查询及分析。如下图所示,我们首先需要在PDW中创建一个外部表External Table,将这个外部表的数据源地址指向Hadoop集群中存放人口分布数据文件的路径,并定义一些相关的元数据信息。外部表在PDW中只存储关于Hadoop中数据的一些元数据信息,并不会物理保存Hadoop的数据。
外部表创建完毕后,为了方便后续查询,我们可以基于这个外部表创建一个视图Create View census AS SELECT * FROM [dbo].[census_external]。通过直接运行标准的SELECT语句即可查询Hadoop中的人口分布数据信息,如下图所示。我们从返回的结果集可以看到,Hadoop中的数据包括美国各州的人口数量、家庭数量、以及超过69岁以上的人口(Pop_Age_Over_69列)等信息,如下图红色圈出。
我们也可以运行标准的SQL语句将指向Hadoop数据的外部表与PDW本身存储的数据表做关联查询,如把census视图和flashflood视图用keyID键关联起来,查询的结果集由PDW引擎统一返回给客户端。
下面我们基于常用的Microsoft Excel作为商业智能分析客户端,利用Excel的PowerPivot和PowerView功能来进行一些数据分析和决策支持。首先可以打开Excel 2013的PowerPivot管理界面,选择从SQL Server数据源导入数据。
在弹出的窗口中填入PDW数据库的连接信息,选择导入刚才创建的两个视图的数据。
当数据分析业务人员在美国Sandy飓风来袭之前分析这些数据时,就可能需要基于美国各州的预测降雨量并结合人口分布情况,来计划派往各州的救援部队资源的调配。例如,人口年龄大于69岁以上分布较多的州就可能需要调配更多的救援来协助当地人口的撤离工作。
下图是一张业务人员通过Excel 2013的PowerView制作的报表,报表中集成了Hadoop中的人口分布数据与PDW中的各州降雨量预测数据,以图形化的方式清晰展现出Sandy飓风即将袭击范围内各州超过69岁的人口分布状况并结合未来6小时的降雨量预测。
通过点击其中某个州,还可以进一步下钻分析各州内部的具体人口分布情况及降雨量。
作为业务人员可以迅速通过以上报表直观化的数据分析来支持派往各州救援部队的资源分配计划。
总结
在大数据日益增长的时代,越来越多的企业也在逐渐部署基于Hadoop框架的分布式文件系统存储来自于各方面的数据。大数据解决方案不仅只是数据存储量到达TB/PB级别,如何能够方便快捷的消费这些数据、将这些数据综合在一起进行及时的分析、监控、挖掘,从而发挥这些数据的价值、支持未来的决策将是大数据解决方案成功与否的一个重要方面。
数据消费的用户大部分其实是业务人员,而并非IT技术人员, 能够使业务人员直接消费Hadoop当中的数据也就是Polybase技术的设计初衷。Parallel Data Warehouse的Polybase技术作为关联Hadoop与传统关系型数据库的一个桥梁 (如下图所示),从底层平台层面使两边的数据能够互联互通,为业务人员提供了自助分析的便利,并且集成来自不同数据源包括Hadoop数据,业务或技术人员都无需学习编写复杂的Map Reduce脚本,只需要使用最熟悉的标准SQL语言或者是商业智能分析工具如Excel, 即可实现对大数据的灵活分析和展现,方便快捷地响应业务需求并支持业务决策。
此外,Polybase技术也大大提高了IT技术人员实现大数据解决方案的效率,降低工作量成本。在传统基于Hadoop的技术架构当中,IT技术人员往往需要编写很多后台作业及脚本实现Hadoop与关系型数据库之间的数据导入导出,而且后台的作业还经常有可能随着前端业务需求的变化需要不断的更新,维护的人力成本也很高。Polybase技术通过底层自动调用标准接口的方式,可以通过简单的SQL命令随时实现Hadoop与关系型数据库之间的数据导入导出,结合业界标准的前端商业智能分析及报表工具,可以帮助用户快速搭建并实现一套完整的端到端的自助式大数据解决方案。
微软并行数据仓库客户案例分享:国家审计总署
审计本质上是一个国家经济社会运行的“免疫系统”,财政资金运用到哪里,审计就跟进到哪里。……国家审计的“免疫功能”也需要持续进化和演变,走在信息化的前沿。在中国经济高速发展的过程中,随着生产自动化、电子商务的普及、网络财务软件的广泛使用、以及支付手段的多样化,审计对象越来越呈现出大数据的特征:海量规模、动态高速增长、多样复杂性。
现在的审计业务,面临的数据总量已经从以前的MB-GB级,上升为TB级,甚至PB级,并且数据查询分析的复杂性也不断在提高。同时,审计需求本身还具有随机性和突发性,审计人员需要根据判断进行海量数据的查询、汇总和关联分析,这就需要针对大数据的统一调度和并行访问,并需要多种计算模式和分析方法,同时满足宏观或特定审计目标。与此同时,更加无法忽视的是“时效性”的要求,审计署的处理效率受到更为严苛的挑战。
如何以更为容易部署的方式建立分布式存储和计算集群,在统一的架构下实现对各种类型和各种规模数据的管理和并行处理,并能够根据需求实现缩放和扩展?如何支持TB/PB级数据的高效加载,满足多源异构数据的即席查询、联合查询和复杂关联处理,对大规模审计数据进行快速、深入的分析和挖掘?
审计署选择了基于微软SQL Server并行数据仓库的大数据云平台方案,用于解决海量数据大规模并行分析处理、分布式存储及管理问题。
微软PDW平台在保持与审计署现有数据平台保持兼容的前提下,提供对数据进行全方位管理、高性能处理的能力。同时基于上述审计业务的随机性、突发性、分析多样性等特征,PDW平台在数据存储和处理架构上面兼具了资源池共享、按需可扩展、高可用保障、统一运维监控等典型云计算平台特性。
注: 本文中所引用的Polybase示例来自于Insight through Integration - A demonstration of integrating data from Hadoop and SQL Server Parallel Data Warehouse to visualize demographics for Hurricane Sandy, by Murshed Zama. Murshed Zaman现任职微软SQL产品组 Customer Advisory Team客户咨询部高级项目经理,专注于SQL Server Parallel Data Warehouse, ColumnStore, Hadoop, Hive and IAAS等技术。 12年以上包含多个行业如电信、零售、网络问题、供应链管理等的数据仓库经验。
原文来自于:http://www.infoq.com/cn/articles/pdw-polybase
转:浅析基于微软SQL Server 2012 Parallel Data Warehouse的大数据解决方案的更多相关文章
- 浅析基于微软SQL Server 2012 Parallel Data Warehouse的大数据解决方案
作者 王枫发布于2014年2月19日 综述 随着越来越多的组织的数据从GB.TB级迈向PB级,标志着整个社会的信息化水平正在迈入新的时代 – 大数据时代.对海量数据的处理.分析能力,日益成为组织在这个 ...
- sql server 2012 打开提示无效的许可证数据。需要重新安装
重装什么的没有用,需要下载Visual Studio 2010 Isolated Shell (zh-CN) ,重新安装后就好了 下载地址 Visual Studio 2010 Isola ...
- SQL server 2012 数据库日志缓存过大
由于我公司的每日数据录入量较多,数据库日志与日俱增,前两天就出现了,因为数据库日志太大导致了 服务器磁盘空间不足,于是我上网查了一下,终于找到了一个数据库日志文件压缩的方法 原文出处:http://b ...
- sql server 2012 数据库日志文件过大,怎么缩小?
最近发现网站不能访问,原因数据库服务器磁盘剩余空间没了.再细查发现日志文件占用了70%,收缩日志文件失败. 在网上查找原因,是没有备份不能收缩日志文件. 临时解决的方式: 备份事务日志,再收缩日志文件 ...
- 微软BI 之SSAS 系列 - 在 SQL Server 2012 下查看 SSAS 分析服务的模型以及几个模型的简单介绍
在SSDT中部署一个 SSAS 项目到本地服务器上出现错误. You cannot deploy the model because the localhost deployment server i ...
- 基于iSCSI的SQL Server 2012群集测试(四)--模拟群集故障转移
6.模拟群集故障转移 6.1 模拟手动故障转移(1+1) 模拟手动故障转移的目的有以下几点: 测试群集是否能正常故障转移 测试修改端口是否能同步到备节点 测试禁用full-text和Browser服务 ...
- 基于iSCSI的SQL Server 2012群集测试(一)--SQL群集安装
一.测试需求介绍与准备 公司计划服务器迁移过程计划同时上线SQL Server2012,引入SQL Server2012群集提高高可用性,需要对SQL Server2012群集技术进行研究.测试,确保 ...
- 微软推出的免费新书《Introducing Microsoft SQL Server 2012》
微软推出的免费新书<Introducing Microsoft SQL Server 2012>,该书详细介绍微软SQL 2012数据库服务最新功能以及功能应用和使用技巧. 该书适合SQL ...
- 微软BI 之SSAS 系列 - 在SQL Server 2012 中开发 Analysis Services Multidimensional Project
SQL Server 2012 中提供了开发 SSAS 项目的两种模型,一种是新增加的 Tabular Model 表格模型,另一种就是原始的 Multidimensional Model 多维模型. ...
随机推荐
- 高性能web系统的架构和系统优化
07年毕业一直都在软件公司,14年来到一个互联网公司,给我的感受,区别主要在于: 软件公司需求相对稳定,能够按照计划按部就班的去实施,互联网公司需求相对来说不稳定,上线比较着急,大部分都是小迭代更新, ...
- C#中枚举类型和int类型的转化
先定义一个枚举类型 , 初中, 高中,大学 }; int ->enum int d=2; PropertyType a=(PropertyType)d; int <- enum Prop ...
- X Window、GNOME和KDE之间的关系
原文地址:http://blog.csdn.net/jincf2011/article/details/6362923 X Window, 即X Windows图形用户接口,它并不是一个软件,而是一个 ...
- wxPython学习笔记(二)
如何创建和使用一个应用程序对象? 任何wxPython应用程序都需要一个应用程序对象.这个应用程序对象必须是类wx.App或其定制的子类的一个实例.应用程序对象的主要目的是管理幕后的主事件循环. 父类 ...
- Object -C NSNumber -- 笔记
// // main.m // NSNumber // // Created by facial on 24/8/15. // Copyright (c) 2015 facial_huo. A ...
- Cocoa Touch 层
Cocoa Touch层包含创建 iOS应用程序所需的关键框架.上至实现应用程序可视界面,下至与高级系统服务交互,都需要该层技术提供底层基础.在开发应用程序的时候,请尽可能不要使用更底层的框架,尽可能 ...
- Windows消息传递机制具体解释
林炳文Evankaka原创作品.转载请注明出处http://blog.csdn.net/evankaka Windows是一个消息(Message)驱动系统.Windows的消息提供了应用程序之间.应 ...
- root用户改动普通用户文件
首先使用别的用户登录入LINUX系统,切换成root用户.进入到须要改动的用户主文件夹,对该用户文件夹下的文件进行改动
- python使用正則表達式
python中使用正則表達式 1. 匹配字符 正則表達式中的元字符有 . ^ $ * + ? { } [ ] \ | ( ) 匹配字符用的模式有 \d 匹配随意数字 \D 匹配随意非 ...
- Linux 下安装包制作
一 Linux安装文件 Linux常见的安装为tar,zip,gz,rpm,deb,bin等.我们可以简单的分为三类, 第一:打包或压缩文件tar,zip,gz等,一般解压后即可,或者解压后运行sh文 ...