HDInsight-Hadoop现实(两)传感器数据分析
HDInsight-Hadoop现实(两)传感器数据分析
简要
现在,含传感器非常个人和商用设备收集来自物理世界的信息。例如。大多数手机都有 GPS。健身器材可以跟踪的步骤,你去数,恒温控制器可以监视温度架构。
在本教程,您将学习如何 HDInsight 加热处理、通风和空调 (HVAC) 由系统产生的历史数据,到不能有效地识别保持系统的设定温度。您将学习如何:
- 家/地区的建筑的温度数据
- 分析数据以确定哪些建筑在保持适宜温度方面存在问题(实际记录的温度对照恒温控制器设定的温度)
- 判断建筑中使用的 HVAC 系统的可靠性
- 在 Microsoft Excel 中可视化数据
先决条件
已使用群集配置你完毕脚本和查询所需的全部内容。要将已分析的数据导出到 Microsoft Excel。你必须满足下面要求:
- 必须安装了 Microsoft Excel 2013。
- 你必须具有 栋大型建筑的传感器数据
wasb://yzphadoop01@yzpcloud.blob.core.chinacloudapi.cn/HdiSamples/SensorSampleData/hvac/
20 栋建筑的元数据
wasb://yzphadoop01@yzpcloud.blob.core.chinacloudapi.cn/HdiSamples/SensorSampleData/building/
正在创建配置单元表,以查询 WindowsAzure Blob 存储中的传感器数据
下面配置单元语句将创建外部表。同意配置单元查询存储在 Azure Blob 存储的数据。外部表以初始文件格式保留数据,同一时候同意配置单元针对文件内的数据运行查询。在这样的情况下。数据作为逗号分隔值 (CSV) 存储在文件里。
下面配置单元语句通过描写叙述文件内字段、文件间定界符(逗号)和 Azure Blob 存储中文件的位置创建了两个名为 hvac 和 building 的新表。
由此,你能够创建针对自身数据的配置单元查询。
Create hvac table:
DROP TABLE IFEXISTS hvac;
--create the hvactable on comma-separated sensor data
CREATE EXTERNALTABLE hvac(date STRING, time STRING, targettemp BIGINT,
actualtempBIGINT, system BIGINT, systemage BIGINT, buildingid BIGINT)
ROW FORMATDELIMITED FIELDS TERMINATED BY ','
STORED ASTEXTFILE LOCATION'wasb://yzphadoop01@yzpcloud.blob.core.chinacloudapi.cn/HdiSamples/SensorSampleData/hvac/';
Create building table:
DROP TABLE IF EXISTS building;
--create the building table on comma-separated building data
CREATE EXTERNAL TABLE building(buildingid BIGINT,buildingmgr STRING,
buildingageBIGINT, hvacproduct STRING, country STRING)
ROW FORMAT DELIMITED FIELDS TERMINATED BY ','
STORED AS TEXTFILE LOCATION'wasb://yzphadoop01@yzpcloud.blob.core.chinacloudapi.cn/HdiSamples/SensorSampleData/building/';
正在创建针对传感器数据的配置单元查询
下面配置单元查询创建了来自 HVAC 数据的一些温度,从而查找温度变化(參见下面查询)。尤其是查找恒温控制器设定的目标温度与记录温度之间的区别。假设区别大于 5,则 temp_diff 列将设为“热”或“冷”,且 extremetemp 设为 1;否则,temp_diff 将设为“正常”且 extremetemp 设为 0。
查询会将结果写入两个新表:hvac_temperatures 和 hvac_building(參见下面“创建表”语句)。
hvac_building 表将包括管理者、楼龄和建筑的 HVAC 系统等建筑信息,也将用于通过与 hvac_temperatures 表联接来查找建筑的温度数据。
Create hvac_temperatures table:
DROP TABLE IFEXISTS hvac_temperatures;
--create thehvac_temperatures table by selecting from the hvac table
CREATE TABLEhvac_temperatures AS
SELECT *,targettemp - actualtemp AS temp_diff,
IF((targettemp - actualtemp)> 5, 'COLD',
IF((targettemp - actualtemp)< -5, 'HOT', 'NORMAL')) AS temprange,
IF((targettemp - actualtemp)> 5, '1', IF((targettemp - actualtemp) < -5, '1', 0)) AS extremetemp
FROM hvac;
Create hvac_building table:
DROP TABLE IFEXISTS hvac_building;
--create thehvac_building table by joining the building table and the hvac_temperaturestable
CREATE TABLEhvac_building AS
SELECT h.*,b.country, b.hvacproduct, b.buildingage, b.buildingmgr
FROM building bJOIN hvac_temperatures h ON b.buildingid = h.buildingid;
正在运行查询
选择提交以创建“配置单元”表,并运行分析存储在 Windows AzureBlob 存储的传感器数据的查询。提交作业后,可通过选择下方查看具体信息来查看具体信息。
页底的作业状态变为已完毕后,继续运行将数据载入到 Excel。
DROP TABLE IF EXISTS hvac;
--create the hvac table on comma-separated sensor data
CREATE EXTERNAL TABLE hvac(date STRING, time STRING,targettemp BIGINT,
actualtempBIGINT, system BIGINT, systemage BIGINT, buildingid BIGINT)
ROW FORMAT DELIMITED FIELDS TERMINATED BY ','
STORED AS TEXTFILE LOCATION'wasb://yzphadoop01@yzpcloud.blob.core.chinacloudapi.cn/HdiSamples/SensorSampleData/hvac/';
DROP TABLE IF EXISTS building;
--create the building table on comma-separatedbuilding data
CREATE EXTERNAL TABLE building(buildingid BIGINT,buildingmgr STRING,
buildingageBIGINT, hvacproduct STRING, country STRING)
ROW FORMAT DELIMITED FIELDS TERMINATED BY ','
STORED AS TEXTFILE LOCATION'wasb://yzphadoop01@yzpcloud.blob.core.chinacloudapi.cn/HdiSamples/SensorSampleData/building/';
DROP TABLE IF EXISTS hvac_temperatures;
--create the hvac_temperatures table by selecting fromthe hvac table
CREATE TABLE hvac_temperatures AS
SELECT *, targettemp - actualtemp AS temp_diff,
IF((targettemp- actualtemp) > 5, 'COLD',
IF((targettemp- actualtemp) < -5, 'HOT', 'NORMAL')) AS temprange,
IF((targettemp- actualtemp) > 5, '1', IF((targettemp - actualtemp) < -5, '1', 0)) ASextremetemp
FROM hvac;
DROP TABLE IF EXISTS hvac_building;
--create the hvac_building table by joining thebuilding table and the hvac_temperatures table
CREATE TABLE hvac_building AS
SELECT h.*, b.country, b.hvacproduct, b.buildingage,b.buildingmgr
FROM building b JOIN hvac_temperatures h ONb.buildingid = h.buildingid;
作业会话
查询名称
日期
ID
操作
状态
表中无可用数据
正在将数据载入到 Excel
成功完毕此作业后。你可使用
id=40886">Microsoft 配置单元 ODBC 驱动器
将数据从配置单元导入到 Excel 2013。安装驱动程序后,可使用下面步骤连接到表格。
1. 打开 Excel 并创建空白的工作表。
2. 从数据选项卡中,选择来自其它源,然后选择来自 Microsoft 查询。
3. 提示选择数据源时,选择演示样例 Microsoft 配置单元 DSN。
4. 在 Microsoft 配置单元 ODBC 驱动器连接对话框中,输入下面值,然后单击“确定”。
- 主机 - HDInsight 群集的主机名。比如,mycluster.azurehdinsight.net
- username - HDInsight 群集的管理员名称
- password - 管理员password
全部其它字段均为默认值。
5. 在查询向导中,选择 hvac_building 表,然后选择 > button。
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveWFuZ3poZW5waW5n/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" />
6. 单击下一步继续查看向导,直到到达带有完毕button的对话框。单击完毕。
7. 出现导入数据对话框时,单击确定以接受默认设置。
完毕查询后,数据将显示在 Excel 中。
可视化数据
由于数据已导入 Excel,你将使用Power View 以可视方式导出数据。
1. 在 Excel 工作表中。选择插入选项卡。然后选择 Power View 以打开新的 Power View 报表。
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveWFuZ3poZW5waW5n/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" />
2. 在 Power View 字段区域。选择国家/地区和 extremetemp 旁的复选框。清除全部其它复选框。
3. 在字段 框,单击 extremetemp 旁的向下箭头,然后选择计数(非空白)。
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveWFuZ3poZW5waW5n/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" />
4. 从设计选项卡中,选择地图以在世界地图上按国家/地区显示温度数据。
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveWFuZ3poZW5waW5n/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" />
地图上显示的每一个圆圈表示记录温度高于或低于目标温度 5 度之上的次数。
圆圈越大。在此位置记录的极端温度的实例越多。
为了进一步筛选数据,以便你查看记录温度高于或低于目标温度的地点,请运行下面步骤。
1. 在 Power View 字段区域。清除 extremetemp 复选框,然后选择 temprange 复选框。
选择 temprange 旁的向下箭头,然后选择作为大小加入。
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveWFuZ3poZW5waW5n/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" />
2. 将 temprange 从 Power View 字段区域拖到筛选器框,然后选择热或冷的复选框。查看高于或低于目标温度的地点。
尽管通过可视化地图上的温度数据,你能够更easy查看哪个地点在维持目标温度方面出现故障,但你无法由此深入了解根本原因。
请运行下面步骤,使用生成信息确定 HVAC 是否是问题的源头。
1. 打开新的 Excel 工作表。依次选择数据选项卡、来自其它源、来自 Microsoft Query。依照先前同样步骤导入数据,但此次选择 hvac_building 表,且仅选择 hvacproduct 和 extremetemp 列。
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveWFuZ3poZW5waW5n/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" />
2. 导入数据后,选择插入选项卡,然后选择 Power View。
3. 在 Power View 字段的 字段 章节中,单击 extremetemp 字段旁的向下箭头,然后选择计数(非空白)。
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveWFuZ3poZW5waW5n/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" />
4. 从设计选项卡中,选择柱形图。然后选择堆积柱形图。
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveWFuZ3poZW5waW5n/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" />
5. 显示图后,选择左上角按hvacproduct 排序旁的向下箭头。然后选择 extremetemp 的计数以按 extremetemp 字段对列进行排序。
从此图中,你能够看到 FN39TG 的极端温度实例高于其它单位。
摘要
在本教程中,你已成功运行用于分析生成 HVAC 传感器数据的 HDInsight 配置单元作业。要了解很多其它信息。请訪问我们的其余演示样例作业。
假设你具有本教程或其它演示样例方面的反馈。请使用上面的帮助 + 反馈链接。
使用下面链接继续了解怎样将配置单元和 Excel 与 HDInsight 一同使用。
- 将配置单元和 HDInsight 中 Hadoop 一同使用
- 使用 HDInsight 中 Hadoop 分析 Twitter 数据
- 使用 Microsoft 配置单元 ODBC 驱动程序将 Excel 连接到 Hadoop
- 使用 Power Query 将 Excel 连接到 Hadoop
转载请注明出处:http://blog.csdn.net/yangzhenping, 谢谢!
HDInsight-Hadoop现实(两)传感器数据分析的更多相关文章
- Hadoop中两表JOIN的处理方法(转)
1. 概述 在传统数据库(如:MYSQL)中,JOIN操作是非常常见且非常耗时的.而在HADOOP中进行JOIN操作,同样常见且耗时,由于Hadoop的独特设计思想,当进行JOIN操作时,有一些特殊的 ...
- Hadoop中两表JOIN的处理方法
Dong的这篇博客我觉得把原理写的很详细,同时介绍了一些优化办法,利用二次排序或者布隆过滤器,但在之前实践中我并没有在join中用二者来优化,因为我不是作join优化的,而是做单纯的倾斜处理,做joi ...
- 一起学Hadoop——实现两张表之间的连接操作
---恢复内容开始--- 之前我们都是学习使用MapReduce处理一张表的数据(一个文件可视为一张表,hive和关系型数据库Mysql.Oracle等都是将数据存储在文件中).但是我们经常会遇到处理 ...
- Hadoop实战:微博数据分析
项目需求 自定义输入格式,将明星微博数据排序后按粉丝数 关注数 微博数 分别输出到不同文件中. 数据集 下面是部分数据,猛戳此链接下载完整数据集 数据格式: 明星 明星微博名称 粉丝数 ...
- Hadoop MapReduce两种架构 以及 YARN
一.MRv1 Master - Slave 模式 存在JobTracker单点失败的问题,在YARN得到了解决. 主要包含4部分:JobTracker,TaskTracker,Task,Client ...
- hadoop创建两大错误:Bad connection to FS. command aborted. exception和Shutting down NameNod...
我的hadoop启动后,各个节点都正常,但是无法查看hdfs目录,错误提示 Bad connection to FS. command aborted. 查了下网上的解决办法,主要是删除tmp下的所 ...
- 如何在美国公司写project plan 邮件--以hadoop安装和Mahout数据分析为例子
Hi, XXX (boss name) Project Title: Hadoop installation and Data analysis based on Mahout Deliverabl ...
- hadoop的两大核心之一:HDFS总结
什么是HDFS? hadoop distributed file system(hadoop分布式文件系统) 是一种允许文件通过网络在多台主机上分享的文件系统, 可让多机器上的多用户分享文件和存储空间 ...
- hadoop的两类配置文件及3种启动/关闭方式
hadoop配置文件 默认配置文件:四个模块相对应的jar包中:$HADOOP_HOME/share/hadoop *core-default.xml *hdfs-defa ...
随机推荐
- 左右v$datafile和v$tempfile中间file#
v$datafile关于存储在文件中的数据视图的信息,v$tempfile查看存储在一个临时文件中的信息. 有两种观点file#现场,首先来看看官方文件的定义: V$DATAFILE This vie ...
- 安卓模拟器错误: Could not open
在进行android模拟器測试的时候,出现下面错误,进度条满了之后就没反应了.图例如以下: 引起这个问题的可能原因有非常多: 原因一:由于我们採用的是绝对路径定位.也就是说在环境变量里面把路径写死了, ...
- NSIS:强制结束软件进程
原文NSIS:强制结束软件进程 有时候,我们选择卸载软件后发现安装目录中的主文件依然存在,不是我们卸载代码写的不对,而是卸载的时候软件根本就没有关闭! 在卸载前加上下面这个宏可以在一定程度上免除上述的 ...
- Intent常用使用汇总
方法一:调用默认的短信程序Intent intent = new Intent(Intent.ACTION_VIEW);intent.setType("vnd.android-dir/mms ...
- hdu 1025 Constructing Roads In JGShining’s Kingdom 【dp+二分法】
主题链接:pid=1025">http://acm.acmcoder.com/showproblem.php?pid=1025 题意:本求最长公共子序列.但数据太多. 转化为求最长不下 ...
- JMeter 怎么保存登录状态
在Recording Controller中添加一个HTTP Cookie Manager Recording Controller右键-->add-->config element--& ...
- Session or Cookie?是否有必要使用Tomcat等一下Web集装箱Session
Cookie是HTTP协议标准下的存储用户信息的工具.浏览器把用户信息存放到本地的文本文件里. Session是基于Cookie实现的. 2011年4月,武汉群硕面试的时候(实习生).面试官也问过这个 ...
- WebApi的一种集成测试写法(in-memory)
WebApi的一种集成测试写法(in-memory) 大家是如何对webApi写测试的呢? 1.利用Fiddler直接做请求,观察response的内容. 2.利用Httpclient做请求,断言 ...
- Topshelf创建Windows服务
使用Topshelf创建Windows服务 概述 Topshelf是创建Windows服务的另一种方法,老外的一篇文章Create a .NET Windows Service in 5 steps ...
- Java和Flex积分误差(一个)
1.错误叙述性说明 at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency( ...