龙空技术网

新手如何进入大数据领域,一篇文章让你熟知学习路线

微笑游戏建模师 101

前言:

目前看官们对“mahout算法解析与案例实战”大概比较珍视,兄弟们都想要知道一些“mahout算法解析与案例实战”的相关资讯。那么小编同时在网上网罗了一些对于“mahout算法解析与案例实战””的相关内容,希望各位老铁们能喜欢,兄弟们一起来了解一下吧!

最近很多人都想学习大数据开发,但是却不知道如何开始学习,今天专门整理了一份针对大数据初学者的大数据开发学习路线。

下面分十个章节来说明大数据开发要学习的内容:

以上就是一个大数据新手,想要学会大数据开发,需要学习的内容,大数据学习是一个持续的过程,想要了解更多的大数据开发相关的知识,

现在我们一起来看看学习路线:

第一阶段:Linux课程讲解Linux基础操作,讲的是在命令行下进行文件系统的操作,这是Hadoop学习的基础,后面的所有视频都是基于linux操作的。鉴于很多学员没有linux基础,特增加该内容,保证零linux基础入门。如果你从没有使用过linux,别担心,本节内容可以让你入门。Linux认识linux如何使用vmware安装linux镜像认识linux的桌面环境、shell环境在shell环境下进行文件系统的操作,掌握more、touch、cp、mv、rm等20多个常用

第一阶段:Linux课程讲解Linux基础操作,讲的是在命令行下进行文件系统的操作,这是Hadoop学习的基础,后面的所有视频都是基于linux操作的。鉴于很多学员没有linux基础,特增加该内容,保证零linux基础入门。如果你从没有使用过linux,别担心,本节内容可以让你入门。Linux认识linux如何使用vmware安装linux镜像认识linux的桌面环境、shell环境在shell环境下进行文件系统的操作,掌握more、touch、cp、mv、rm等20多个常用命令学习linux的网络管理,掌握ip、hostname等设置学习vmware与linux的通信设置,掌握如何实现host-only、bridge、nat等网络连接方式学习linux的进程管理,掌握如何查看、删除进程学习linux的软件管理,掌握java、mysql等安装学习环境变量配置,掌握如何设置环境变量学习linux的ssh管理,掌握如何实现免密码登录学习linux的防火墙管理,掌握如何关闭防火墙及开放指定端口学习linux的调度管理,掌握crontab的使用

第二阶段:hadoop2课程

搭建伪分布实验环境: 本节是最基本的课程,属于入门级别,主要讲述在linux单机上面安装hadoop的伪分布模式,在linux集群上面安装hadoop集群。对于不熟悉linux的同学,课程中会简单的讲解常用的linux命令。这两种是必须要掌握的。通过现在的教学发现,很多同学并不能正确的配置环境。

搭建伪分布实验环境

Hadoop概念、版本、历史Hadoop和核心组成介绍及hdfs、mapreduce体系结构Hadoop的集群结构Hadoop伪分布的详细安装步骤如何通过命令行和浏览器观察hadoop

介绍HDFS体系结构及shell、Java操作方式: 本节是对hadoop核心之一——hdfs的讲解。hdfs是所有hadoop操作的基础,属于基本的内容。对本节内容的理解直接影响以后所有课程的学习。在本节学习中,我们会讲述hdfs的体系结构,以及使用shell、java不同方式对hdfs的操作。在工作中,这两种方式都非常常用。学会了本节内容,就可以自己开发网盘应用了。在本节学习中,我们不仅对理论和操作进行讲解,也会讲解hdfs的源代码,方便部分学员以后对hadoop源码进行修改。最后,还要讲解hadoop的RPC机制,这是hadoop运行的基础,通过该节学习,我们就可以明白hadoop是怎么明白的了,不必糊涂了,本节内容特别重要。

介绍HDFS体系结构及

shell、java操作方式

Hdfs体系结构详述NameNode、DataNode、SecondaryNameNode体系结构如果保证namenode的高可靠Datanode中block的划分原理和存储方式如何修改namenode、datanode数据存储位置如何使用命令行操纵hdfs如何使用java操作hdfs介绍rpc机制通过查看源码,知晓hadoop是建构在rpc之上的通过查看hdfs源码,知晓客户端是如何与Namenode通过rpc通信的

介绍MapReduce体系结构及各种算法(1): 本节开始对hadoop核心之一——mapreduce的讲解。mapreduce是hadoop的核心,是以后各种框架运行的基础,这是必须掌握的。在本次讲解中,掌握mapreduce执行的详细过程,以单词计数为例,讲解mapreduce的详细执行过程。还讲解hadoop的序列化机制和数据类型,并使用自定义类型实现电信日志信息的统计。

介绍MapReduce体

系结构及各种算法(1)

Mapreduce原理Mapreduce执行的八大步骤详细讲述如何使用mapreduce实现单词计数功能详细讲述如何覆盖Mapper功能、如何覆盖Reducer功能。在各种hadoop认证中,这是考察重点详细讲述hadoop的自定义类型Writable接口通过电信上网日志实例讲述如何自定义hadoop类型实例讲述hadoop1的各种输入来源处理器,包括数据库输入、xml文件、多文件输入等,并且讲解如何自定义输入来源处理器实例讲述hadoop1的各种输出来源,包括数据库输出、文件输出等,并且讲解如何自定义输出来源处理器,实现自定义输出文件名称通过源码讲述hadoop是如何读取hdfs文件,并且转化为键值对,供map方法调用的

介绍MapReduce体系结构及各种算法(2): 本节继续讲解mapreduce,会把旧api的用法、计数器、combiner、partitioner、排序算法、分组算法等全部讲解完毕。通过这两次课程学习,学员可以把整个mapreduce的执行细节搞清楚,把各个可扩展点都搞明白。本节内容在目前市面可见的图书、视频中还没有发现如此全面的哪。

介绍MapReduce体

系结构及各种算法(2)

讲解新旧api的区别,如何使用旧api完成操作介绍如何打包成jar,在命令行运行hadoop程序介绍hadoop的内置计数器,以及自定义计数器介绍合并(combiner)概念、为什么使用、如何使用、使用时有什么限制条件介绍了hadoop内置的分区(partitioner)概念、为什么使用、如何使用介绍了hadoop内置的排序算法,以及如何自定义排序规则介绍了hadoop内置的分组算法,以及如何自定义分组规则介绍了mapreduce的常见应用场景,以及如何实现mapreduce算法讲解如何优化mapreduce算法,实现更高的运行效率

第三阶段:zookeeper课程本节内容与hadoop关系不大,只是在Hbase集群安装时才用到。但是,zookeeper在分布式项目中应用较多。

zookeeper

Zookeeper是什么搭建zookeeper集群环境如何使用命令行操作zookeeper如何使用java操作zookeeper

第四阶段:HBase课程hbase是个好东西,在以后工作中会经常遇到,特别是电信、银行、保险等行业。本节讲解hbase的伪分布和集群的安装,讲解基本理论和各种操作。我们通过对hbase原理的讲解,让大家明白为什么hbase会这么适合大数据的实时查询。最后讲解hbase如何设计表结构,这是hbase优化的重点。

HBase

hbase的概述hbase的数据模型hbase的表设计hbase的伪分布式和集群安装hbase的shell操作hbase的JavaAPI操作hbase的数据迁移hbase的数据备份及恢复Hbase结合Hive使用hbase的集群管理hbase的性能调优

第五阶段:CM+CDH集群管理课程由cloudera公司开发的集群web管理工具cloudera manager(简称CM)和CDH目前在企业中使用的比重很大,掌握CM+CDH集群管理和使用 不仅简化了集群安装、配置、调优等工作,而且对任务监控、集群预警、快速定位问题都有很大的帮助。

CM+CDH集群管理

CM + CDH集群的安装基于CM主机及各种服务组件的管理CDH集群的配置和参数调优CDH集群HA配置及集群升级CM的监控管理集群管理的注意事项

第六阶段:Hive课程在《hadoop1零基础拿高薪》课程中我们涉及了Hive框架内容,不过内容偏少,作为入门讲解可以,但是在工作中还会遇到很多课程中没有的。本课程的目的就是把Hive框架的边边角角都涉猎到,重点讲解Hive的数据库管理、数据表管理、表连接、查询优化、如何设计Hive表结构。这都是工作中最急需的内容,是工作中的重点。

Hive的概述、安装

与基本操作

大家习惯把Hive称为hadoop领域的数据仓库。Hive使用起来非常像MySQL,但是比使用MySQL更有意思。我们在这里要讲述Hive的体系结构、如何安装Hive。还会讲述Hive的基本操作,目的是为了下面的继续学习。(理论所占比重★★★ 实战所占比重★★)

Hive支持的数据类型

Hive的支持的数据类型逐渐增多。其中复合数据类型,可以把关系数据库中的一对多关系挪到Hive的一张表中,这是一个很神奇的事情,颠覆了我们之前的数据库设计范式。我们会讲解如何使用这种数据类型,如何把关系数据库的表迁移到Hive表。(理论所占比重★★ 实战所占比重★★★)

Hive数据的管理

我们总拿Hive与MySQL做类比。其中,Hive对数据的操作方法是与MySQL最大的不同。我们会学习如何导入数据、导出数据,会学习如何分区导入、如何增量导入,会学习导入过程中如何优化操作等内容。这部分内容是工作中使用频率最高的内容之一。(理论所占比重★ 实战所占比重★★★★)

Hive的查询

这部分内容讲解Hive查询语句的基本结构,重点讲解表连接。其中,有一些我们原来不知道的语法如left semi-join、sort by、cluster by等。这部分也在工作中用的是最多的内容之一。(理论所占比重★★ 实战所占比重★★★)

Hive的函数

Hive是对查询语法的扩充,Hive运行我们非常方便的使用java来编写函数,特别方便。我们除了简单介绍常见的单行函数、聚合函数、表函数之外,还会介绍如何自定义函数。这样,我们就可以扩充原有函数库,实现自己的业务逻辑。这是体系我们能力的好地方!(理论所占比重★★★ 实战所占比重★★)

Hive的文件格式

Hive的存储除了普通文件格式,也包括序列化文件格式和列式存储格式。讲解分别如何使用他们,已经何种场景下使用他们。最后讲解如何自定义数据存储格式。(理论所占比重★★★ 实战所占比重★★)

Hive的性能调优

终于来到性能调优部分。学习大数据加扣群80512加7855 我们会讲解本地模式、严格模式、并行执行、join优化等内容。通过实验对比发现优化手段的价值所在。这是整个课程的精华,也是我们以后工作能力的最重要的体现。(理论所占比重★ 实战所占比重★★★★)

项目实战

我们会通过一个电信项目来把前面的内容综合运用起来。这是一个来自于真实工作环境的项目,学习如何使用各个知识点满足项目要求。并有真实数据提供给大家,供大家课下自己练习。(理论所占比重★ 实战所占比重★★★★)

杂记

包括一些琐碎知识点,比如视图、索引、与HBase整合等。这些不好归入前面的某个章节,单独列出。并且根据学员就业面试情况,也不会不断增补内容。(理论所占比重★★★ 实战所占比重★★)

第七阶段:Sqoop课程sqoop适用于在关系数据库与hdfs之间进行双向数据转换的,在企业中,非常常用。

Sqoop

Sqoop是什么实战:讲解Sqoop如何把mysql中的数据导入到hdfs中实战:讲解Sqoop如何把hdfs中的数据导出到mysql中Sqoop如何做成job,方便以后快速执行

第八阶段:Flume课程Flume是cloudera公布的分布式日志收集系统,是用来把各个的服务器中数据收集,统一提交到hdfs或者其他目的地,是hadoop存储数据的来源,企业中非常流行。

Flume

Flume是什么详细Flume的体系结构讲述如何书写flume的agent配置信息实战:flume如何动态监控文件夹中文件变化实战:flume如何把数据导入到hdfs中实战:讲解如何通过flume动态监控日志文件变化,然后导入到hdfs中

第九阶段:Kafka课程Kafka是消息系统,类似于ActiveMQ、RabbitMQ,但是效率更高。

Kafka

kafka是什么kafka体系结构kafka的安装kafka的存储策略kafka的发布与订阅使用Zookeeper协调管理实战:Kafka和Storm的综合应用

第十阶段:Storm课程Storm是专门用于解决实时计算的,与hadoop框架搭配使用。本课程讲解Storm的基础结构、理论体系,如何部署Storm集群,如何进行本地开发和分布式开发。通过本课程,大家可以进入到Storm殿堂,看各种Storm技术文章不再难,进行Storm开发也不再畏惧。

Storm

Storm是什么,包括基本概念和应用领域Storm的体系结构、工作原理Storm的单机环境配置、集群环境配置Storm核心组件,包括Spout、Bolt、Stream Groupings等等Storm如何实现消息处理的安全性,保证消息处理无遗漏Storm的批处理事务处理实战:使用Storm完成单词计数等操作实战:计算网站的pv、uv等操作

第十一阶段:Redis课程Redis是一款高性能的基于内存的键值数据库,在互联网公司中应用很广泛。

Redis

redis特点、与其他数据库的比较如何安装redis如何使用命令行客户端redis的字符串类型redis的散列类型redis的列表类型redis的集合类型如何使用java访问redisredis的事务(transaction)redis的管道(pipeline)redis持久化(AOF+RDB)redis优化redis的主从复制redis的sentinel高可用redis3.x集群安装配置

第十二阶段:Scala课程Scala是学习Spark的必备基础语言,必须要掌握的。

Scala

scala解释器、变量、常用数据类型等scala的条件表达式、输入输出、循环等控制结构scala的函数、默认参数、变长参数等scala的数组、变长数组、多维数组等scala的映射、元祖等操作scala的类,包括bean属性、辅助构造器、主构造器等scala的对象、单例对象、伴生对象、扩展类、apply方法等scala的包、引入、继承等概念scala的特质scala的操作符scala的高阶函数(这是重点,spark的原代码几乎全是高阶函数)scala的集合

第十三阶段:Spark课程学习大数据加QQ群:805127855Spark是一款高性能的分布式计算框架,传言比MapReduce计算快100倍,本课程为你揭秘。

Spark

Spark入门Spark与Hadoop的比较Spark环境搭建实战:使用Spark完成单词计数Spark缓存策略Spark的transformation和actionSpark的容错机制Spark的核心组件Spark的各种RDDSpark的流计算

第十四阶段:Oozie课程oozie是Hadoop生态系统中比较重要的框架,在系统中扮演的角色是工作流引擎服务器,用于运行Hadoop Map/Reduce任务工作流(包括MR、Hive、Pig、Sqoop等),企业中多由于整个项目流程任务调度。

Oozie

Oozie入门介绍Oozie安装配置及其简单操作hPDL语言学习及流程定义oozie工作流配置及元数据库定义oozie定时任务调度和oozie API操作

第十五阶段:Impala课程Impala是Cloudera公司参照 Google Dreme系统进行设计并主导开发的新型查询系统,它提供复杂SQL语义,能查询存储在Hadoop的HDFS和HBase中的PB级大数据。

Impala

Impala及其架构介绍Impala使用方法Impala配置及其调优Impala项目应用Impala和spark SQL对比

第十六阶段:Kettle课程Kettle是一款国外开源的ETL工具,纯java编写,可以在Window、Linux、Unix上运行,数据抽取高效稳定。ETL是指数据的抽取(extract)、转换(transform)、加载(load)至目的端。

Kettle

kettle简介windows开发环境的搭建和使用linux下服务器的搭建和使用资源库、变量、共享库的配置kettle常用组件kettle的应用案例

第十七阶段:Ganglia课程Ganglia是一个对于数以万计的节点的各个指标的图表监控框架,提供完整的一套图形监控界面,支持C、C++、Python扩展自定义指标和用户视图。

Ganglia

ganglia的基本原搭建和使用ganglia监控服务器的指标配置和使用ganglia监控大数据hadoop和habase集群、flume监控编写和使用自定义指标

第十八阶段:Tachyon课程Tachyon是一个开源分布式内存存储系统,拥有高性能、高容错等优点。并具有类Java的文件API、插件式的底层文件系统、兼容Hadoop MapReduce和 Apache Spark 等特征。Tachyon能够为集群框架(如Spark、MapReduce等)提供内存级速度的跨集群文件共享服务,官方号称最高比HDFS吞吐量高300倍。

Tachyon

Tachyon简介Tachyon架构详解Tachyon安装Tachyon参数配置Tachyon结合Hadoop使用Tachyon结合Spark使用

第十九阶段:Solr课程

Solr简介Solr安装部署Solr example详解solr配置信息详解solr fact查询solr复杂查询自定义中文分词工具和词库使用solrj实现java操作solrsolr高亮组件solr优化solr主从结构部署solrcloud集群安装部署solr实现应用

第二十阶段:elasticsearch课程elasticsearch

elasticsearch简介elasticsearch和solr的对比elasticsearch安装部署elasticsearch service wrapper启动插件使用curl操作elasticsearch索引库elasticsearch DSL查询elasticsearch批量查询meetelasticsearch批量操作bulkelasticsearch插件介绍elasticsearch配置文件详解java操作elasticsearchelasticsearch的分页查询elasticsearch中文分词工具的集成elasticsearch优化elasticsearch集群部署

第二十一阶段:多线程课程多线程

线程管理线程的同步,包括使用synchronized、lock、定时器、信号量等线程池的创建和管理并发集合的使用

第二十二阶段:Java虚拟机优化课程Java虚拟机优化

认识jvmjava 内存区域与内存的分配垃圾收集器与回收机制虚拟机性能监控与故障处理常用工具线程安全与锁优化大数据中的jvm 优化

第二十三阶段:Python课程Python

Python 简介Python 基本语法使用 Python 写 MapReduce 程序、Spark 程序

第二十四阶段:Mahout课程Mahout是数据挖掘和机器学习领域的利器,本课程是带领大家进入到这个领域中。课程内容包括Mahout体系结构介绍、Mahout如何在推荐、分类、聚类领域中使用。

Mahout

Mahout是什么,有哪些应用场景Mahout机器学习环境的搭建和部署Mahout中支持哪些高大上的算法使用Mahout完成推荐引擎实战:实现基于web访问的推荐程序什么是聚类基于Mahout的常见聚类算法,如k-means算法实战:学习大数据加扣群80512加7855实现新闻内容的聚类什么是分类分类的工作原理提取特征构建分类器实战:构建分类服务器

第二十五阶段:实战项目xx论坛日志分析(录播): 该项目的数据来自于黑马程序员()论坛的日志,该项目是为本课程量身定做的,非常适合我们hadoop课程学习。有的同学觉得应该介绍更多项目,其实做过几个项目后,就会发现项目的思路是相同的,只是业务不同而已。大家写过这个项目后,就对hadoop的各个框架在项目中是如何使用的,有个比较清晰的认识,对hadoop与javaEE结合有个比较清晰的认识了。

注:很多学员进入公司后发现,公司中大部分hadoop日志分析项目,都是该项目的开发过程,千真万确!

xx论坛日志分析(录播)

项目背景介绍数据规模介绍业务关键指标介绍使用flume把日志数据导入到hdfs中编写MapReduce代码进行数据清洗使用hbase存储明细日志,实现基于ip查询使用hive对数据进行多维分析使用sqoop把hive分析结果导出到MySQL中

互联网电商爬虫项目: 该项目使用分布式爬虫爬取互联网各大电商网站商品数据,前台实现对数据的快速精准查询和商品对比。

互联网电商爬虫

商品页面抓取和解析分布式爬虫设计细节分析url链接和页面内容如何存储分布式爬虫监控功能爬虫频繁爬取数据ip被封问题解决方案分析爬取失败url如何处理抓取需要登录的网站数据使用solr实现海量数据精准查询使用hbase实现海量数据快速查询

高频数据实时流处理项目: 该项目实现对业务数据系统的高频日志数据进行实时收集和业务处理。

高频数据实时流处理

使用avro方式实现高频日志数据实时采集flume sink源码分析自定义kafkasink实现对收集的高频日志数据进行缓冲使用kafkaspout实现对kafka中的数据进行实时读取使用storm实时计算框架对日志数据进行分析处理flume和kafka的整合Kafka和storm的整合

国内排名前50名的某网站互联网日志分析项目: 通过大数据工具将互联网中的日志的采集、清洗、分析统计出常见的互联网指标;开发各种维度UV的分布报表、各个指标每日、月指标报表,用于对产品做出正确的决策,数据的正确性校对问题,临时性的图表的开发。

某网站互联网日志分析

使用hadoop、mapreduce、hive清理和分析UV、PV、登录、留存等常见指标使用storm实时分析充值、消费等的趋势各种维度的趋势对比、各个指标每日、月指标报表生成使用kettle数据的正确性校对问题和邮件报警

移动业务感知项目: 移动业务感知系统主要是利用hadoop集群强大的计算能力对移动的大批量离线话单数据进行分析,统计移动用户使用移动业务(流量套餐、话费套餐、铃声套餐等)情况,达到感知用户行为和使用习惯,确定移动业务推广走向的一套系统小编有整理好2018年的大数据学习资料,在下方可以看到!

1.入门资料 2.进阶教程 3.web框架 4.爬虫开发 5.图形图像 6.数据分析 7.机器学习 8.人工智能

《获取方式》:关注!转发!私信回复:资料即可免费获取

标签: #mahout算法解析与案例实战