博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
hadoop学习之旅1
阅读量:4638 次
发布时间:2019-06-09

本文共 3077 字,大约阅读时间需要 10 分钟。

大数据介绍

大数据本质也是数据,但是又有了新的特征,包括数据来源广、数据格式多样化(结构化数据、非结构化数据、Excel文件、文本文件等)、数据量大(最少也是TB级别的、甚至可能是PB级别)、数据增长速度快等。

针对以上主要的4个特征我们需要考虑以下问题:

  1. 数据来源广,该如何采集汇总?,对应出现了Sqoop,Cammel,Datax等工具。

  2. 数据采集之后,该如何存储?,对应出现了GFS,HDFS,TFS等分布式文件存储系统。

  3. 由于数据增长速度快,数据存储就必须可以水平扩展。

  4. 数据存储之后,该如何通过运算快速转化成一致的格式,该如何快速运算出自己想要的结果?

    对应的MapReduce这样的分布式运算框架解决了这个问题;但是写MapReduce需要Java代码量很大,所以出现了Hive,Pig等将SQL转化成MapReduce的解析引擎;

    普通的MapReduce处理数据只能一批一批地处理,时间延迟太长,为了实现每输入一条数据就能得到结果,于是出现了Storm/JStorm这样的低时延的流式计算框架;

    但是如果同时需要批处理和流处理,按照如上就得搭两个集群,Hadoop集群(包括HDFS+MapReduce+Yarn)和Storm集群,不易于管理,所以出现了Spark这样的一站式的计算框架,既可以进行批处理,又可以进行流处理(实质上是微批处理)。

  5. 而后Lambda架构,Kappa架构的出现,又提供了一种业务处理的通用架构。

  6. 为了提高工作效率,加快运速度,出现了一些辅助工具:

    • Ozzie,azkaban:定时任务调度的工具。
    • Hue,Zepplin:图形化任务执行管理,结果查看工具。
    • Scala语言:编写Spark程序的最佳语言,当然也可以选择用Python。
    • Python语言:编写一些脚本时会用到。
    • Allluxio,Kylin等:通过对存储的数据进行预处理,加快运算速度的工具。

大数据方向的工作目前主要分为三个主要方向:

  1. 大数据工程师
  2. 数据分析师
  3. 大数据科学家
  4. 其他(数据挖掘等)

技能要求

 

必须掌握的技能11条

  1. Java高级(虚拟机、并发)
  2. Linux 基本操作
  3. Hadoop(HDFS+MapReduce+Yarn )
  4. HBase(JavaAPI操作+Phoenix )
  5. Hive(Hql基本操作和原理理解)
  6. Kafka
  7. Storm/JStorm
  8. Scala
  9. Python
  10. Spark (Core+sparksql+Spark streaming )
  11. 辅助小工具(Sqoop/Flume/Oozie/Hue等)

高阶技能6条

  1. 机器学习算法以及mahout库加MLlib
  2. R语言
  3. Lambda 架构
  4. Kappa架构
  5. Kylin
  6. Alluxio

 

第一阶段(基础阶段)

1)Linux学习(跟鸟哥学就ok了)—–20小时

  1. Linux操作系统介绍与安装。
  2. Linux常用命令。
  3. Linux常用软件安装。
  4. Linux网络。
  5. 防火墙。
  6. Shell编程等。

官网: 

中文社区:

2)Java 高级学习(《深入理解Java虚拟机》、《Java高并发实战》)—30小时

  1. 掌握多线程。
  2. 掌握并发包下的队列。
  3. 了解JMS。
  4. 掌握JVM技术。
  5. 掌握反射和动态代理。

官网: 

中文社区:

3)Zookeeper学习(可以参照这篇博客进行学习:)

  1. Zookeeper分布式协调服务介绍。
  2. Zookeeper集群的安装部署。
  3. Zookeeper数据结构、命令。
  4. Zookeeper的原理以及选举机制。

官网: 

中文社区:

第二阶段(攻坚阶段)

4)Hadoop (《Hadoop 权威指南》)—80小时

  1. HDFS

    • HDFS的概念和特性。
    • HDFS的shell操作。
    • HDFS的工作机制。
    • HDFS的Java应用开发。
  2. MapReduce

    • 运行WordCount示例程序。
    • 了解MapReduce内部的运行机制。 
      • MapReduce程序运行流程解析。
      • MapTask并发数的决定机制。
      • MapReduce中的combiner组件应用。
      • MapReduce中的序列化框架及应用。
      • MapReduce中的排序。
      • MapReduce中的自定义分区实现。
      • MapReduce的shuffle机制。
      • MapReduce利用数据压缩进行优化。
      • MapReduce程序与YARN之间的关系。
      • MapReduce参数优化。
  3. MapReduce的Java应用开发

官网: 

中文文档: 
中文社区:

5)Hive(《Hive开发指南》)–20小时

  1. Hive 基本概念

    • Hive 应用场景。
    • Hive 与hadoop的关系。
    • Hive 与传统数据库对比。
    • Hive 的数据存储机制。
  2. Hive 基本操作

    • Hive 中的DDL操作。
    • 在Hive 中如何实现高效的JOIN查询。
    • Hive 的内置函数应用。
    • Hive shell的高级使用方式。
    • Hive 常用参数配置。
    • Hive 自定义函数和Transform的使用技巧。
    • Hive UDF/UDAF开发实例。
  3. Hive 执行过程分析及优化策略

官网: 

中文入门文档: 
中文社区:

6)HBase(《HBase权威指南》)—20小时

  1. hbase简介。
  2. habse安装。
  3. hbase数据模型。
  4. hbase命令。
  5. hbase开发。
  6. hbase原理。

官网: 

中文文档: 
中文社区:

7)Scala(《快学Scala》)–20小时

  1. Scala概述。
  2. Scala编译器安装。
  3. Scala基础。
  4. 数组、映射、元组、集合。
  5. 类、对象、继承、特质。
  6. 模式匹配和样例类。
  7. 了解Scala Actor并发编程。
  8. 理解Akka。
  9. 理解Scala高阶函数。
  10. 理解Scala隐式转换。

官网: 

初级中文教程:

8)Spark (《Spark 权威指南》)—60小时

  1. Spark core

    • Spark概述。
    • Spark集群安装。
    • 执行第一个Spark案例程序(求PI)。
  2. RDD

 

  • RDD概述。
  • 创建RDD。
  • RDD编程API(Transformation 和 Action Operations)。
  • RDD的依赖关系
  • RDD的缓存
  • DAG(有向无环图)

3.Spark SQL and DataFrame/DataSet

  • Spark SQL概述。
  • DataFrames。
  • DataFrame常用操作。
  • 编写Spark SQL查询程序。

Spark Streaming

4

  • park Streaming概述。
  • 理解DStream。
  • DStream相关操作(Transformations 和 Output Operations)。

5.。Structured Streaming

6。其他(MLlib and GraphX )

官网: 

中文文档(但是版本有点老): 
中文社区:

9)Python (推荐—30小时

10)自己用虚拟机搭建一个集群,把所有工具都装上,自己开发一个小demo —30小时

可以自己用VMware搭建4台虚拟机,然后安装以上软件,搭建一个小集群(本人亲测,I7,64位,16G内存,完全可以运行起来,以下附上我学习时用虚拟机搭建集群的操作文档)

学习之旅2:https://www.cnblogs.com/javadongx/p/hadoop_storm_spark_hdfs_hive.html

 

转载于:https://www.cnblogs.com/javadongx/p/hadoop_spark_hdfs_storm.html

你可能感兴趣的文章
json_encode时中文编码转正常状态
查看>>
流量调整和限流技术 【转载】
查看>>
Axure 全局辅助线(转)
查看>>
正由另一进程使用,因此该进程无法访问此文件。
查看>>
1 线性空间
查看>>
VS不显示最近打开的项目
查看>>
MyEclipse安装Freemarker插件
查看>>
计算多项式的值
查看>>
DP(动态规划)
查看>>
chkconfig
查看>>
TMS320F28335项目开发记录2_CCS与JTAG仿真器连接问题汇总
查看>>
最强的篮球队和马尔可夫模型
查看>>
hdu-4302-Holedox Eating-线段树-单点更新,有策略的单点查询
查看>>
cocos2d-x 音效中断问题
查看>>
子分类账知识学习(汇总网上比较有用的资料)
查看>>
pyQt 每日一练习 -- 登录框
查看>>
wp 删除独立存储空间文件(多级非空文件夹删除)
查看>>
Loadrunner安装使用入门
查看>>
smartupload 上传文件时 把页面编码改成gbk 解决乱码
查看>>
EPS是什么格式
查看>>