基于Hadoop的产品大数据分布式存储优化

人工智能技术与咨询 

点击蓝字 · 关注我们

来源:《计算机科学与应用 》 ,作者王耐东等

关键词:  产品大数据;Hadoop平台;数据存储优化;数据检索

摘要:

  摘要: 研究产品相关大数据资源组织存储与检索查询技术,提出在Hadoop平台基础上对产品大数据资源进行分块存储。基于MapReduce并行架构模型,提出多副本一致性Hash数据存储算法,算法充分考虑了数据的相关性和时空属性,并优化了Hadoop平台的数据划分策略和数据块规格调整。通过对数据的优化存储布局,采用多源并行连接检索方法和多通道数据融合特征提取技术实现产品大数据信息检索,提高了数据资源管理效率。实验表明和标准Hadoop方案比较,多源并行连接数据检索的执行时间为其31.9%。

1. 引言

计算机的发展和网络通信技术日趋成熟,数据规模的增长在给人们带来便利生活的同时也让从大量数据中汲取有用信息变得困难,如何从中检索到有用数据是目前需要面对的重要问题 [1] [2] [3]。其中有产品相关的数据资源包含生产车间监测视频图像及产品相关数据及文档、物料跟踪数据、加工数据、生产流通数据等,其存在着数据资源规模大,种类多,来源不同且分散分布的特点 [4] [5] [6]。传统的分布式数据库受数据库存储能力限制,存在着架构存储能力有限,对数据的管理与发布支持相对较弱,管理效率低的问题 [7] [8] [9]。

目前,针对传统分布式数据库存在的问题,庞书杰 [10] 提出了一种基于Hash的关联规则并行优化算法(HP-AR),通过对数据库统计频繁项集部分的并行处理结合辅助Hash表简化挖掘过程满足了面对大规模数据集时挖掘隐藏关联规则的需求。潘俊辉等学者 [11] 针对基本算法Apriori的改进,提出了一种基于压缩矩阵的优化算法,该算法使用MapReduce计算模型对数据库进行分块,之后对数据库的关联规则的挖掘结果进行合并,得出频繁项集。Aisha Siddiqa等学者 [12] 为了评估不同存储架构的性能,使用Brewer的CAP定理比较和分析了现有方法,提出了一种定义明确的大数据存储技术分类法。

本文针对目前存在的数据管理效率低、检索速度慢等问题基于Hadoop平台,结合分布式、分层结构的存储优化和并行处理等技术,提出了一种多副本一致性Hash数据存储算法,将数据集中的数据按照相关性以及时空属性进行分块处理,提高了数据处理的效率。同时在Hadoop MapReduce并行框架的基础上,设计了一种多源并行连接数据检索算法,实验结果表明,同传统Hadoop方案相比,多源并行连接数据检索算法的运行速度明显加快。

2. 产品大数据存储优化研究

2.1. 数据存储及数据分布策略

基于数据相关性的多副本一致性Hash数据存储算法(Multi-copy Consistency Hash Algorithm Based on Data Correlation, CMCHA),进行Hadoop的数据布局优化,优化技术路线:尽可能集中存储相关联的数据,数据检索和分析时在映射阶段完成主要工作,使由映射端到约减端数据通信负载消耗降低,系统整体数据检索和分析性能得到提高。每种跟踪过程数据的类型和格式不同,可将数据的具体采集位置和时间作为数据检索和分析时的关键字。

通常Hadoop平台将数据存储为3个副本,一份在本地,一份在同机架内不同节点上,一份在不同机架的某一节点上。为减少整体数据传输带宽消耗和数据读取时间延时,HDFS让读取应用程序读取距离它最近的副本数据。

存储算法考虑如下3方面的相关性:数据采集地点相关性、数据采集时间相关性和自定义数据相关性。利用一致性Hash算法,按照采集地点编号对数据副本1进行Hash映射;按照采集时间戳对数据副本2进行Hash映射;相关系数作为跟踪过程数据的一个重要属性,按照自定义相关系数对数据副本3进行Hash映射,实现不同的数据查询和数据分析需求。根据应用系统需要自定义数据相关性,给相关系数赋值,算法设计过程中构建配置流程如图1所示的Hash环。

Figure 1. CMCHA flow

图1. CMCHA算法流程

步骤1:通过配置文件预定义跟踪过程数据的相关系数以及冗余的副本数量,定义冗余副本数量为3;

步骤2:计算集群中每个数据节点的Hash值,配置到0~232的Hash环区间上;

步骤3:基于跟踪过程数据的时间及空间属性和相关系数计算数据的Hash值。根据数据来源位置ID,在云平台下对第1份副本数据①,计算Hash值1,映射到Hash环上;对第2份数据②,根据跟踪过程数据的采集时间戳,计算Hash值2,并映射到Hash环上。对第3份数据③,根据数据的相关系数计算其Hash值3,并映射到Hash环上。可配置大于3的副本数量,交替按照这3种方式计算其Hash值i,并依次映射到Hash环上,满足更高的数据存储可靠性;

步骤4:确定数据的存储位置,根据数据Hash值和数据节点Hash值在CMCHA算法配置流程图中按顺时针方向将数据映射到距离其最近的节点(如将数据①映射到节点A上);

步骤5:如果节点空间不足或在映射过程出现异常,则跳过该节点寻找下一个存放节点。

2.2. 数据存储优化研究

按照所属大文件,所有分块数据存储为一个文件,分块数据基于Hadoop分布式存储调度策略,被分散存放在不同的分布式存储节点上,每个分块数据设置相应的存储副本率,为便于数据检索该存储策略另外定义和维护分块数据的索引键名。

每个大文件包含的每个分块数据通过< key, value >记录形式存储到HDFS中,记为< Blk-ID, Data >,数据类型为< int, byte[] >,Blk-ID表示数据分块顺序号,Data表示数据分块的二进制数据,通过给定的Blk-ID可得到对应数据分块的二进制字节数据。大文件数据分块存储方法如图2。

HDFS的设计目标是存储大文件,其数据块规格默认为64 MB,远大于512B的物理磁盘的块大小。HDFS文件访问时间主要包括系统寻址时间和数据传输时间,文件传输效率 ηeffectηeffect 计算公式如下:

Figure 2. Block storage process of large file

图2. 大文件分块存储流程

其中, tttt 表示数据传输时间, tt=Sblockvtt=Sblockv; tsts 表示系统寻址时间; SblockSblock 表示数据块规格; vv 表示数据传输速度。

从(1)可看出 ηeffectηeffect 小于1。通常在数据分布和索引方法确定情况下, tsts 和 vv 是确定的值,要提高 ηeffectηeffect 应增加 SblockSblock。在HDFS中,通过dfs.block.size参数设置数据块 SblockSblock 的规格。如果规格设置过大会降低系统负载均衡性,在调整数据块的规格时应综合考虑进入系统的数据规模、数据传输率和负载均衡性。

3. 数据多源并行连接检索

产品数据跟踪管理系统对在线监测的多个监测点以及相关参数进行综合检索,查询条件是监测位置ID、采样时间或位置和时间联合条件等。检索内容包括位置信息(数据采集点设备名称、设备运行时间、采集位置等)、环境信息(生产车间的温度、湿度、气压等)、生产数据(捕捞时间、捕捞批次、数量等)等多源数据,需要将不同来源的数据进行数据连接。如在产品加工过程质量控制参数的综合检索过程中需要连接3个数据文件:1) 加工过程数据文件(表1),其中采样批次即为产品批次码;2) 质量控制参数检测数据文件(表2);3) 检测环境文件(表3),其中检测位置编码代表“车间–工段–班组–工位”。按时间进行的综合查询生成在2020年3月14日9:00~9:20的综合检测结果数据,形成质量检测数据列表,包括位置信息和环境信息。此过程需要将3个数据文件按照查询条件进行连接,形成满足综合查询要求的查询结果数据列表,如表4。

位置ID

采集时间

采样批次

DL082

2020-03-14 9:08

202003140103100

DL083

2020-03-14 9:18

202003140103300

DL081

2020-03-14 9:10

202003140103200

Table 1. Processing data file

表1. 加工过程数据文件

位置

采集时间

采样批次

采样信息

DL083

2020-03-14 9:10

202003140103200

31.9/7.58/50.2

DL081

2020-03-14 9:00

202003140103300

32.5/7.55/50.5

DL082

2020-03-14 9:08

202003140103100

32.2/7.57/50.4

DL082

2020-03-17 9:00

202003140103100

11.7/10.1/62.2

Table 2. Quality inspection data file

表2. 质量参数检测数据文件

位置ID

检测位置

采集时间

温度℃

湿度

DL081

ZZ01-I-02-B

2017-03-14 8:00

39

65

DL082

ZZ01-I-02-A1

2017-03-14 8:10

38

63

DL083

ZZ02-II-01-A1

2017-03-14 8:11

38

59

Table 3. Detection position data file

表3. 检测环境数据文件

位置ID

检测位置

采集时间

温度/℃

湿度

采样批次

采样信息

DL081

ZZ01-A-026-B

2017-03-14 9:00

39

65

201703140103300

32.5/7.55/50.5

DL082

ZZ01-A-026-A1

2017-03-14 9:08

38

63

201703140103100

32.2/7.57/50.4

DL083

ZZ02-B-017-A1

2017-03-14 9:10

38

59

201703140103200

31.9/7.58/50.2

Table 4. Results of date join

表4. 数据连接结果

按照数据检索需求和数据格式描述,设计并行过滤连接检索算法,算法在映射端执行,设计的主要依据是为节省网络流量传输,提高检索效率,过滤和连接在映射过程进行,避免要执行的检索操作在约减过程进行。为使数据连接时所需数据聚集到同一个数据节点,采用基于数据相关性的多副本一致性Hash算法进行数据分布。算法流程:1) 根据检索条件过滤掉不符合检索条件的数据;2) 根据连接检索需求,确定数据连接的组键(group key):检测位置ID、时间戳或相关系数;3) 用数据文件名作为标签,标记各数据源的各个记录;4) 将相同属性值的记录根据连接组键划分到一组,按照检索条件进行数据连接。

数据进行优化存储分布之后进入数据连接映射阶段,此阶段在本地节点进行相应任务操作,结果传输到HDFS,数据的优化分布及映射端连接模式流程如图3所示。

Figure 3. Optimized data distribution and map data join mode

图3. 数据的优化分布及映射端数据连接模式

4. 算例验证

4.1. Hadoop平台建设

采用10节点即10台服务器建设Hadoop集群平台,指定集群中一个节点为NameNode,指定另一台不同的节点为JobTracker,均是主控节点。余下节点为客户端,作为DataNode也作为TaskTracker。操作系统采用Windows;部署:虚拟机软件Vmvare;Vmvare安装好一台Windows虚拟机后,导出或者克隆出另外两台虚拟机,连接为桥连,确保虚拟机和主机ip地址在同一个ip段内,可以相互通信。设置数据块规格为64 MB,对应4个CPU内核,各计算节点都分配4个任务网格,其中3个为映射计算任务网格,1个为约减计算任务网格。对集群的整体数据传输性能进行基准测试。

4.2. 算法性能验证

为测试数据存储分布优化后多源连接检索查询算法的性能,将前述针对产品大数据连接算法和基于标准Hadoop平台的连接算法进行分析比对验证。分析使用实验室研发的“产品大数据追溯系统”中采集存储的数据集,如表5。

文件名

副本数

文件大小

占用空间

记录数

加工过程

3

627 kB

1881 kB

1910

质量检测

3

370 GB

1110 GB

13.62 M

检测环境

3

215 MB

645 MB

4175

Table 5. Real data set for join query

表5. 算法验证真实数据集

1) 多源并行连接检索运行时间变化趋势

选择3种典型连接查询条件进行基于CMCHA多源并行连接检索查询算法的运行测试,记录每种条件下算法的运行时间。查询结构化语言SQL语句的描述如表6。

类型

条件

查询语句

全连接

不设置

Select位置ID,检测位置,采集时间,温度,湿度,采样批次,采样信息

From加工过程,质量参数检测,检测环境

Where加工过程,位置ID = 质量参数检测,位置ID = 检测环境,位置ID

位置条件 连接

检测

工位

Select位置ID,检测位置,采集时间,温度,湿度,采样批次,采样信息

From加工过程,质量参数检测,检测环境

Where加工过程,位置ID = 质量参数检测,位置ID = 检测环境,位置ID and位置ID between [ID1, IDn]

时间条件 连接

时间

Select位置ID,检测位置,采集时间,温度,湿度,采样批次,采样信息

From加工过程,质量参数检测,检测环境

Where加工过程,位置ID = 质量参数检测,位置ID = 检测环境,位置ID and采集时间between [T1, Tn]

Table 6. SQL description of join query

表6. 连接查询实验类SQL描述

实验过程中在数据集中选取不同规模的子集,从10万条记录递增至数据全集(13.76 M条),基于CMCHA的多数据源并行连接检索算法运行时间变化趋势及运行时间与数据规模的关系如图4。可以看出,应用了CMCHA数据存储算法优化后,数据检索运行时间随着数据规模的增长而增长平缓。由于对数据存储布局采用CMCHA进行了优化,且在映射过程中完成综合检索查询操作,网络通信量有效降低,保证了查询性能的稳定性。

Figure 4. Execution time and variation trend of data join

图4. 多源连接检索运行时间变化趋势

2) 数据连接检索运行时间比较

使用基于标准Hadoop平台的约减端连接检索处理算法和基于CMCHA的多源并行数据连接检索算法,针对选取的13.76 M条样本数据全集,分别执行全连接、以检测位置为查询条件和以时间为查询条件的连接检索操作,运行时间比较结果如图5,后一算法的运行时间分别为前一算法运行时间的32.9%、32.5%和32.1%。CMCHA算法在运行时间上远小于标准Hadoop算法,而且随着事务条数的增加,虽然CMCHA算法运行时间也在增加,但是两者的差距也在逐渐变大,当数据量逐渐越大时,CMCHA算法的优势也越来越明显。数据存储优化布局后提高了多数据源相关数据聚集性,映射任务中的数据连接在本地就能完成,减少了映射端到约减端的数据通信,也降低了约减任务的启动对性能的影响,所以算法的运行效率明显提高。

Figure 5. Execution time comparison of data join based on 2 algorithms

图5. 两种算法多源连接运行时间比较

5. 结论

针对产品大数据资源,基于Hadoop平台,采用分布式、分层结构的存储优化和并行处理等技术,提出了多副本一致性Hash数据存储算法,按照产品主属性、相关系数和时间戳,在数据集群中按照规则聚集具有相关性的数据,提高数据处理效率。基于该算法设计了Hadoop平台下多源并行连接数据检索算法,测试证明通过数据的存储分布优化,算例的运行速度明显加快,和标准Hadoop方案比较,多源并行连接数据检索的执行时间为其31.9%。

赶紧长按上面图片添加关注!

转发,点赞,在看,安排一下?

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/481713.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

图灵奖得主LeCun领导下的Meta AI,押注自监督

自监督学习真的是通往 AGI 的关键一步&#xff1f;来源&#xff1a;机器之心编辑&#xff1a;于腾凯校对&#xff1a;龚力Meta 的 AI 首席科学家 Yann LeCun 在谈到「此时此刻要采取的具体措施」时&#xff0c;也没有忘记远期的目标。他在一次采访时说&#xff1a;「我们想要构…

面向知识图谱的信息抽取

面向知识图谱的信息抽取 人工智能技术与咨询 点击蓝字 关注我们 来源&#xff1a;《 数据挖掘,》 &#xff0c;作者赵海霞等 关键词: 知识图谱&#xff1b;信息抽取&#xff1b;实体抽取&#xff1b;关系抽取&#xff1b;开放域 摘要&#xff1a; 摘要: 随着大数据时代的到来…

“中国脑计划”:向最后的前沿进发 | 央视对话

报道来源&#xff1a;中科院自动化所、CCTV-2《对话》节目&#xff08;完整视频见文末&#xff09;大脑是人类智慧的集结&#xff0c;是已知宇宙当中最复杂的产物&#xff0c;但我们对大脑认知却很晚&#xff0c;比如我们常说心想事成、心外无物&#xff0c;在很长的历史时期当…

基于图像的数据增强方法发展现状综述

基于图像的数据增强方法发展现状综述 人工智能技术与咨询 2022-03-22 20:57 点击蓝字 关注我们 来源&#xff1a;《 计算机科学与应用》 &#xff0c;作者冯晓硕等 关键词: 数据增强&#xff1b;图像数据集&#xff1b;图像处理&#xff1b;深度学习 摘要&#xff1a; 摘要: …

自监督学习启示大脑的运作方式

来源&#xff1a;混沌巡洋舰 近十年来&#xff0c;许多最令人印象深刻的人工智能系统都使用大量的标记数据进行训练。例如&#xff0c;一张图片可能被标记为“虎斑猫”或“老虎”&#xff0c;以“训练”一个人工神经网络来正确区分虎斑猫和虎。这一策略既取得了惊人的成功&…

2022年中国AI芯片行业深度研究

人工智能技术与咨询 四大类人工智能芯片&#xff08;GPU、ASIC、FGPA、类脑芯片&#xff09;及系统级智能芯片在国内的发展进度参差不齐。用于云端的训练、推断等大算力通用 芯片发展较为落后&#xff1b;适用于更多垂直行业的终端应用芯片如自动驾驶、智能安防、机器人等专用…

图形学人物简史:两位图灵奖与奥斯卡得主的图形学研究往事

来源&#xff1a;大数据文摘大数据文摘授权转载自AI科技评论整理&#xff1a;李梅、王玥编辑&#xff1a;陈彩娴8 月 8 日至 11 日&#xff0c;计算机图形学国际顶级会议 SIGGRAPH 在加拿大温哥华举办。2019 年图灵奖和多次奥斯卡奖「双料得主」Pat Hanrahan 和 Ed Catmull 在大…

一种基于标签比例信息的迁移学习算法

人工智能技术与咨询 点击蓝字 关注我们 来源&#xff1a;《 计算机科学与应用》 &#xff0c;作者汪槐沛等 关键词: 标签比例学习&#xff1b;数据挖掘&#xff1b;迁移学习 摘要&#xff1a; 摘要: 标签比例学习问题是一项仅使用样本标签比例信息去构建分类模型的挖掘任务&am…

智慧城市升级版已来 | 城市大脑建设标准十大原则

来源&#xff1a;球迷Long笔记&#xff08;1&#xff09; 城市大脑建设标准应具备的十个原则1.形成理论基础2.适应复杂场景3.突破地域限制 4.消除信息孤岛5.坚持以人为本 6.降低建设成本7.实现协同建设 8.体现人机融合9.保持持续进化 10.支撑协同发展&#xff08;2&#xff09;…

基于机器视觉的散热器钎焊缺陷检测系统研发

人工智能技术与咨询 点击蓝字 关注我们 来源&#xff1a;《 图像与信号处理》 &#xff0c;作者 吕广贤 关键词: 机器视觉&#xff1b;缺陷检测&#xff1b;钎焊 摘要&#xff1a; 摘要: 为解决散热器钎焊缺陷在工业检测过程中效率低、差错率高的问题&#xff0c;本文设计了一…

逻辑究竟是什么以及逻辑应当是什么?

来源&#xff1a;“哲学园” 公众号编辑&#xff1a;姜天海审核&#xff1a;范 杰逻辑究竟是什么以及逻辑应当是什么&#xff1f;郝兆宽作者简介&#xff1a;郝兆宽&#xff0c;复旦大学哲学学院教授人大复印&#xff1a;《逻辑》2016 年 03 期原发期刊&#xff1a;《哲学分析…

基于遗传算法的无人机监视覆盖航路规划算法研究

基于遗传算法的无人机监视覆盖航路规划算法研究 人工智能技术与咨询 点击蓝字 关注我们 来源&#xff1a;《 计算机科学与应用》 &#xff0c;作者 李御驰等 关键词: 人工势场法&#xff1b;无人机&#xff1b;监视覆盖航路规划 摘要&#xff1a; 摘要: 为解决传统覆盖航路规…

基于改进SSD算法的小目标检测与应用

人工智能技术与咨询 点击蓝字 关注我们 来源&#xff1a;《 计算机科学与应用》 &#xff0c;作者刘洋等 关键词: SSD&#xff1b;深度学习&#xff1b;小目标检测 摘要&#xff1a; 摘要: 针对通用目标检测方法在复杂环境下检测小目标时效果不佳、漏检率高等问题&#xff0c;…

「上帝粒子」发现10周年

来源&#xff1a;FUTURE | 远见 选编&#xff1a;闵青云 2012年7月4日&#xff0c;欧洲核子研究中心&#xff08;CERN&#xff09;宣布发现了「上帝粒子」&#xff08;希格斯玻色子&#xff09;。希格斯玻色子是粒子物理学标准模型预言的一种玻色子&#xff0c;正是它的存在&am…

基于对抗生成网络的滚动轴承故障检测方法

人工智能技术与咨询 点击蓝字 关注我们 来源&#xff1a;《人工智能与机器人研究》 &#xff0c;作者华丰 关键词: 不平衡工业时间序列&#xff1b;异常检测&#xff1b;生成对抗网络&#xff1b;滚动轴承数据 关注微信公众号&#xff1a;人工智能技术与咨询。了解更多咨询&…

社会演化动力学:人类社会复杂性为何不断增加?

来源&#xff1a; 集智俱乐部编译&#xff1a;任卡娜审校&#xff1a;刘培源编辑&#xff1a;邓一雪导语在全新世&#xff08;the Holocene&#xff0c;11700年前以来&#xff09;期间&#xff0c;人类社会的规模和复杂性显著地增长。一代又一代的研究者试图提出不同的理论来对…

基于机器学习的网络安全态势感知

人工智能技术与咨询 点击蓝字 关注我们 来源&#xff1a;《计算机科学与应用》 &#xff0c;作者杨怡等 关键词: 机器学习&#xff1b;态势感知&#xff1b;关联分析&#xff1b;攻击场景重建 摘要&#xff1a; 摘要: 在传统网络防御手段抵御攻击的基础上&#xff0c;提出了一…

「Python」为什么Python里面,整除的结果会是小数?

原文&#xff1a;https://www.cnblogs.com/bEngi1/p/9155297.html  ‘//’明明是整除&#xff0c;为什么结果不是整数&#xff0c;而会出现小数&#xff1f; 首先&#xff0c;关于除法有三种概念&#xff1a;传统除法、精确除法和地板除 1 2 3 4 5 6 7 #1、传统除法&#x…

《Nature》创新技术发现环境变化影响活细胞的RNA形状

来源&#xff1a;生物通通过创新技术&#xff0c;揭示了环境条件对活细胞中RNA动态结构的影响。这项研究是Dame Caroline Dean FRS教授和Yiliang Ding博士团队合作的结果&#xff0c;增加了我们对细胞水平对环境信号的反应的理解。这增加了我们利用这些知识来微调作物或开发基于…

C/C++预处理指令#define,#ifdef,#ifndef,#endif…

原文https://www.cnblogs.com/zi-xing/p/4550246.html 管理 C/C预处理指令#define,#ifdef,#ifndef,#endif… 本文主要记录了C/C预处理指令&#xff0c;常见的预处理指令如下&#xff1a; #空指令&#xff0c;无任何效果 #include包含一个源代码文件 #define定义宏 #undef取消…