大数据学习路径前言阶段:什么是大数据?什么是人工智能?第一阶段:linux 系统第二阶段:大型网站高并发处理第三阶段:Hadoop 分布式文件系统:HDFS第四阶段:Hadoop 分布式计算框架:Mapreduce第五阶段:Hadoop 离线体系:Hive第六阶段:Hadoop 离线计算体系:Hbase第七阶段:Zookeeper 开发第八阶段:elasticsearch 分布式搜索第九阶段:CDH 集群管理第十阶段:Storm 实时数据处理第十一阶段:Redis 缓存数据库第十二阶段:Spark 核心部分:Spark Core第十三阶段:机器学习第十四阶段:机器学习:推荐系统项目第十五阶段:面试和成功求职的秘技转发文章+私信小编(教程)即可获得以下教程!第十六阶段:入职后快速成长到CTO第一阶段linux+搜索+hadoop体系Linux基础→shell编程→高并发架构→lucene,solr搜索→hadoop体系→HDFS→mapreduce→hbase→zookeeper→hive→flume→sqoop→项目实战一第二阶段机器学习R语言→mahout→项目实战二第三阶段storm流式计算kafka→storm→redis→项目实战三第四阶段spark内存计算scala编程→spark core→spark sql→spark streaming→spark mllib→spark graphx→项目实战四→python机器学习→spark python编程→项目实战五→项目实战六第五阶段云计算平台docker→kvm→openstack云计算→就业指导第一阶段:linux+搜索+hadoop体系Linux大纲这章是基础课程,帮大家进入大数据领域打好Linux基础,以便更好地学习Hadoop,hbase,NoSQL,Spark,Storm,docker,kvm,openstack等众多课程。因为企业中无一例外的是使用Linux来搭建或部署项目。1) Linux的介绍,Linux的安装:VMware Workstation虚拟软件安装过程、CentOS虚拟机安装过程2) 了解机架服务器,采用真实机架服务器部署linux3) Linux的常用命令:常用命令的介绍、常用命令的使用和练习4) Linux系统进程管理基本原理及相关管理工具如ps、pkill、top、htop等的使用;5) Linux启动流程,运行级别详解,chkconfig详解6) VI、VIM编辑器:VI、VIM编辑器的介绍、VI、VIM扥使用和常用快捷键7) Linux用户和组账户管理:用户的管理、组管理8) Linux磁盘管理,lvm逻辑卷,nfs详解9) Linux系统文件权限管理:文件权限介绍、文件权限的操作10) Linux的RPM软件包管理:RPM包的介绍、RPM安装、卸载等操作11) yum命令,yum源搭建12) Linux网络:Linux网络的介绍、Linux网络的配置和维护13) Shell编程:Shell的介绍、Shell脚本的编写14) Linux上常见软件的安装:安装JDK、安装Tomcat、安装mysql,web项目部署大型网站高并发处理通过本章的学习大家将会了解大数据的源头,数据从何而来,继而更好的了解大数据。并且通过学习何果处理大型网站高并发问题反向更深入的学习了Linux,同时站在了更高的角度去触探了架构。1) 第四层负载均衡a) Lvs负载均衡i. 负载算法,NAT模式,直接路由模式(DR),隧道模式(TUN)b) F5负载均衡器介绍2) 第七层负载均衡a) Nginx b) Apache3) Tomcat、jvm优化提高并发量4) 缓存优化a) Java缓存框架i. Oscache,ehcacheb) 缓存数据库i. Redis,Memcached5) Lvs+nginx+tomcat+redis|memcache构建二层负载均衡千万并发处理6) Haproxy7) Fastdfs小文件独立存储管理8) Redis缓存系统a) Redis基本使用 b) Redis sentinel高可用 c) Redis好友推荐算法Lucene课程在大数据里面文本数据的搜索是很重要的一块,特别是里面的分词技术,是后面机器学习里面文本挖掘的基石,我们需要深入学习java领域里面的搜索核心技术lucene,同时也可以了解到百度 google这样的搜索系统是怎么架构实现的。1) Lucene介绍2) Lucene 倒排索引原理>3) 建索引 IndexWriter4) 搜索 IndexSearcher5) Query6) Sort和 过滤 (filter)7) 索引优化和高亮Solr课程接着前面lucene技术搜索,如果把lucene技术比如为发动机,那solr就是一两成型的汽车了。学习完solr可以帮助你在企业里面快速的架构搜索系统。首先Solr是基于Lucene做的,Lucene是一套信息检索工具包,但并不包含搜索引擎系统,它包含了索引结构、读写索引工具、相关性工具、排序等功能,因此在使用Lucene时你仍需要关注搜索引擎系统,例如数据获取、解析、分词等方面的东西。而Solr的目标是打造一款企业级的搜索引擎系统,因此它更接近于我们认识到的搜索引擎系统,它是一个搜索引擎服务,通过各种API可以让你的应用使用搜索服务,而不需要将搜索逻辑耦合在应用中。而且Solr可以根据配置文件定义数据解析的方式,更像是一个搜索框架,它也支持主从、热换库等操作。还添加了飘红、facet等搜索引擎常见功能的支持。1) 什么是solr2) 为什么工程中要使用solr3) Solr的原理4) 如何在tomcat中运行solr5) 如何利用solr进行索引与搜索6) solr的各种查询7) solr的Filter8) solr的排序9) solr的高亮10) solr的某个域统计11) solr的范围统计12) solrcloud集群搭建Hadoop离线计算大纲一、初识hadoop 听过大数据,必听过hadoop,此部分带领大家了解hadoop的用途,在大数据中的用途,以及快速搭建一个hadoop的实验环境,在本过程中不仅将用到前面的Linux知识,而且会对hadoop的架构有深入的理解,并为你以后架构大数据项目打下坚实基础。1) Hadoop生态环境介绍2) Hadoop云计算中的位置和关系3) 国内外Hadoop应用案例介绍4) Hadoop 概念、版本、历史5) Hadoop 核心组成介绍及hdfs、mapreduce 体系结构6) Hadoop 的集群结构7) Hadoop 伪分布的详细安装步骤8) 通过命令行和浏览器观察hadoop二、 HDFS体系结构和shell以及java操作详细剖析HDFS,从知晓原理到开发网盘的项目让大家打好学习大数据的基础,大数据之于分布式,分布式学习从学习分布式文件系统(HDFS)开始。1) HDFS底层工作原理2) HDFS datanode,namenode详解3) Hdfs shell4) Hdfs java api三、 详细讲解MapreduceMapreduce可以说是任何一家大数据公司都会用到的计算框架,也是每个大数据工程师应该熟练掌握的,此处的学习除了老师详细的讲解理论外,会通过大量的案例让大家彻底掌握。1) Mapreduce四个阶段介绍2) Writable3) InputSplit和OutputSplit4) Maptask5) Shuffle:Sort,Partitioner,Group,Combiner6) Reducer四、 Mapreduce案例案例1) 二次排序2) 倒排序索引3) 最优路径4) 电信数据挖掘之—–移动轨迹预测分析(中国棱镜计划)5) 社交好友推荐算法6) 互联网精准广告推送 算法7) 阿里巴巴天池大数据竞赛 《天猫推荐算法》案例8) Mapreduce实战pagerank算法五、 Hadoop2.x集群搭建前面带领大家开发了大量的MapReduce程序,此部分将带来大家让开发的程序运行在分布式集群中,并且运行在健壮高可用的集群中。1) Hadoop2.x集群结构体系介绍2) Hadoop2.x集群搭建3) NameNode的高可用性(HA)4) HDFS Federation5) ResourceManager 的高可用性(HA)6) Hadoop集群常见问题和解决方法7) Hadoop集群管理分布式数据库Hbase大数据中使用Hbase的案例多的举不胜举,也可凸显大家学习的必要性。即使工作多年的大数据工程师Hbase的优化也是需要好好学习的重点。1) HBase定义2) HBase与RDBMS的对比3) 数据模型4) 系统架构5) HBase上的MapReduce6) 表的设计7) 集群的搭建过程讲解8) 集群的监控9) 集群的管理10) HBase Shell以及演示11) Hbase 树形表设计12) Hbase 一对多 和 多对多 表设计13) Hbase 微博 案例14) Hbase 订单案例15) Hbase表级优化16) Hbase 写数据优化17) Hbase 读数据优化数据仓库HiveHive是使用sql进行计算的hadoop框架,工作中最常用到的部分,也是面试的重点,此部分大家将从方方面面来学习Hive的应用,任何细节都将给大家涉及到。1) 数据仓库基础知识2) Hive定义3) Hive体系结构简介4) Hive集群5) 客户端简介6) HiveQL定义7) HiveQL与SQL的比较8) 数据类型9) 外部表和分区表10) ddl与CLI客户端演示11) dml与CLI客户端演示12) select与CLI客户端演示13) Operators 和 functions与CLI客户端演示14) Hive server2 与jdbc15) 用户自定义函数(UDF 和 UDAF)的开发与演示16) Hive 优化数据迁移工具Sqoopsqoop适用于关系型数据库和HDFS分布式数据系统之间进行数据转换,在企业中,是构建数据仓库的一大工具。1) 介绍 和 配置Sqoop2) Sqoop shell使用3) Sqoop-importa) DBMS-hdfs b) DBMS-hive c) DBMS-hbase4) Sqoop-exportFlume分布式日志框架Flume最早是Cloudera提供的日志收集系统,目前是Apache下的一个孵化项目,Flume支持在日志系统中定制各类数据发送方,用于收集数据。大家学习完此节后不但可以掌握Flume的使用,而且可以进行对于Flume的开发。1) flume简介-基础知识2) flume安装与测试3) flume部署方式4) flume source相关配置及测试5) flume sink相关配置及测试6) flume selector 相关配置与案例分析7) flume Sink Processors相关配置和案例分析8) flume Interceptors相关配置和案例分析9) flume AVRO Client开发10) flume 和kafka 的整合Zookeeper开发Zookeeper在分布式集群(Hadoop生态圈)中的地位越来越突出,对分布式应用的开发也提供了极大便利,这也是这里我们带领大家深入学习 Zookeeper的原因。本课程主要内容包括Zookeeper深入、客户端开发(Java编程,案例开发)、日常运维、Web界面监控。大家这里学好Zookeeper,对后面学习其他技术至关重要。1) Zookeeper java api开发2) Zookeeper rmi高可用分布式集群开发3) Zookeeper redis高可用监控实现4) Netty 异步io通信框架5) Zookeeper实现netty分布式架构的高可用项目实战某大型电商日志分析和订单管理在实战中学习,技术点非常多,怎么样实际运用这些点是我们在自学过程中体验不到的。电商日志分析包括:pv、uv,跳出率,二跳率、广告转化率、搜索引擎优化等,订单模块有:产品推荐,商家排名,历史订单查询,订单报表统计等。项目技术架构体系:a) Web项目和云计算项目的整合b) Flume通过avro实时收集web项目中的日志c) 数据的ETLd) Hive 批量 sql执行e) Hive 自定义函数f) Hive和hbase整合。g) Hbase 数据支持 sql查询分析h) Mapreduce数据挖掘i) Hbase dao处理j) Sqoop 在项目中的使用。k) Mapreduce 定时调用和监控第二阶段:机器学习R语言机器学习R本身是一款十分优秀的数据分析和数据可视化软件,同时作为第一代机器学习的工具,其中包括大量用于机器学习的添加包。此部分带领大家学习R语言更是带领大家进入机器学习的领域,机器学习算法为主线的同时,通过案例学习将会让大家对内容脉络掌握的更加清晰。1) R语言介绍,基本函数,数据类型2) 线性回归3) 朴素贝叶斯聚类4) 决策树分类5) k均值聚类 a) 离群点检测6) 关联规则探索7) 神经网络Mahout机器学习Mahout提供一些可扩展的机器学习领域经典算法的实现,很多公司会使用Mahout方便快捷地创建智能应用程序。Mahout包含许多实现,包括聚类、分类、推荐过滤、频繁子项挖掘。Mahout通过使用 Apache Hadoop,可以有效地扩展到云中。被业界奉为第二代机器学习工具。此部分过后大家不仅会学习到mahout的组件而且会有项目让大家真正把它应用到工作中。1) 介绍为什么使用它,它的前景a) 简单介绍Mahout b) 简单介绍机器学习 c) 实例演示Mahout单机推荐程序2) 配置安装(hadoop2.x版本的)编译安装步骤说明a) 命令行中测试运行协同过滤概念3) 推荐a) 讲解基于用户的协同过滤 b) 讲解基于物品的协同过滤4) 分类a) 分类概念 b) 分类的应用及Mahout分类优势 c) 分类和聚类、推荐的区别 d) 分类工作原理e) 分类中概念术语 f) 分类项目工作流 g) 如何定义预测变量 h) 线性分类器的介绍,及贝叶斯分类器i) 决策树分类器的介绍,及随机森林分类器 j) 如何使用贝叶斯分类器和随机森林分类器的代码展示5) 聚类a) 聚类概念 b) 聚类步骤流程 c) 聚类中的距离测度 d) 讲解K-means聚类 e) K-means聚类算法展示f) 聚类其他算法 g) 介绍TF-IDF h) 归一化 i) 微博聚类案例项目实战微博营销数据挖掘项目使用数据来自微博平台,项目目标通过机器学习所学知识挖掘目标客户群体,找到代言人进行微博营销广告投放。项目技术架构体系:a) 分布式平台 Hadoop,MapReduceb) 数据采集 Flumec) 数据清洗 ETLd) 数据库 Hbase,Redise) 机器学习 Mahout第三阶段:storm流式计算redis缓存系统课程大纲1) redis特点、与其他数据库的比较2) 如何安装redis3) 如何使用命令行客户端4) redis的字符串类型5) redis的散列类型6) redis的列表类型7) redis的集合类型8) 如何使用java访问redis【a.python访问redis,scala访问redis】9) redis的事务(transaction)10) redis的管道(pipeline)11) redis持久化(AOF+RDB)12) redis优化13) redis的主从复制14) redis的sentinel高可用15) twemproxy,codis实战16) redis3.x集群安装配置Kafka课程Kafka是当下流行的队列,可以说是从数据采集到大数据计算承上启下的重要环节,大家在此部分将会详细学习它的架构,kafka在大家大数据的项目中几乎都会涉及到。1) kafka是什么2) kafka体系结构3) kafka配置详解4) kafka的安装5) kafka的存储策略6) kafka分区特点7) kafka的发布与订阅8) zookeeper协调管理9) java编程操作kafka10) scala编程操作kafka11) flume 和kafka 的整合12) Kafka 和storm 的整合Storm实时数据处理本部分学习过后,大家将全面掌握Storm内部机制和原理,通过大量项目实战,让大家拥有完整项目开发思路和架构设计,掌握从数据采集到实时计算到数据存储再到前台展示,所有工作一个人搞定!譬如可以一个人搞定淘宝双11大屏幕项目!不光从项目的开发的层次去实现,并可以从架构的层次站在架构师的角度去完成一个项目。项目技术架构体系:1) Storm的基本概念2) Storm的应用场景3) Storm和Hadoop的对比4) Storm集群的安装的linux环境准备5) zookeeper集群搭建6) Storm集群搭建7) Storm配置文件配置项讲解8) 集群搭建常见问题解决9) Storm常用组件和编程API:Topology、 Spout、Bolt10) Storm分组策略(stream groupings)11) 使用Strom开发一个WordCount例子12) Storm程序本地模式debug、Storm程序远程debug13) Storm事物处理14) Storm消息可靠性及容错原理15) Storm结合消息队列Kafka:消息队列基本概念(Producer、Consumer、Topic、Broker等)、消息队列Kafka使用场景、Storm结合Kafka编程API16) Storm Trident概念17) Trident state 原理18) Trident开发实例19) Storm DRPC(分布式远程调用)介绍20) Storm DRPC实战讲解21) Storm和Hadoop 2.x的整合:Storm on YarnStorm开发实战: Kafka+Storm+Hbase+redis项目实战,以及多个案例项目实战中国移动基站保障平台一个市级移动公司,每天的产生海量话务数据(一线城市更高),通过大数实时分析,监控每个基站的掉话率,基站通话总数,基站掉话总数,基站告警,3g/4g上网流量实时监控。对以上维度进行实时分析以达到对基站工作情况的监控。项目技术架构体系:Storm+hbase+kafka+flume+echartsa) flume实时采集日志b) kafka缓冲队列c) storm实时处理d) Hbase dao存储处理结果e) 前端Web实时展示报表第四阶段:spark内存计算Python课程Python语言的部分大家在学习后可以完全掌握Python的精髓,并通过这部分的学习给大家打好一个基础,在其他计算框架中多语言的使用上都会涉及到Python这门流行的语言。同时课程里会通过机器学习的案例让大家学习Python的同时去更好的理解机器学习。1) 介绍Python以及特点2) Python的安装3) Python基本操作(注释、逻辑、字符串使用等)4) Python数据结构(元组、列表、字典)5) 使用Python进行批量重命名小例子6) Python常见内建函数7) 更多Python函数及使用常见技巧8) 异常9) Python函数的参数讲解10) Python模块的导入11) Python中的类与继承
本文出自快速备案,转载时请注明出处及相应链接。