
H5+PHP全栈工程师课程
| 阶段 | 技术内容 | 
| Linux大纲 | 这章是基础课程,帮大家进入大数据领域打好Linux基础,以便更好地学习Hadoop,hbase,NoSQL,Spark,Storm,docker,kvm,openstack等众多课程。因为企业中无一例外的是使用Linux来搭建或部署项目。 | 
| 1) Linux的介绍,Linux的安装:VMware Workstation虚拟软件安装过程、CentOS虚拟机安装过程 2) 了解机架服务器,采用真实机架服务器部署linux 3) 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) Apache 3) Tomcat、jvm优化提高并发量 4) 缓存优化 a) Java缓存框架 i. Oscache,ehcache b) 缓存数据库 i. Redis,Memcached 5) Lvs+nginx+tomcat+redis|memcache构建二层负载均衡千万并发处理 6) Haproxy 7) Fastdfs小文件独立存储管理 8) Redis缓存系统 a) Redis基本使用 b) Redis sentinel高可用 c) Redis好友推荐算法 | |
| Lucene课程 | 在大数据里面文本数据的搜索是很重要的一块,特别是里面的分词技术,是后面机器学习里面文本挖掘的基石,我们需要深入学习java领域里面的搜索核心技术lucene,同时也可以了解到百度 google这样的搜索系统是怎么架构实现的。 | 
| 
					1) Lucene介绍
				 
					2) Lucene 倒排索引原理
				 
					3) 建索引 IndexWriter
				 
					4) 搜索 IndexSearcher
				 
					5) Query
				 
					6) Sort和 过滤 (filter)
				7) 索引优化和高亮 | |
| Solr课程 | 接着前面lucene技术搜索,如果把lucene技术比如为发动机,那solr就是一两成型的汽车了。学习完solr可以帮助你在企业里面快速的架构搜索系统。首先Solr是基于Lucene做的,Lucene是一套信息检索工具包,但并不包含搜索引擎系统,它包含了索引结构、读写索引工具、相关性工具、排序等功能,因此在使用Lucene时你仍需要关注搜索引擎系统,例如数据获取、解析、分词等方面的东西。而Solr的目标是打造一款企业级的搜索引擎系统,因此它更接近于我们认识到的搜索引擎系统,它是一个搜索引擎服务,通过各种API可以让你的应用使用搜索服务,而不需要将搜索逻辑耦合在应用中。而且Solr可以根据配置文件定义数据解析的方式,更像是一个搜索框架,它也支持主从、热换库等操作。还添加了飘红、facet等搜索引擎常见功能的支持。 | 
| 
					1) 什么是solr
				 
					2) 为什么工程中要使用solr
				 
					3) Solr的原理
				 
					4) 如何在tomcat中运行solr
				 
					5) 如何利用solr进行索引与搜索
				 
					6) solr的各种查询
				 
					7) solr的Filter
				 
					8) 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 shell
				 
					4) Hdfs java api
				 | |
| 三、 详细讲解Mapreduce Mapreduce可以说是任何一家大数据公司都会用到的计算框架,也是每个大数据工程师应该熟练掌握的,此处的学习除了老师详细的讲解理论外,会通过大量的案例让大家彻底掌握。 | |
| 
					1) Mapreduce四个阶段介绍
				 
					2) Writable
				 
					3) InputSplit和OutputSplit
				 
					4) Maptask
				 
					5) Shuffle:Sort,Partitioner,Group,Combiner
				 
					6) Reducer
				 | |
| 四、 Mapreduce案例案例 | |
| 
					1) 二次排序
				 
					2) 倒排序索引
				 
					3) 最优路径
				 
					4) 电信数据挖掘之-----移动轨迹预测分析(中国棱镜计划)
				 
					5) 社交好友推荐算法
				 
					6) 互联网精准广告推送 算法
				 | |
| 五、 Hadoop2.x集群搭建 前面带领大家开发了大量的MapReduce程序,此部分将带来大家让开发的程序运行在分布式集群中,并且运行在健壮高可用的集群中。 | |
| 
					1) Hadoop2.x集群结构体系介绍
				 
					2) Hadoop2.x集群搭建
				 
					3) NameNode的高可用性(HA)
				 
					4) HDFS Federation
				 
					5) ResourceManager 的高可用性(HA)
				 
					6) Hadoop集群常见问题和解决方法
				7) Hadoop集群管理 | |
| 分布式数据库 Hbase | 大数据中使用Hbase的案例多的举不胜举,也可凸显大家学习的必要性。即使工作多年的大数据工程师Hbase的优化也是需要好好学习的重点。 | 
| 
					1) HBase定义
				 
					2) HBase与RDBMS的对比
				 
					3) 数据模型
				 
					4) 系统架构
				 
					5) HBase上的MapReduce
				 
					6) 表的设计
				 
					7) 集群的搭建过程讲解
				 
					8) 集群的监控
				 
					9) 集群的管理
				 
					10) HBase Shell以及演示
				 
					11) Hbase 树形表设计
				 
					12) Hbase 一对多 和 多对多 表设计
				 
					13) Hbase 微博 案例
				 
					14) Hbase 订单案例
				 
					15) Hbase表级优化
				 
					16) Hbase 写数据优化
				 
					17) Hbase 读数据优化
				 | |
| 数据仓库Hive | Hive是使用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 与jdbc
				 
					15) 用户自定义函数(UDF 和 UDAF)的开发与演示
				 
					16) Hive 优化
				 | |
| 数据迁移工具Sqoop | sqoop适用于关系型数据库和HDFS分布式数据系统之间进行数据转换,在企业中,是构建数据仓库的一大工具。 | 
| 1) 介绍 和 配置Sqoop 2) Sqoop shell使用 3) Sqoop-import a) DBMS-hdfs b) DBMS-hive c) DBMS-hbase 4) Sqoop-export | |
| Flume分布式 日志框架 | 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) 数据的ETL
				 
					d) Hive 批量 sql执行
				 
					e) Hive 自定义函数
				 
					f) Hive和hbase整合。
				 
					g) Hbase 数据支持 sql查询分析
				 
					h) Mapreduce数据挖掘
				 
					i) Hbase dao处理
				 
					j) Sqoop 在项目中的使用。
				 
					k) Mapreduce 定时调用和监控
				 | 
 
       
          
 
                 
                             
                             
                             
                             
                             
                             
                             
                         
                         
                        