一.学习大数据的基础
首先,要知道的是90%的大数据框架都是用Java写的,所以说要掌握Java SE,EE(SSM);那么大数据是对数据的处理和分析,所以SQL语句是要熟练掌握的(MySQL SQL on Hadoop);紧接着,由于大数据的框架安装在Linux操作系统上的,所以要对Linux操作指令熟练掌握。
二.需要学什么
第一方面:大数据离线分析
一般处理T+1(所谓T+1就是处理的是每天 or 每周 or 每月 or每年)数据
(1).Hadoop 2.X:(common(为其它提供服务)、HDFS(分布式文件系统)、MapReduce(Map进行拆分,Reduce进行整合)、YARN(计算与管理分开))
环境搭建:处理数据的思想
(2).Hive:大数据处理仓库
通过写SQL对数据进行操作,类似于MySQL数据库中的SQL
(3).HBase:基于HDFS的NOSQL(不仅仅是SQL),面向列的存储。相较于MySQ来说,数据的存储十分庞大
协作框架:
sqoop(桥梁:HDFS <==> RDNMS)
flume:手机日志文件中的信息
调度框架:anzkaban,了解:crotab(Linux自带)、zeus(Alibaba)、Oozie(cloudera)
扩展前沿框架:
kylin、impala、ElasticSearch(ES)
第二方面:
大数据实时分析:
以spack框架为主
Scala:OOP(Object Oriented Programming面向对象编程)+FP(Functional Programming面向函数)
sparkCore:类比MapReduce
sparkSQL:类比nive
sparkStreaming:实时处理数据
kafka:消息队列
前沿框架扩展:flink
阿里巴巴:blink
第三方面:大数据机器学习(扩展)
spark MLlib:机器学习库(算法)
pyspark编程:Python 和 spark的结合
推荐系统
Python数据分析
Python机器学习
三.环境搭建(之前发的文章有详细过程)
1.虚拟化软件
虚拟出一台计算器(memory,CPU core,硬盘) Linux centOS 6.4 VMware 12.x
2.安装虚拟机过程
①.导入虚拟机
=》解压
=》英文目录下
=》导入VMware中【已移动】
=》超级管理员用户 eg:root/123456
②.修改WMware Vmnt8的适配器网段地址(eg:192.168.59.0)
③.虚拟机配置约束——>职业化
使用普通用户:eg:huadian/huadian
主机名:bigdata-hpsk01.huadian.com
④基本操作(root用户来操作)
创建普通用户:
#useradd huadian
#passwd huadian
修改主机名
#vi /etc/sysconfig/network
配置ip和主机名映射
配置ip
UI界面( vi /etc/sysconfig/network-scripts/ifcfg-eth0 )
主机名映射
vi /etc/hosts
192.168.59.160 bigdata-hpsk01.huadian.com bigdata-hpsk01
测试:ping bigdata-hpsk01.huadian.com
注意:Windows也要改一下
C:\windows\system32\drivers\etc\hosts
追加192.168.59.160 bigdata-hpsk01.huadian.com bigdata-hpsk01
⑤.远程连接
CRT、Xshell、notepad++
⑥.配置普通用户huadian具有sudo权限
visudo
⑦.关闭防火墙
当前关闭
sudo service iptables stop
检查是否设置成功
service iptables status
开机不启动
sudo chkconfig iptables off
检查设置是否成功
chkconfig iptables --list
关闭selinux
vi /etc/selinux/config
vi /etc/sysconfig/selinux
设置SWLINUX=disabled 该设置必须重启才能生效
⑧.关闭虚拟机
init 0 / halt
虚拟机快照
⑨.OK,开机工作
四.大数据框架安装功能来划分
海量存储数据:
HDFS、Hive(本质存储数据还是HDFS)、HBASE、ES
海量数据分析:
MapReduce、Spack、SQL
最原始的Hadoop框架
数据存储:HDFS (Hadoop Distributed File System) Hadoop 分布式的文件系统
数据分析:MapReduce
Hadoop的起源
Google的三篇论文
虽然Google没有公布这三个产品的源码,但是他发布了这三个产品对的详细设计论文,
奠定了风靡全球的大数据算法的基础!
Google FS HDFS
MapReduce MapReduce
BigTable Hbase
将任务分解然后在很多平台处理能力较弱的计算 节点中间同时处理,然后将结果合并从而完成大数据的处理
Google:Android,搜索,大数据框架,人工智能框架
pagerank
五、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
七、安装前的准备
伪分布式安装部署
在一台机器上安装部署HDFS和YARN服务。
相关服务都属于java进程,就是启动JVM服务,
这些进程运行在一台机器上。
规划Linux系统的目录结构
以系统/opt目录为主安装软件包。
/opt
/datas 测试数据
/softwares 软件包,上传的软件包
/mudules 软件安装目录
/tools 开发的IDE及工具
将上述目录所属者和所属组改成huadian
chown huadian:huadian /datas /softwares /mudules /tools
安装jdk
卸载系统自带的openjdk
查看:sudo rpm -qa |grep java
卸载:
sudo rpm -e --nodeps
java-1.6.0-openjdk-1.6.0.0-1.50.1.11.5.el6_3.x86_64 \
tzdata-java-2012j-1.el6.noarch \
java-1.7.0-openjdk-1.7.0.9-2.3.4.1.el6_3.x86_64
linux系统自带上传和下载软件
sudo yum install -y lrzsz
rz:上传文件, 上传到当前执行rz命令的路径
sz:下载文件
安装jdk
注意:Linux安装jdk类似于Windows安装一个绿色版本软件直接解压,然后配置环境变量即可
(1)使用rz将jdk上传到/opt/softwares
(2)解压:
tar -zxf jdk-8u91-linux-x64.tar.gz -C /opt/modules/
(3)配置环境变量
sudo vi /etc/profile
#JAVA_HOME
export JAVA_HOME=/opt/modules/jdk1.8.0_91
export PATH=${PATH}:${JAVA_HOME}/bin
使其生效:
source /etc/profile
验证:
java -version
----完了之后千万不要忘记快照哦-----