编程就像游戏打怪升级一样,大佬分享Java到大数据学习的技术路线

bingdata 2018-06-14

编程就像游戏打怪升级一样,大佬分享Java到大数据学习的技术路线

1、何为大数据?

大数据是指很多很多的数据,主要源于web2.0之后,数据库中的数据量累计起来很庞大,在对数据进行操作(主要指查询)会变得很慢,对机器的性能要求会很高,如果数据量达到足够大(如十几亿),那服务器会崩溃的

2、大数据解决什么问题?

大数据解决对海量数据的存储、查询、分析计算等操作,主要应用在利用庞大的数据归类分析用户的偏好,利用用户的历史信息得出相应的统计账单等,将同行业的大公司的数据进行计算分析,可以挖掘出一些隐含价值。

3、学习大数据的基础

1)java SE,EE(SSM)

因为90%的大数据框架都是java写的

2)SQL

特别是sql语句中的查询语句,因为对数据库的操作最多的是查询

使用Hadoop作为大数据的分布式存储、计算和分析 sql的操作会重要

3)Linux

大数据的框架安装在Linux操作系统上

编程就像游戏打怪升级一样,大佬分享Java到大数据学习的技术路线

linux操作基础

  • linux系统简介与安装
  • linux常用命令–文件操作
  • linux常用命令–用户管理与权限
  • linux常用命令–系统管理
  • linux常用命令–免密登陆配置与网络管理
  • linux上常用软件安装
  • linux本地yum源配置及yum软件安装
  • linux防火墙配置
  • linux高级文本处理命令cut、sed、awk
  • linux定时任务crontab

4、需要学什么

*第一方面:大数据离线分析*

一般处理T+1数据(T是指日、周、月、年),处理历史数据

模块1:Hadoop

包括四大块(common、yarn、MapReduce、HDFS)

主要掌握环境搭建、处理数据的思想

模块2:Hive

大数据数据仓库

通过写SQL对数据进行操作,类似于mysql数据库中的sql

内存数据库redis

  • redis和nosql简介
  • redis客户端连接
  • redis的string类型数据结构操作及应用-对象缓存
  • redis的list类型数据结构操作及应用案例-任务调度队列
  • redis的hash及set数据结构操作及应用案例-购物车
  • redis的sortedset数据结构操作及应用案例-排行榜

模块3:HBase

基于HDFS的NOSQL数据库

面向列的存储

协作框架:

sqoop(桥梁:HDFS 《==》RDBMS)

flume:收集日志文件中信息

调度框架anzkaban,

了解:crotab(Linux自带)、zeus(Alibaba)、Oozie(cloudera)

扩展前沿框架:kylin、impala、ElasticSearch(ES)

shell编程

  • shell编程–基本语法
  • shell编程–流程控制
  • shell编程–函数
  • shell编程–综合案例–自动化部署脚本

第二方面:大数据离线分析

以spark框架为主

Scala:OOP + FP

sparkCore:类比MapReduce

sparkSQL:类比hive

sparkStreaming:实时数据处理

kafka:消息队列

前沿框架扩展:flink

阿里巴巴 blink

编程就像游戏打怪升级一样,大佬分享Java到大数据学习的技术路线

第三方面:大数据机器学习(扩展)

spark MLlib:机器学习库

pyspark编程:Python和spark的结合

推荐系统

python数据分析

Python机器学习

大数据框架安装功能来划分

1、海量数据存储:

HDFS、Hive(本质存储数据还是hdfs)、HBASE、ES

2、海量数据分析:

MapReduce、Spark、SQL

最原始的Hadoop框架

数据存储:HDFS(Hadoop Distributed File System)

数据分析:MapReduce

Hadoop的起源

Google的三篇论文

虽然Google没有公布这三个产品的源码,

但是他发布了这三个产品的详细设计论文,

奠定了风靡全球的大数据算法的基础!

Hadoop介绍

大数据绝大多数框架,都属于Apache顶级项目

http://apache.org/

hadoop官网:

http://hadoop.apache.org/

分布式

相对于【集中式】

需要多台机器,进行协助完成。

元数据:记录数据的数据
 架构:
 主节点Master 老大,管理者
 管理
 从节点Slave 从属,奴隶,被管理者
 干活

Hadoop也是分布式架构

HDFS:

主节点:NameNode

决定着数据存储到那个DataNode上

从节点:DataNode

存储数据

**MapReduce:**

分而治之思想

将海量的数据划分为多个部分,每部分数据进行单独的处理,最后将所有结果进行合并

map task

单独处理每一部分的数据、

reduce task

合并map task的输出

**YARN:**

分布式集群资源管理框架,管理者集群的资源(Memory,cpu core)

合理调度分配给各个程序(MapReduce)使用

主节点:resourceManager

掌管集群中的资源

从节点:nodeManager

管理每台集群资源

**总结:Hadoop的安装部署**

都属于java进程,就是启动了JVM进程,运行服务。

HDFS:存储数据,提供分析的数据

NameNode/DataNode

YARN:提供程序运行的资源

ResourceManager/NodeManager

federation介绍和hive使用

  • Hadoop的HA机制
  • HA集群的安装部署
  • 集群运维测试之Datanode动态上下线
  • 集群运维测试之Namenode状态切换管理
  • 集群运维测试之数据块的balance
  • HA下HDFS-API变化
  • hive简介
  • hive架构
  • hive安装部署
  • hvie初使用

好了,今天的知识就分享到这里,欢迎关注爱编程的南风,私信关键词:大数据 ,获取更多学习大数据的资源,如果文章对你有有帮助,请收藏关注,在今后与你分享更多学习大数据的文章。同时欢迎在下面评论区留言如何学习大数据。

相关推荐