导图社区 大数据hadoop
学习记录,主要内容有:第一章概述;第二章Linux命令;第三章hadoop简介及hadoop集群的安装配置;第四章HDFS基本操作及JAVA AIP;第五章MapReduce原理架构与入门编程;第六章分布式hbase/hbase ;shell/hbase aip;第七章Hive大数据仓库开发应用;第八章Hive大数据仓库---hive简介。
编辑于2022-04-01 11:04:43日常学习之计算机网络总复习题知识整理,包括:概述复习要点、物理层复习要点、数据链路层复习要点。
日常学习,docker的基础知识整理,主要内容有docker介绍、docker基本操作、Docker的中央仓库、镜像的操作、容器的操作。
学习记录,主要内容有:第一章概述;第二章Linux命令;第三章hadoop简介及hadoop集群的安装配置;第四章HDFS基本操作及JAVA AIP;第五章MapReduce原理架构与入门编程;第六章分布式hbase/hbase ;shell/hbase aip;第七章Hive大数据仓库开发应用;第八章Hive大数据仓库---hive简介。
社区模板帮助中心,点此进入>>
日常学习之计算机网络总复习题知识整理,包括:概述复习要点、物理层复习要点、数据链路层复习要点。
日常学习,docker的基础知识整理,主要内容有docker介绍、docker基本操作、Docker的中央仓库、镜像的操作、容器的操作。
学习记录,主要内容有:第一章概述;第二章Linux命令;第三章hadoop简介及hadoop集群的安装配置;第四章HDFS基本操作及JAVA AIP;第五章MapReduce原理架构与入门编程;第六章分布式hbase/hbase ;shell/hbase aip;第七章Hive大数据仓库开发应用;第八章Hive大数据仓库---hive简介。
大数据hadoop
第一章 概述
问题一:4v
数据量大 数据类型繁多 处理速度快 价值密度低
问题二:关键技术
数据采集 数据存储和管理 数据处理和分析 数据隐私和安全
问题三:两大核心技术
分布式存储 GFS/HDFS BigTable/Hbase
分布式处理
MapReduce
第二章 Linux命令
文件搜索命令 grep grep mysql /root/install.log
用户管理命令 useradd 添加新用户:useradd 用户名 useradd -m hadoop -s /bin/bash
用户密码管理passwd passwd hadoop
为用户增加管理员权限 adduser hadoop sudo
查看用户登录情况 who 查看当前用户信息 whoami
压缩/解压命令 tar -zcf 文件.tar.gz 文件 tar -zxf 文件.tar.gz -C /usr/local
第三章 hadoop简介及hadoop集群的安装配置
Hadoop 是什么?
Hadoop是Apache旗下的一个用Java语言实现的开源软件框架。 Hadoop是一个分布式系统基础框架。 它旨在从单个服务器扩展到数千台机器,每台机器都提供本地计算和存储。 Hadoop允许使用简单的编程模型跨计算机集群对大型数据集进行分布式处理。
Hadoop 特性优点
开源 扩容能力(Scalable) 成本低(Economical) 高效率(Efficient) 可靠性(Rellable)
狭义Hadoop VS 广义Hadoop
狭义Hadoop 是一个适合大数据分布式存储(HDFS)、分布式计算(MapReduce)和 资源调度(Yarn)的平台 。
广义Hadoop 指的是Hadoop生态系统,Hadoop生态系统是一个很庞大的概念,Hadoop是其中最重要最基础的一个部分;生态系统中每一个子系统只解决某一个特定的问题域(甚至可能很窄),不是一个统一全能系统,而是小而精的多个小系统。
HDFS集群和YARN集群
HDFS集群负责海量数据的存储,集群中的角色主要有: NameNode、DataNode、SecondaryNameNode
YARN集群负责海量数据运算时的资源调度,集群中的角色主要有: ResourceManager、NodeManager
Hadoop的核心组件
HDFS(分布式文件系统
HDFS的特点: 扩展性& 容错性& 海量数据存储 HDFS的特性: 高容错性 可构建在廉价机器上 适合大数据处理 流式文件访问 一次写入,多次读取 适合批处理 HDFS的局限: 不支持低延迟访问 不适合小文件存储 不支持并发写入:一个文件只能有一个写,不允许多个线程同时写。 不支持修改:仅支持数据 append(追加),不支持文件的随机修改。

MAPREDUCE(分布式运算编程框架)

YARN(作业调度和集群资源管理的框架)
特点:多框架资源调度(Hive,Spark,HBase等) 
配置SSH无密码登录
1.安装ssh apt-get install openssh-server 2.进入./ssh如果没有该目录先执行一次ssh localhost cd ~/.ssh ssh-keygen -t rsa #生成公钥和私钥,可以在~/.ssh下查看 cat ./id_rsa.pub >> ./authorized_keys #加入授权 scp ~/.ssh/id_rsa.pub hadoop@Slave1:/home/hadoop/ 将公钥传输到Slave1节点上 ssh-copy-id master ssh-copy-id slave1 ssh-copy-id slave2 测试免密是否成功:ssh master
修改Hadoop基础配置文件
Common模块 --> core-site.xml HDFS模块 --> hdfs-site.xml MapReduce模块 --> mapred-site.xml Yarn模块 --> yarn-site.xml
首次启动hadoop集群时需要现在master节点执行名称节点的格式化 注意在后面启动hadoop后别在格式化 hdfs namenode -format
第四章 HDFS基本操作及JAVA AIP
什么是分布式文件系统
功能与单机文件系统一样,用于管理数据 在分布式文件系统的情况下,您将数据存储在多台机器而不是单台机器上。即使文件存储在整个网络中,DFS也可以组织和显示数据,使坐在机器上的用户感觉所有数据都存储在该机器中。
HDFS的优点 分布式存储 可伸缩 
HDFS的架构 
NameNode DataNode Secondary NameNode
管理元数据 维护目录树 配置副本策略 处理客户端读写请求 存储实际的数据块 执行数据块的读/写操作 
1.列举目录或文件 listStatus(Path f)

上传文件 copyFromLocalFile(Path src,Path dst) copyFromLocalFile(boolean delSrc,boolean overwrite,Path src,Path dst)

读文件内容 open(Path f)

第五章 MapReduce原理架构与入门编程
MapReduce运行流程
input、split、map、shuffle、reduce、output

MapReduce框架结构 一个完整的mapreduce程序在分布式运行时有三类实例进程:
1、MRAppMaster:负责整个程序的过程调度及状态协调
2、mapTask:负责map阶段的整个数据处理流程
3、ReduceTask:负责reduce阶段的整个数据处理流程
YARN运行流程

MapReduce的体系结构
MapReduce体系结构主要由四个部分组成,分别是:Client、JobTracker、TaskTracker以及Task

编写Map处理逻辑 Map输入类型为<key,value> 期望的Map输出类型为<单词,出现次数> Map输入类型最终确定为<Object,Text> Map输出类型最终确定为<Text,IntWritable>

编写Reduce处理逻辑 在Reduce处理数据之前,Map的结果首先通过Shuffle阶段进行整理 Reduce阶段的任务:对输入数字序列进行求和 Reduce的输入数据为<key,Iterable容器>

第六章 分布式hbase/hbase shell/hbase aip
HBase简介 HBase是一个高可靠、高性能、面向列、可伸缩的分布式数据库 存储非结构化和半结构化的松散数据----水平扩展

Region的定位
第一层 Zookeeper文件 记录了-ROOT-表的位置信息 第二层 -ROOT-表 记录了.META.表的Region位置信息 -ROOT-表只能有一个Region。通过-ROOT-表,就可以访问.META.表中的数据 第三层 .META.表 记录了用户数据表的Region位置信息,.META.表可以有多个Region,保存了HBase中所有用户数据表的Region位置信息


建立连接,关闭连接



创建表

添加数据

③浏览数据

第七章 Hive大数据仓库开发应用
. HQL语句简介 HiveQL是一种类SQL语言,用于分析存储在HDFS中的数据。 不支持事务及更新操作。 HiveQL 语句通过解释器转换为MapReduce 作业提交到Hadoop 集群上, 延迟比较大。
2.Hive CLI 
4.创建与查看数据库   

第八章 Hive大数据仓库---hive简介
运行机制
用户通过用户接口连接Hive,发布Hive SQL Hive解析查询并制定查询计划 Hive将查询转换成MapReduce作业 Hive在Hadoop上执行MapReduce作业

Hive设计特点
Hive 不支持对数据的改写和添加,所有的数据都是在加载的时候确定的。 支持索引,加快数据查询。 不同的存储类型,例如,文本文件、序列化文件。 将元数据保存在关系数据库中,减少了在查询中执行语义检查时间。 可以直接使用存储在Hadoop 文件系统中的数据。 类SQL 的查询方式,将SQL 查询转换为MapReduce 的job 在Hadoop集群上执行。 编码跟Hadoop同样使用UTF-8字符集。
Hive的优势
解决了传统关系数据库在大数据处理上的瓶颈。适合大数据的批量处理。 充分利用集群的CPU计算资源、存储资源,实现并行计算。 Hive支持标准SQL语法,免去了编写MR程序的过程,减少了开发成本。 具有良好的扩展性,拓展功能方便。
Hive的劣势
Hive的HQL表达能力有限:有些复杂运算用HQL不易表达。 Hive效率低:Hive自动生成MR作业,通常不够智能。
适用场景 海量数据的存储处理 数据挖掘 海量数据的离线分析 不适用场景 复杂的机器学习算法 复杂的科学计算 联机交互式实时查询
还未完结....