学习hadoop开发好还是学习数据挖掘好

Hadoop只是一个大数据的处理框架是┅门技术。学习门槛稍低会JAVA,会Linux了解JVM,知道同步通信等一些计算机基础知识 ,然后学起来基本不会有问题
的范畴非常大,这个领域非常火但也面临着非常大的挑战,与密切相关,想学习这个不但需要一定的基础(比如数学功底),而且需要恒心耐力。

Mahout 仅提供一些java的算法包通过Mahout执行這些算法包,并把hdfs上的文件作为输入可以在hadoop上做分布式计算

提供了常用算法的程序库可以基于分布式做数据挖掘.

回归算法:用于预测(日期交易量预测等等)。


比如身高和体重作为x,y坐标给出一组人的身高体重,形成作为图上的一个个点(学习集),
计算出一条直线或者抛物曲线,能夠离所有点综合距离最小
那么可以任意给出身高,根据给出的曲线预测出相应的体重

依据以往的数据样本,做出一个分类器(或者说分類函数)对现有的数据进行分类。

贝叶斯分类器 概率分类器

根据数据的共同特性进行归类。

比如动物的进化树通过分析DNA做聚类,可以計算出哪些生物是有亲缘关系

依据以往数据样本,计算出物品共同出现的概率。

R,SAS,SPSS等典型应用场景为实验室工具


处理的数据需要先读入内存因此数据量受限于内存,无法处理海量数据
使用Oracle数据等处理海量数据,但缺乏有效快速专业分析功能
可以采用抽样等方法,但有局限性比如聚类,推荐系统无法使用抽样

Mahout的主要目的是实现可伸缩的机器学习算法(就是算法的M-R化)

Hadoop发展到今天家族产品已经非常丰富能够满足不同场景的大数据处理需求。作为目前主流的大数据处理技术市场上很多公司的大数据业务都是基于Hadoop开展,而且对很多场景已经具有非常成熟的解决方案

作为开发人员掌握Hadoop及其生态内框架的开发技术,就是进入大数据领域的必经之路

下面详细介绍一下,學习Hadoop开发技术的路线图

Hadoop本身是用java开发的,所以对java的支持性非常好但也可以使用其他语言。

下面的技术路线侧重数据挖掘方向因为Python开發效率较高所以我们使用Python来进行任务。

因为Hadoop是运行在Linux系统上的所以还需要掌握Linux的知识。

第一阶段:Hadoop生态架构技术

Java:掌握javase知识多理解和實践在Java虚拟机的内存管理、以及多线程、线程池、设计模式、并行化就可以,不需要深入掌握

Linux:系统安装(命令行界面和图形界面)、基本命令、网络配置、Vim编辑器、进程管理、Shell脚本、虚拟机的菜单熟悉等等。

Python:基础语法数据结构,函数条件判断,循环等基础知识

這里介绍在windows电脑搭建完全分布式,1主2从

我要回帖

 

随机推荐