摘 要:针对易制毒化学品数据的海量增长问题,如何对这些数据进行分析,进而为易制毒化学品交易提供参考,是当前思考的重点。对此基于易制毒化学品海量增长的数据,结合Hadoop和Spark各自的优缺点,提出一种基于Hadoop+Spark的易制毒化学品数据分析系统。为实现该系统,首先采用Hadoop+Spark的框架对系统进行搭建;将系统功能模块分为数据分析模块、ETL模块、可视化模块3个主要模块,并对上述功能模块进行详细设计与实现;提出用于易制毒化学品价格预测的保序回归模型。最后搭建集群服务器和系统运行环境,运行上述预测模型,得到价格预测的误差值较小,能较准确预测易制毒化学品价格。
关键词:Hadoop框架;易制毒化学品;大数据分析;保序回归模型
中图分类号:TP311.13 文献标识码:A 文章编号:1001-5922(2021)06-0081-03
Abstract:In view of the massive growth of precursor chemicals data, how to analyze these data and provide reference for precursor chemicals trading is the focus of current thinking. Based on the huge growth data of precursor chemicals, combined with the advantages and disadvantages of Hadoop and Spark, a data analysis system of precursor chemicals based on Hadoop + Spark is proposed. In order to realize the system, Hadoop + Spark framework is used to build the system; the system function module is divided into three main modules: data analysis module, ETL module and visualization module, and the above functional modules are designed and implemented in detail; the ordinal regression model for price prediction of precursor chemicals is proposed. Finally, the cluster server and system operating environment are built, and the above prediction model is run. The error value of price prediction is small, which can accurately predict the price of precursor chemicals.
Key words:Hadoop framework; precursor chemicals; big data analysis; ordinal regression model
要想對易制毒化学品交易过程进行多角度、全方位的监控,就必须对相关数据进行实时分析处理,包括实时采集、数据流缓存、数据处理等环节,可是,现有研究主要关注于数据采集和数据处理等工作,反而忽略了数据清洗、数据缓存、数据布局等内容,这在一定程度上影响了实时数据的分析处理效率及效果。对此,一是基于Hadoop平台进行实时数据的分析处理。在实操中,利用HDFS系统进行数据储存,利用Map Reduce工具对实时数据进行快速处理,这为数据流的高效处置提供了技术支持。但HDFS对于实时数据流的适应性差,Map Reduce在分析实时数据流的过程中可能出现数据丢失、分析延迟等问题,导致Hadoop系统对于实时数据的处理效能不佳。二是构建统一的云计算平台,它集成了Hadoop和Spark的应用优势,即Hadoop能够进行数据批量操作,Spark善于进行数据收集。因此,本研究结合两种并行处理框架的优势,对海量的化工类交易数据进行处理。
1 系统整体架构设计
本文系统选用Spark和HBase框架,引用Flume、Kafka等技术进行数据传输,能够对易制毒化学品交易数据进行采集及分析,并利用可视化工具来展示数据分析结果。系统整体架构展示,如图1所示。
2 系统功能模块设计
本文开发的易制毒化学品数据分析系统包含数据分析模块,ETL模块,可视化模块,等3个功能模块,这3个功能能够对易制毒化学品交易数据进行提取、存储及分析,从而为用户提供信息支持,包括化学品价格走势、化学品交易现状等。具体如图2所示。
在图2的模块中,ETL模块是由数据采集子模块、数据转换子模块、数据存储子模块构成的,它整合了Spark Streaming、Kafka、Flume等多个组件,围绕用户的业务需求,利用Spark Streaming组件对交易数据进行筛选、转化等处理,最后将处理结果转存至HBase内。数据分析模块是由离线分析模块和实时分析模块构成的,前者从HBase中提取出历史交易数据,然后利用Spark ML对其进行模型训练,最终实现了价格预测的功能;后者遵循面向场景的原则,对ETL模块的处理数据进行更深层次的数据分析。
3 功能模块详细设计
3.1 ETL模块设计
易制毒化学品数据分析系统不仅要处理传统事务性数据,而且对接于多种类型的数据源,在系统运作过程中面向大量的数据流。另外,出于现实应用的考虑,用户对于ETL模块的数据分析速度提出了更高要求,“准实时服务”已然成为ETL模块的设计目标。因此,将ETL模块分为数据采集,数据转换,数据存储,等3个子模块,具体技术架构如图3所示。
在抽取过程中,由数据采集模块对Oracle存储的易制毒化学品交易数据进行处理,Flume与Kafka对接,Spark Streaming直接对接于Kafka。Spark内置了针对不同数据源的reader,用于对接收到的数据流进行连接和采集,然后将它们发送至数据转換层,Spark内置了多样化的数据转换操作算子,尤其在Scala库的配合下,可以实现数据清洗、数据转换等功能。在完成数据格式转换以后,数据输出层内置的writer将转换后的数据传输至HBase。
3.2 数据分析模块设计
数据分析模块的主要功能是对ETL模块输出的数据信息进行分析和统计,这一过程并不会影响系统整体的运算效率,也不会对系统稳定性造成干扰。因此,本文在设计中,首先设定了实时数据统计分析的时间间隔,从而为用户提供具有时效性的当期统计结果。Spark Streaming是实时分析模块的内核,它集成了基于Scala语言的数据清洗、统计、转换等代码,能够对Kafka输出的实时数据流进行处理分析,并将分析结果经由maven传输给集群服务器,相关信息被存储于HBase内,可以为用户提供查询服务。具体步骤如图4所示。
3.3 回归预测模型构建
3.3.1 预测流程
易制毒化学品数据分析系统具备短期预测和结果展示的功能。围绕价格预测的目标,首先调用ETL模块数据进行训练,然后将训练得到的结果存储在非结构化数据库中,以此为后续的查询等奠定基础。具体预测训练流程如图5所示。
3.3.2 基于保序回归的预测模型构建
保序回归指的是对单调函数空间内给定数据的回归分析过程,其优势在于拟合误差最小化。保序回归算法是:
4 实验验证
4.1 环境搭建与参数设置
为验证回归预测算法的应用成效,通过试验的方式进行验证。在本次实验中,首先采集某市在2018.03.01~2018.12.31期间的丙酮交易数据,然后按照交易时间对原始数据集进行划分,包括3~12月、5~12月、7~12月、9~12月、10~12月、11~12月等6个批次,然后分批进行测试。另外,依据“80/20法则”,将前80%的数据集选做训练集,将后20%的数据集充当测试集。
考虑到丙酮价格的整体走势是递减的,据此对保序回归模型进行参数设定,如表1所示。
实验步骤如表2所示。
本次实验是在3节点的分布式Spark集群环境下进行的,集群节点配置条件如表3所示。
系统开发环境:Javal.8.0-172+Scala2.11.8+Spark2.2.0。
4.2 仿真结果
实验结果展示如图6所示。
根据图6可知,相较于基于线性回归的价格预测模型和基于逻辑回归的价格预测模型,本文提出的基于保序回归的价格预测模型的评估结果MSE值更小,尤其在数据集数量不足的情况下,保序回归算法仍然能够实现较小的均方误差,这充分证明了本文模型的应用优势。
5 结语
通过上述的研究,文章搭建的大数据算法能很好的运行和利用当前的易制毒化学品数据,并能较好的预测易制毒化学品的价格,从而为更好的利用这些易制毒化学品交易数据提供了参考和建议。但本研究的设计还只是初步构建,更多系统功能还有待进一步完善。
参考文献
[1]刘昕林,邓巍,黄萍,等.基于Hadoop和Spark的可扩展性大数据分析系统设计[J].自动化与仪器仪表,2020(03):132-136.
[2]陈彬.基于Hadoop框架的海量数据运营系统研究[J].自动化技术与应用,2020,39(03):178-181.
[3]陈家宇,胡建军.MobiWay应用中基于Hadoop的多目标多任务调度算法[J].计算机应用与软件,2020,37(02):240-247.
[4]韩德志,陈旭光,雷雨馨,等.基于Spark Streaming的实时数据分析系统及其应用[J]. 计算机应用,2017,37(05):1263-1269.
[5]袁泉,常伟鹏.基于Hadoop平台的图书推荐服务Apriori优化算法[J].现代电子技术,2019,42(01):180-182.
[6]李爽,陈瑞瑞,林楠.面向大数据挖掘的Hadoop框架K均值聚类算法[J].计算机工程与设计,2018,39(12):3734-3738.
[7]晏依,徐苏.Hadoop环境下基于并行熵的FIUT算法挖掘[J].计算机工程与设计,2019,40(03):685-690+787.
[8]华幸成.面向大数据处理的应用性能优化方法研究[D].杭州:浙江大学,2019.
[9]尹旭熙.基于大数据分析技术的多源监控信息挖掘方法研究[J].电子设计工程,2020,28(17):52-55+60.
[10]孙啸,李双琴,谢锐,等.基于大数据管理架构的油气管道数据监测分析模型[J].现代电子技术,2020,43(17):102-105.