如何提高基于hadoop数据挖掘算法的计算精准度

2018-03-02 00:28林明方
软件 2017年9期
关键词:分布式计算应用层精准度

林明方

摘要:数据挖掘是从模糊、随机的庞大数据库提取出含有潜在有用信息和知识的非平凡过程,随着计算机技术的不断提高以及云存储的开发,从物理、生物、政治、经济甚至是人们息息相关的日常生活,对数据的存储能力和使用能力的要求都开始显著提高。基于大数据下的网络信息挖掘开始受到各个领域的普遍关注和使用。高精准度的数据挖掘技术已经在现代社会的诸多领域中被广泛使用,数据挖掘算法的计算精准度保证就成为了促进数据挖掘效果优化的重要组成。因此本文将基于hadoop的数据挖掘算法探讨如何提高数据挖掘的精准度。

关键词:hadoop数据挖掘算法;精准度;数据

O 引言

随着计算机技术的发展,互联网科技开始进入大数据时代,在全球范围内每分钟产生的数据量呈现爆炸性增长趋势,一方面对数据的存储提出了新要求,另一方面,如何在庞大的数据库中挖掘出有用的相关信息也是对数据挖掘技术的关键问题。云计算的出现,为数据挖掘技术的革新创造了良好的条件,数据挖掘计算的成本在云计算强大的计算能力、庞大的存储能力以及专业的管理能力的帮助下,得到了极大程度的节约,同时挖掘准确程度更加精准,处理速度得到了显著提升,数据挖掘的效率也能得到进步,能够有效解决数据挖掘技术的许多难题。

1 hadoop算法特点

1.1 hadoop数据挖掘算法的概念

数据挖掘是一种数据资料探勘的过程,一般而言,数据挖掘即是一种数据库知识发现的过程,从大量的、繁琐的、无用的数据中通过算法搜索隐藏信息,并最终用于统计分析、分析处理以及学习等过程中。Hadoop就是一种典型的大数据计算工具,也是一种重要的数据挖掘工具,云计算平台的Apache开源项目用它来构建,并在Apache开源项目的基础上实现分布式计算平台。由于此项目的分布式计算平台在hadoop数据挖掘算法中已经非常稳定,且在很多领域中都有所应用。在hadoop平台上,分布式计算和文件存储分别由MapReduce编程模型和HDFS分布式文件系统来实现。在hadoop平台中继续采用传统的数据挖掘算法,进而实现大规模数据的挖掘任务。作为Apache -个即将开源的项目:Mahout,它在提供使用MapReduce编程模型完成的机器学习和数据挖掘算法的同时,能有效提升创建智能应用程序的效率,为开发人员减少负担。。

1.2 hadoop数据挖掘算法的优势

在设计上,Hadoop致力于可拓展性、可靠性、有效性和容错性的高度建设,这些设计上的优点将决定Hadoop的地位,注定Hadoop将是受欢迎的,实际也被众多公司所采用,而且在研究界也是大放异彩。重要的是,hadoop具有高可靠性,hadoop通过维护多个工作数据副本保证数据分析过程中假设计算元素和储存的失败节点进行重新分布和处理。同时,hadoop分配数据和完成计算任务是在可用的计算机集簇间完成的,hadoop的高扩展性使这些集簇如同一滴墨水,可以轻松扩展到庞大数目的节点汪洋中。

1.3 hadoop的核心结构

hadoop由许多元素构成。如果将hadoop比作一顿大厦,用来存储hadoop集群中所有存储节点上的文件的hadoop Distributed File System( HDFS)为基层部分。中上部分由MapReduce引擎担任,MapReduce引擎由JobTrackers和TaskTrackers组成。hadoop分布式平台的所有技术核心主要包括两个部分:一是对最核心的分布式文件系统HDFS、MapReduce处理过程;二是基本介紹,包括对数据仓库T具Hive以及分布式数据库Hbase两个部分的介绍。

2 如何提高hadoop数据挖掘算法的计算精准度

传统的数据挖掘很难满足现阶段大数据处理效率的要求,以hadoop平台为代表的云计算技术应用解决了大数据挖掘的瓶颈。但是基于hadoop平台的数据挖掘算法并行化研究仍然存在一些亟待解决的问题。如何提高hadoop的数据挖掘精准度,是hadoop开发过程中的重要问题,在对典型的数据挖掘系统的分析和研究中,hadoop平台集群巨大的存储和计算能力具有强大的优势,我们可以利用这一优势来组建基于hadoop平台的数据挖掘系统。

2.1 设计思想简述

在传统的数据挖掘系统中,模块的计算量差异很大,有的需求很大,有的需求很小。在hadoop的应用中,可以充分利用hadoop的集群特征,利用集群强大的并行计算和存储能力,在进行数据挖掘工作时将其中需要巨大计算能力的各个模块的计算和存储要求扩展到hadoop集群中的各个节点上以便提高算法的精准度。设计思想采用逐层渐进的设计方式。庞大的数据量使用hadoop来存储、分析和处理,处理过的数据作为底层,在它的上层数据的处理直接调用底层的处理数据。其流程如下:

(1)存储

我们采用HDFS来存储整个系统中的文件和数据。HDFS的优点在于具有很高的数据吞吐量,并且也具有很好的容错机制。HDFS具有API以及各种访问命令的多种访问接口。使用HDFS可以使输入输出都在HDFS中进行,输入数据如数据预处理、数据挖掘过程的输入。同时,使用HDFS可以为我们提供大量的存储空间,方便对原始大数据以及临时文件的处理。

(2)计算

在系统中,我们可以使用MapReduce进行并行计算:将系统中大计算量数据的各个子模块任务分配到集群的各个节中实现并行计算。利用MapReduce良好的伸缩性和扩展性,通过它提供的编程接口以及屏蔽多余数据的有点可以实现各种算法的并行模式。实现的过程中HDFS必不可少。

2.2 系统结构模型介绍

在逐层渐进的思想指引下,白上带下,每层都透明的调用下层接口,最上层是用于用户与系统交互的交互层,最下层是用来实现文件分布式存储和并行计算功能的分布式计算层,靠hadoop来得以实现。勇敢使用逐层渐进的方式,各层之间互不影响,有利于系统的拓展与运行。以下是对基于hadoopd的挖掘系统做个详细的介绍:endprint

(1)交互层

这层主要负责系统与用户的交互。通过详细、表现形式优良的界面窗口,让用户可以轻松的查看定制各种业务,并能详细了解或者保存各种输出结果。

(2)业务应用层

在业务应用层中主要提供的是各种业务逻辑,以及对各种业务流程的控制和调度。这一层主要用来处理用户提交的逻辑数据。例如用户在交互层提交的对特定数据完成分类挖掘的业务,就在这一层被处理。业务应用层通过调用数据挖掘算法层的多个模块来完成交互层提交的业务,并返回结果到交互层。业务应用层还控制和调度着数据挖掘平台中各个模块的执行。

(3)数据挖掘平台层

数据挖掘阶段的业务流需要多个模块组成,对于粒度的要求也较高,而数据挖掘平台层对数据的挖掘与预处理过程、对模式的评估以及对结果的展示等操作可以达到这些高要求,因此可以称作是整个系统的核心。数据挖掘平台层的主要任务在于实现各种任务过程中算法的并行化,将任务提交到hadoop分布计算层进行运算,最后将结果返回给业务应用层[10]。

(4)分布式计算平台层

在分布式计算平台层中,hadoop框架具备着集群存储、计算等方面的强大功能。它不仅提供了分布式文件系统和并行的运行模式,而且实现了对分布式系统的管理。只有在这种基础功能的条件下,我们在执行任务的过程中才能够完成提交的server。

2.3 具体功能模块功能

为了使系统中各层接受到的任务能够得到有序执行,每一层都有自己独特的功能模块,以下是对各层模块及其功能的介绍:

(1冱层:这一层具有的模块包括用户管理模块、业务模块与展示模块。用户管理模块可以识别用户身份并进行登录、注销等相应权限的设置与管理;业务模块可以满足用户需求的细粒度,完成用户提交的业务操作;展示模块可以查看用户的业务结果,并能够进行分析操作与保存操作,将最终分析结果再次传达给用户。

(2)务应用层:这一层具有的模块包括业务响应模块以及工作流模块。业务响应模塊主要用来响应上层的业务模块、调用与管理子业务模块与下层模块;工作流模块的运行目的是把具体的信息参数返还给上述的业务响应模块,主要是对业务进程进行监控与管理操作。

(3)据挖掘平台:这一层中包括的模块较多,具体有数据加载模块、结果存储模块、模式评估模块以及并行ETL模块。数据加载模块先把所需的数据进行注册,然后存储于HDFS文件系统;结果存储模块存储信息量较大,又称作知识库,主要是用来存放从过去到现在的挖掘模式;模式评估模块主要用来评估模式,其评估结果以备调用;并行ETL模块主要是对数据进行预处理操作,工作数据可以从HDFS文件中调用,处理完的结果将再次储存于HDFS文件,为挖掘过程进行数据清理,提取,转换和加载等操作。

(4)分布式计算层:hadoop框架自身具有强大的功能,包括HDFS,MapReduce运行模式、运算环境以及自动管理等模块。

3 总结

信息时代在快速发展,web2.0、大数据、云计算等新兴概念在不断涌现,并随着科技发展不断进行自我突破。通过结合数据挖掘与云计算各自的长处,能够在计算平台中提供强大的处理能力,其在现阶段强大的优势和在未来的潜能已成为行业的发展趋势。由于hadhoop高速的加速比和运行效率,大数据挖掘系统的关键部分正逐步被以hadoop为代表的分布式系统所取代,未来的发展潜力在计算能力的扩展性能中也得到了充分的体现。endprint

猜你喜欢
分布式计算应用层精准度
BH66F5355 增強型24-bit A/D MCU
让党建活动更加有“味”——礼泉县增强“两新”党建精准度
2017年IoT设备DDoS攻击更严重
论提高不动产产权保护精准度的若干问题
云计算中MapReduce分布式并行处理框架的研究与搭建
面向异构分布式计算环境的并行任务调度优化方法
新一代双向互动电力线通信技术的应用层协议研究
Current advances in neurotrauma research: diagnosis, neuroprotection, and neurorepair