第一章 绪论
1.1 研究现状
1.1.1 云存储的研究现状
2012 年中国已经进行了四次云计算大会,每次专家云集,为中国的云计算研究带来了无限的推动力,于此同时深圳、北京、上海、杭州、无锡 5 个城市被授予“云计算创新服务试点城市”牌匾,标志云计算在中国开始开花结果。云计算研究方向主要有以下三个方面:(1) 计算:实现大规模集群运算,形成强大的计算资源池;(2) 虚拟化:用户完全脱离实际物理硬件,而获得直观的服务;(3) 存储:存储海量资源,保证计算和虚拟化的成功实现。云存储是云计算研究基础,也是目前云计算研究的起步者,如果不能解决云存储各种技术,计算和虚拟化将无法实现。目前国内外研究现状如下:
(1) Amazon-S3S3
(Amazon Simple Storage Services)是亚马逊推出的简单云存储服务,用户只需要掌握亚马逊提供的服务接口就可以将任意类型的文件存储在 S3 服务器上,S3 的总体设计目标达到以下三点要求:可靠、易用及低成本[1, 2]。S3 对象主要有两个部分:数据和元数据,数据是任意类型的,元数据是用来描述数据信息的,可以由用户或者系统定义。其中用户定义的元数据不能超过 2048B,对象是基本的存储单元。该系统采用冗余的存储方式,将用户的每个数据都存储多个副本并将这些副本放到不同的服务器和数据中心,数据丢失概率大大降低,给用户带来了较好的用户体验,成为了云存储的风向标。
(2) Google –GFSGFS
(Google File System)为了存储海量搜索数据而设计的专用分布式文件系统[3]。GFS 系统中包括两类节点:Master 节点和块数据存储节点。Master 节点负责存储系统元数据,简单来说,Master 是系统的管理中心,文件的存放位置和系统自动维护都由其负责。元数据记录着数据块的位置和副本存放位置,在系统的维护过程中,Master 会周期性接受来自 Chunk 的心跳消息,让系统的元数据保存最新状态。如果 Master 只存在物理单节点的话,在 Master 宕机情况下就无法提供及时的服务,故需要存在逻辑 Master(主备),备用 Master 能够接替主用 Master 的管理功能。Chunk 存储节点:主要存储数据,每个节点上面有 64M 块状大小的数据,每一个 Chunk 有一个唯一的 64 位标识,每个Chunk 都会被复制到默认备份点。这就是分布式文件系统的特点,保证了数据的备份,提高了系统的安全性。
(3) Hadoop-HDFSHDFS
(Hadoop Distributed File System)采用中心服务器架构。HDFS 集群组成部分为:Namenode 和 Datanode[4]。Namenode 是中心服务器,主要任务是负责管理文件系统的命名空间和客户端对系统文件的读写。Datanode 的主要功能为分布式存储数据块,Namenode 的主要任务是完成文件系统的命名空间操作(打开、关闭、重命名文件和目录),同时决定块到具体 Datanode 节点的映射,Namenode 指挥 Datanode 中块的创建、删除和复制。整个系统可以部署在普通的廉价的运行 Linux 的机器上。目前 Hadoop 只支持单用户的写而不支持多用户并发写,当然使用 Append 操作在文件尾添加数据是可行的。
1.1.2 工业数据采集研究现状
数据采集系统是工业自动化控制的核心组成部分,随着计算机技术、通信技术、物联网技术以及云计算技术的成熟,不断影响着工业自动化控制和数据采集分析智能化的发展方向,主要研究现状如下:
(1) 工业 PC 为基础的低成本数据采集装置
传统的数据采集装置有自己的私有硬件,软件使用私有网络通信协议,在价格方面让中小企业望而却步。90 年代以来,随着工业 PC 和嵌入式芯片的发展,低成本的数据采集系统成为了一个研究方向。工业 PC 依托成熟的操作系统,如 window 和 Linux,易于安装和使用并具备了较高的控制和诊断功能,在系统维护方面也具备优势[5]。
(2) 开放的网络标准替代现有的工业控制
网络单纯的工业数据采集系统往往是为了完成现场的控制和监控任务,这样就造成了网络结构封闭化。随着现代企业信息化程度的提高,比如:EPR(enterprise resourceplanning)、MES(manufacturing execution system)[6]企业级的信息管理系统,在集成企业的信息流同时,提高了生产效率和水平。当面对网络时代,需要将企业上层信息与现场生产数据相互集成,形成完整的企业信息平台。基于 internet 的远程生产过程需要具有实时性、低成本、地域无限制等特点,不断提高现场的自动化生产水平。
(4) 标准化数据接口和协议
通过国内外大量研究,诞生了解决企业上层信息管理系统和生产现场数据采集以一系列的通信接口标准,从而实现了硬件和软件之间的一道分界线,使软件不在依赖具体的硬件层。例如 OPC(Object Linking and Embedding(OLE)for Process Control)[7]建立了window 与现场过程控制之间的一道桥梁。
(5) 不断增长的海量工业数据
信息管理网络化必然造成海量工业数据,就会面临如下几个问题:存储成本的增加;存储容量爆炸性增长且难以预估;越来越复杂的异构环境。在处理和存储数据方面必然使用到当前流行云计算的架构、分布式的存储机制、虚拟化的服务模式,这样大规模集群运算就成为解决海量数据信息融合的关键。
第二章 相关背景知识介绍
2.1 云存储理论
Google 是当前世界最大的搜索引擎公司,不断延伸的很多业务需要大量的硬件设备和软件支持,合理最大化利用过去的硬件设备,要求自身业务及硬件设备能够不断提供新的业务需求。这就需要从软件架构方面入手,利用兴起的虚拟化技术,将大量普通的PC 通过 Internet 连接起来,能够处理大量数据,无限扩容,满足不同业务需求。云存储是一种在线存储模式,在这种模式下将数据存放到虚拟存储资源池并由第三方持有[8]。一个典型云存储系统架构应该包含一个逻辑管理控制服务器和若干存储服务器[9],其系统简单架构应该如下:逻辑管理控制服务器尽可能减少对管理服务器的访问,客户端和存储服务器直接交互数据,就要做到数据流和控制流分离,这样就分担了网络带宽和实现多 I/O 节点访问,实现网络带宽最大利用率和克服 I/O 瓶颈;存储服务器最好采用块存储,所有客户端访问的存储服务器最大可能分散到整个存储集群,实现分布式存储,备份策略可根据数据所在的机架等物理位置信息选择合适的备份数据服务器进行备份。
第三章 MFS 数据管理机制............16
3.1 组织架构 .......16
3.2 系统操作 .......20
3.3 元数据...........21
3.3.1 内存中的数据结构 ...........22
3.3.2 Chunk 位置信息.......22
3.3.3 操作日志.......22
3.4 数据组织与交互......23
3.4.1 数据组织.......23
3.4.2 数据交互.......24
3.5 数据维护 .......26
3.6 本章小结 .......28
第四章 MFS 系统实现技术............29
4.1 通信机制 .......29
4.2 Master 实现方法.......31
4.3 Chunkserver 实现方法.......34
4.4 Client 实现方法........40
4.5 本章小结 .......43
第五章 工业采集数据云存储系统设计....44
5.1 设计背景 .......44
5.2 设计需求 .......44
5.3 工业数据分布式存储算法设计.............45
5.4 警告电压分布式索引算法设计.............46
5.5 定时数据并行分布式查询算法设计.....48
5.6 随机数据并行分布式查询算法设计.....49
5.7 本章小结 .......51
结论
针对海量工业采集数据存储和数据挖掘的特点,本文研究了工业数据采集技术、工业网络技术、云存储技术、分布式文件系统和分布式计算等理论。本文采用的 MFS 是当前流行的云存储开源软件,本人在研究生期间作为核心研发人员对该系统进行了性能改进和深入研究,选择云存储在工业数据存储领域的运用有一定的理论技术背景。本文主要工作和结论如下:
(1) 提出云存储在工业采集数据领域的运用理论,解决了海量工业数据存储和数据挖掘难题,本课题使用基于 MFS 云存储系统能够替代传统的存储平台;
(2) 将云存储资源池同时作为计算资源池,最大化使用 MFS 系统资源,实现高速数据挖掘,存储节点负责存储的同时也会作为计算节点执行本地计算任务;
(3) 系统自动建立分布式索引,将索引文件和相关数据记录文件绑定存储到相同的物理节点,这样设计可以达到减少系统网络交互,减轻系统通信负载的目的;
(4) 本课题设计的相关算法可以脱离 MFS 系统,部署到独立的节点上面,设计出了的类似于 Mapreduce 分布式的云计算模型;
(5) 该系统继承了云存储系统的高度扩展性,计算节点随着存储节点增加而增加,系统的整体计算性能随着节点数目增加而线性增长。
参考文献
[1] Liu, S J ,Z J Yi, Research of Network Mass http://sblunwen.com/gygcsslw/ Storage Mode Based on SAN.Advances ElectronicCommerce, Web Application and Communication, Vol 2, D. Jin and S. Lin, Editors,2012,Springer-Verlag Berlin: Berlin: 279-284.
[2] Balmin, A T Kaldewey, S Tata, Clydesdale.structured data processing on hadoop. SIGMOD '12:Proceedings of the 2012 ACM SIGMOD International Conference on Management of Data, 2012.
[3] Ghemawat, S H Gobioff, S T Leung.The Google file system.Proceedings of the nineteenth ACMsymposium on Operating systems principles2003, ACM: Bolton Landing, NY, USA:29-43.
[4] Borthakur D. HDFS architecture guide.
[5] 向冬.基于CC的工业数据采集系统开发方法研究, 2006, 西北工业大学:14-17.
[6] Bikfalvi, P F Erdelyi, T Toth. Multi-objective performance analysis of one-machine manufacturingsystems. Automation Quality and Testing Robotics (AQTR), 2012 IEEE International Conference on,2012.
[7] Yang, C H Li, Z. Liu. Implementation of migrations from Class OPC to OPC UA for data acquisitionsystem. System Science and Engineering (ICSSE), 2012 International Conference on,2012.
[8] Yong, S. and Z. Jingli. The Study of FC SAN Extension Based on CWDM. Information Science andEngineering (ICISE), 2009 1st International Conference on. 2009.
[9] Jiyi. Cloud Storage as the Infrastructure of Cloud Computing. Intelligent Computing and CognitiveInformatics (ICICCI), 2010 International Conference on. 2010.
[10] Yanmei. A Cloud Storage Architecture Model for Data-Intensive Applications. Computer andManagement (CAMAN), 2011 International Conference on. 2011.