近年来,在物联网等具有海量数据需求的应用变得越来越普遍时,无论是从科学研究还是从应用开发的角度来看,掌握云计算技术已成为一种趋势。智能家居作为物联网应用的主要领域之一,自然离不开云计算。云计算的发展使用户无需关注复杂的内部工作机制、无需具备丰富的分布式系统知识及开发经验,即可实现大规模分布式系统规定部署,以及海量数据的并行处理。
hadoop是目前较为成熟和应用较为广泛的云计算架构之一。hadoop的核心思想是分布式并行处理。hadoop技术中的关键技术是hdfs(分布式文件系统)和map/reduce(映射/规约)。hadoop利用hdfs存储海量数据,利用map/reduce进行海量数据的计算。
文中首先介绍了智能家居与云计算的概念,接着针对传统的海量数据处理方法硬件成本太高,存在计算瓶颈的问题,在云计算理论的基础上针对智能家居中的门禁系统、温湿度系统、滴灌系统和照明系统搭建了基于hadoop的数据处理平台。可以对大量传感信息进行分布式并行处理,并根据处理结果向底层设备发送指令以实现智慧化服务。
1智能家居与云计算
1.1智能家居
目前通常把智能家居定义为利用电脑、网络和综合布线技术,通过家庭信息管理平台将与家居生活有关的各种子系统有机结合的一个系统。首先,需要在家居中建立一个通信网络,为家庭信息交互和传输提供必要的通路,在家庭网络的操作系统控制下,通过相应的硬件和执行机构,实现对所有家庭网络上的家电和设备的控制和监测。其次,智能家居系统需要通过一定的媒介平台,提供与外界的通信通道,以实现与家庭以外的世界沟通信息,满足远程控制/监测和交换信息的需求。
1.2云计算架构hadoop
hadoop是一个分布式计算框架,可以在大量廉价的硬件设备组成的集群上运行应用程序,为应用程序提供了一组稳定可靠的接口,旨在构建一个具有高可靠性和良好扩展性的分布式系统。hadoop的主要优点有:扩容能力强、成本低廉、效率高、可靠性高、免费开源及良好的可移植性。hadoop项目包括多个子项目,但主要是由hadoop分布式文件系统(hadoopdistributedfilesystem,hdfs)和映射/规约引擎(map/reduceengine)两个主要的子项目构成。
1.3分布式文件系统(hdfs)
hdfs由一个名叫namenode的主节点和多个名叫datanode的子节点组成,是一种典型的主从式(master/slave)架构,这种架构方法可以通过主节点屏蔽底层的复杂结构,并向client提供方便的文件目录映射。namenode存储着文件系统的元数据,这些元数据包括文件系统的名字空间等,并负责管理文件的存储等服务,但实际的数据并不存放在namenode,而是由hdfs中的datanode来存放数据,然后由client直接与datanode建立数据通信。
此外,hdfs为了可靠地海量存储文件,各个文件以块序列的形式存储。为了保证故障容错,文件的块被复制。块的大小和副本的个数都可以配置。name鄄node控制所有的块复制操作,它周期性地接收来自集群中datanode的“心跳冶回应和块报告。收到一个节点的“心跳冶回应表示这个datanode是正常的。
1.4mapreduce分布式计算
mapreduce分布式计算主要是用来在数千部服务器上同时处理保存于gfsclusters中高达几十tb甚至更多的数据。
mapreduce在温度值统计过程中的运作如下所述。
mapreduce的作用是对计算机集群上的大型数据集运行分布式计算,替大量数据做平行计算处理。mapreduce的整个架构是由map和reduce函数组成的,当程序输入一大组key/value键值对时,map函数自动将原本的key/value分拆成多组中介的键值对,然后reduce函数再合并具有相同key的中介值配对,化简成最后的输出结果。
智能家居云模型
智能家居拥有7大子系统,每一个系统包含了不同的终端,每一个终端都安装有传感器,传感器感知周围环境并产生大量数据。千千万万的用户会产生海量的数据,而云计算可靠的数据存储,强大的计算能力,低廉的运营成本使得它非常适合处理海量数据。于是每家用户都将通过网络连接到云服务中心,产生的数据均由云计算中心存储和计算处理。
2开发程序设计分析