1,什么是大数据:大数据是一门针对数据处理的编程技术
核心技术:分布式存储,分布式运算
2,大数据用来干嘛?
电商:分析用户浏览\购物等行为,分析规律,挖掘价值
外卖,金融:征信分析,运营分析
今日头条:提供个性化的内容服务....
只要有数据分析需求的场景,就可以用大数据技术
3.大数据领域的核心技术组件
hadoop 技术生态:HDFS
spark:技术生态
flink 技术生态Blink
4 学习大数据和其他学科的区别
机器学习算法:不是一手编程技术,将的是上层应用
python:高效使用
路线:大数据开发--->平台架构师/业务架构师--->补数学(考研数学教材)--->数据挖掘算法,机器学习算法
一、HADHOOP生态简介
hadoop是一套大数据技术组件,包含3大核心组件
1、HDFS hadoop分布式文件系统
(1)解决分布式系统的文件存储问题
(2)本质是提供一套跨机器的文件管理(读写查询)服务
2、Mapreduce hadoop的分布式运算程序的编程框架
(1)解决的 问题的:降低分布式运算程序的开发难度,提供开发效率
3、yarn hd的分布式运算资源 调度系统
(1)解决的问题是:分布式运算程序的启动、资源调度,资源回收
Hadoop也有大量外围组件,解决不同 问题
1、Hive 是一个基于HDFS和Mapreduce的一个SQL工具,hive将sql翻译成mr程序区运算,文件还在hdfs上
2、Hbase 是一个基于HDFS实现的分布式nosql数据库(hdfs存储的是文件,hbase存储是数据表)
3、Flume 是一个分布式日志采集系统。
4、Sqoop 是一个数据迁移工具,(关系型数据库《-----》Hadoop存储系统
HDFS
1、hdfs的核心概念:是一个分布式文件管理系统。提供文件的:读 写 查看目录。。服务。
核心工作机制:
HDFS是一套分布式软件系统:里面有多种服务角色:namenode 、secondary namenode 、datanode ,客户端。文件在hdfs中是分块存储的,一个文件会被分成多个块(默认按128M分块)每个块随机存储在集群的datanode上
每个块都有唯一的ID。
namenode复制管理元数据(hdfs系统的目录树,每个文件的具体路径,块信息,物理存储位置,副本数量)并为客户端提供查询服务
datanode复制管理文件块(帮客户端存储块,帮客户端读取块)
2、HFDS 的部署
核心参数解释:
(1)datanode的本地块存储目录
(2)namenode的rpc通信地址。
(3)nomenode的元数据持久化本地存储目录
步骤:
1、准备linux机器(80)只有1台叫伪分布式,多台分布式
2、准备环境:主机名、ip地址、hosts映射、防火墙、jdk安装、ssh免密配置
<configuration> <property> <name>dfs.datanode.data.dir</name> <value>/usr/apps/hddata/blocks</value> </property> <property> <name>dfs.namenode.name.dir</name> <value>/usr/apps/hddata/name</value> </property> <property> <name>dfs.namenode.rpc-address</name> <value>linux01:9000</value> </property> <property> <name>dfs.namenode.secondary.http-address</name> <value>linux04:9000</value> </property> </configuration> |
x`
网络服务:把一个业务功能,变成可以通过网络跨机器请求
启动hd:查看容量