java实现+hadoop工业大数据相关项目实践(一)

一、问题描述:

1)随着各类数据、日志的迅速增长,无论在互联网、医学还是工业领域,普通的计算机存储空间不易扩展,数据易丢失等问题也越来越凸显,这也正是目前大数据技术在互联网、医学、工业方面应用越来越多的原因。本人硕士生一枚,针对研究课题也遇到了类似的问题:所用的采集传感器灵敏度每对每秒可采集1000万个事件,那么数十对传感器经过长时间的采集,单次实验获取的数量非常大,常常达到上百G,针对传统的借助算法将三维空间数据近似到二维空间,尽管降低了数据量,但是丢失了重要三维信息,同时数据的后期处理重建过程对单台计算机的要求过高。

 

2)导师提出测试探测系统重复性好坏的需求,经过资料搜集与自学,考虑了基于大数据技术的方案,供各位读者参考学习:通过计算多次相同实验条件下,获取到的三维响应线(理解成两个传感器的连线)在每个位置的概率分布(同样位置下的响应线计数),来判断探测系统的重复性是否良好,若重复性能好,这样即使传感器出现误差,能够通过修正实现精确测量。

 


二、涉及的技术:

maven工具,java(基础和GUI开发),

hadoop生态系统(HDFS,Mapreduce,Yarn,Hive),

后期三维成像计算实时性(hadoop+spark)

三、数据获取与数据格式:

1)通过UDP协议将数据传输采集至上位机,解析得到能量、时间和位置(晶体编号表示)信息(这些传感器采集量具体概念不需要明白)

2)输入文件为文本格式,以“ ,”分割(此处用单个文件作为演示,包含1000万数据)

能量(300,700)

时间(0-100万微秒)

位置(0-100)

java实现+hadoop工业大数据相关项目实践(一)_第1张图片

 


 

四:具体流程:

1)将数据上传至HDFS,通过mapreduce计算框架的maptask,获取时间差在5微秒(时间分辨率为1微秒,5倍左右)的两个事件认为是一对符合事件,将两者编号作为Key,value为1输出,最终经过;reducetask进行统计输出   由于响应线没有方向,与两者的编号无关,所以认为规定形成key时将编号小的放在前,大的在后,以冒号隔开

 

五:建立Maven工程,配置pom.xml文件

Maven项目管理项目对象模型(POM),可以通过一小段描述信息来管理项目的构建,非常方便。

添加实现客户端依赖,可以在window下对hadoop进行访问

java实现+hadoop工业大数据相关项目实践(一)_第2张图片

 

具体的代码实现将在后续文章给出,望各位读者对发现的问题批评指正。 

 

 

你可能感兴趣的:(hadoop,Java)