logo资料库

大数据期末复习总结.pdf

第1页 / 共16页
第2页 / 共16页
第3页 / 共16页
第4页 / 共16页
第5页 / 共16页
第6页 / 共16页
第7页 / 共16页
第8页 / 共16页
资料共16页,剩余部分请下载后查看
客观题
Hadoop基础
Hadoop历史
Hadoop生态系统
HDFS架构:
HDFS特性
HDFS局限性
HDFS架构
Namenode
Namenode的元数据管理机制
NameNode元数据管理过程
HDFS数据写入机制
HDFS数据读取机制
Hadoop配置文件
core-site.xml
hdfs-site.xml
mapred-site.xml
yarn-site.xml
HDFS JAVA API
YARN
Yarn架构
YARN重要组件
YARN工作流程
Yarn调度器
Map-Reduce基础
Map-Reduce框架
Run方法实现
Map实现
Reduce实现
MapReduce过程
maprefuce配置
HBase基础
HBase特点
HBASE基本组件
Client
HMaster
HRegionServer
HStore
Zookeeper
HBase配置
启动Hbase
HBase Java API
创建连接对象
数据写入例
数据获取类
HBase命令
主观题
HDFS命令
Checkpoint过程
NameNode单点故障恢复
DataNode容错机制
心跳机制
HBase表设计
、HBase命 (1)Hadoop基 (2)HDFS、YARN、HBase、MapReduce基 (3)HDFS命 (4)实 (5)常 (6)HDFS Java API、HBase Java API、MapReduce编 Hadoop基 查(只 Hadoop历 2004年 ,Google发 《MapReduce: 2006年Google发 《BigTable: 2006年 ,Yahoo!聘 请Cutting将Nutch搜 Hadoop⽣ 障) 为Hadoop,Hadoop 以 个Hadoop系 的NoSQL数 HDFS: MapReduce: 在HDFS上 HBase: Zookeeper:Hadoop组 Oozie: Pig: Hive: HDFS架 含Pig Latin, 的Workflow系 对MapReduce的 个MapReduce作 供SQL语 将SQL翻 为MapReduce语 Hadoop三 HDFS——分 YARN——统 含MapReduce、Spark、Flink多 架MRv2(Hadoop 2.x)之 MapReduce——分 于YARN之 HDFS/Hadoop Distributed File System 是Hadoop的 HDFS是 HDFS特 存PB级 ,HDFS提 与Map-Reduce集 ,HDFS允 HDFS局 客 观 题 础 , 如 : ⽣ 态 环 境 、 历 史 等 本 架 构 和 原 理 令 令 验 操 作 ⻅ 故 障 排 包 含 集 群 安 装 、 运 ⾏ 故 障 , 不 包 含 ⽹ 络 配 置 故 障 和 虚 拟 机 本 ⾝ 故 程 础 史 表 论 ⽂ 超 ⼤ 集 群 的 简 单 数 据 处 理 》 表 论 ⽂ 结 构 化 数 据 的 分 布 式 存 储 系 统 》 索 引 擎 中 的 存 储 和 处 理 部 分 抽 象 成 ⼀ 种 可 靠 、 ⾼ 效 、 可 伸 缩 的 ⽅ 式 进 ⾏ 数 据 处 理 , 逐 渐 成 为 ⾏ 业 主 流 。 态 系 统 分 布 式 存 储 , 为 整 统 提 供 数 据 存 储 功 能 并 ⾏ 计 算 框 架 构 建 据 库 件 管 理 端 可 扩 展 统 , 协 调 多 业 执 ⾏ 包 抽 象 将 结 构 化 的 数 据 ⽂ 件 映 射 为 数 据 表 , 提 句 , 译 句 进 ⾏ 查 询 构 : ⼤ 基 本 组 件 : 布 式 ⽂ 件 系 统 , ⽤ 于 数 据 存 储 ⼀ 资 源 管 理 和 调 度 系 统 , ⽤ 于 管 理 集 群 的 计 算 资 源 并 根 据 计 算 框 架 的 需 求 进 ⾏ 调 度 , ⽀ 持 包 种 计 算 框 后 的 新 特 性 布 式 计 算 框 架 , 运 ⾏ 上 分 布 式 ⽂ 件 系 统 的 实 现 。 它 的 设 计 ⽬ 标 是 存 储 海 量 的 数 据 , 并 为 分 布 在 ⽹ 络 中 的 ⼤ 量 客 ⼾ 端 提 供 数 据 访 问 。 ⾼ 容 错 性 的 , 可 以 部 署 在 低 成 本 的 硬 件 之 上 供 ⾼ 吞 吐 量 地 对 应 ⽤ 程 序 数 据 访 问 。 性 能 够 保 的 数 据 量 , 将 数 据 散 布 在 ⼤ 量 的 计 算 机 ( 节 点 ) 上 , ⽀ 持 更 ⼤ 的 ⽂ 件 使 ⽤ 数 据 备 份 的 ⽅ 法 解 决 ⽂ 件 存 储 的 可 靠 性 , 如 果 集 群 中 单 个 节 点 故 障 则 启 ⽤ 备 份 很 好 的 成 , 为 减 小 计 算 时 的 数 据 交 互 许 数 据 在 本 地 计 算 限 性
⽤Hive查 HDFS架 个Hadoop被 为NameNode( (Node) 和DataNode( 个Block( 的DataNode中 认64MB, DataNode中 Namenode HDFS为 ⽤NameNode存 在DataNode, 由NameNode实 块(Block)存 些DataNode中 的DataNode定 向NameNode发 到DataNode的 ;NameNode会 的DataNode中 ,NameNode将 块(Block)备 的DataNode中 Namenode的 在NameNode中 :meta data, :fsimage, :edits,HDFS⽂ NameNode元 取fsimage和edits⾄ 1、 2、client向NameNode发 3、NameNode接 4、 5、 ⽤Secondary NameNode, 到edits, 据meta data 向client返 志edits 到fsimage中 (CheckPoint过 HDFS数 1.⽤ 2.上 求Hadoop客 到Hadoop客 省64mb,hadoop2.x缺 3.NameNode向Hadoop客 4.Hadoop客 将block写 回block的 的DataNode 省128mb), 求NameNode申 块(block)边 时(hadoop 1.x HDFS数 1.⽤ 2.Hadoop客 3.NameNode查 4.Hadoop客 Hadoop配 求Hadoop客 向NameNode发 询meta data并 的block位 向DataNode请 求block数 有block后 针 对 ⾼ 速 流 式 读 取 进 ⾏ 优 化 , 查 询 性 能 低 下 ( 可 利 询 ) ⼀ 次 写 ⼊ 多 次 读 取 , 不 ⽀ 持 并 发 写 ⼊ , 并 发 读 取 性 能 很 ⾼ 不 ⽀ 持 ⽂ 件 修 改 不 ⽀ 持 缓 存 , 每 次 读 取 ⽂ 件 须 从 硬 盘 上 重 新 读 取 , 当 然 对 于 ⼤ ⽂ 件 顺 序 读 取 性 能 影 响 不 ⼤ 不 适 合 存 储 小 ⽂ 件 构 主 从 模 式 整 构 建 在 集 群 上 , 集 群 由 各 个 节 点 构 成 将 集 群 中 的 节 点 分 管 理 者 ) ⼯ 作 者 ) ⽂ 件 被 拆 分 为 多 块 ) 放 到 不 同 , 每 个 块 默 同 ⼀ 个 块 会 备 份 到 多 个 存 储 主 从 架 构 , ⽂ 件 分 块 存 储 并 现 管 理 使 储 元 数 据 信 息 , 保 存 ⽂ 件 名 以 及 ⽂ 件 的 储 在 哪 每 个 存 活 时 送 ⼼ 跳 信 息 , 如 果 未 收 ⼼ 跳 认 定 其 已 失 效 , 不 再 向 其 派 发 任 何 ⽂ 件 读 请 求 将 失 效 的 份 到 其 他 存 活 元 数 据 管 理 机 制 整 个 系 统 的 元 数 据 都 保 存 内 存 元 数 据 ⽤ 于 元 数 据 查 询 硬 盘 元 数 据 镜 像 ⽂ 件 持 久 化 存 储 元 数 据 数 据 操 作 ⽇ 志 件 增 删 会 造 成 元 数 据 更 改 , 将 更 改 记 录 可 运 算 出 元 数 据 数 据 管 理 过 程 系 统 启 动 时 , 读 内 存 , 形 成 内 存 元 数 起 数 据 增 删 查 请 求 收 到 请 求 后 , 在 内 存 元 数 据 中 执 ⾏ 增 删 查 操 作 , 并 回 操 作 结 果 如 果 是 增 删 操 作 , 则 同 时 记 录 数 据 操 作 ⽇ 使 在 适 当 的 时 机 将 操 作 ⽇ 志 合 并 程 ) 据 写 ⼊ 机 制 ⼾ 客 ⼾ 端 请 ⼾ 端 , 并 执 ⾏ ⽂ 件 上 传 传 的 ⽂ 件 写 ⼊ ⼾ 端 的 临 时 ⽬ 录 中 , 每 当 写 ⼊ 的 数 据 量 越 过 界 缺 请 请 数 据 块 ⼾ 端 返 位 置 ⼾ 端 直 接 ⼊ 指 定 据 读 取 机 制 ⼾ 客 ⼾ 端 请 ⼾ 端 , 请 求 返 回 指 定 ⽂ 件 ⼾ 端 起 读 ⽂ 件 请 求 返 回 ⽂ 件 对 应 置 ⼾ 端 直 接 据 , 获 取 到 所 合 并 成 ⽂ 件 置 ⽂ 件
core-site.xml Hadoop系 hdfs-site.xml HDFS属 mapred-site.xml yarn-site.xml YARN基 workers 定 MapReduce计 有DataNode地 core-site.xml 址-->         fs.defaultFS ⼩--> hdfs-site.xml 录--> 录-->         dfs.namenode.name.dir     block保 录--> 录- 量--> dfs.http.address HDFS的Web服 IP地 址:50070 ⽰HDFS服 统 的 通 ⽤ 关 键 属 性 性 配 置 算 框 架 的 属 性 配 置 本 属 性 义 所 址 务 地 时 ⽬ 冲 ⼤ 元 据 ⽬ 开 设 储 ⽬ 据 ⽬ 开 设 储 ⽬ 的 副 务 地 址 , 显 务 状 态 和 ⽇ 值
dfs.webhdfs.enabled 开HDFS Web服 是 true dfs.block.size block⼤ hadoop2.X dfs.datanode.du.reserved 指 dfs.namenode.edits.dir 单 为NameNode指 128Mb (硬 edits )上 间( 20, 于HDFS 20%的 间) 为%, 0 mapred-site.xml ⽰MR         mapreduce.framework.name       yarn                 yarn-site.xml         yarn.resourcemanager.address                               向RM汇 务-->                                                                                                                   跳       192.168.0.211:8031           yarn.resourcemanager.webapp.address                 量-->       1024   否 打 务 值 ⼩ , 单 为 节 , 储 盘 不 ⽤ 件 储 的 间 量 , 单 值 设 ⼀ 的 闲 保 剩 储 独 件 的 ⽬ 录 , ⽬ 录 ⽤ 开 ⾏ 服 务 地 过 该 地 址 报 、 领 任 理 地 内
HDFS JAVA API HDFS Java API是HDFS命   YARN Yarn架 1.YARN主 Master —— ResourceManager Slave —— NodeManager 2.⼀ ResourceManager——接 为AM分 个AM 问HDFS 从HDFS读 到HDFS 定NM节 动AM(ApplicationMaster), 在scheduler中 3.⼆ ApplicationMaster——运 Container, 在Container中 YARN重 在NM上 向RM请 ⾏Application, 收RM的 控Application的 在NM上 收Client请 度scheduler Resource Manager 接 执 NodeManager 执 执 Container(容 YARN的 Application和ApplicationMaster均 务Job 度ApplicationMaster 器) 的Job以Application的 ,CPU、 ⽤ 给Container, 由Container提 在Container中 在ResourceManager中 的Application 理YARN中 ApplicationManager 运 管 ApplicationMaster 管 每 接 通 个Application都 收Container的 为 个Application, 在NodeManager的Container中 个ApplicationMaster负 为Container请 向ResourceManager汇 报Application进 远 不 业(Job) ⽤ 每 作 多 ⾄YARN的 由client提 个Application( MapReduce) ⾄ResourceManager 个Application(Spark), 期Application(Apache Slider), 令 的 抽 象 , ⽀ 持 远 程 访 应 ⽤ 程 序 能 够 以 和 读 写 本 地 数 据 系 统 相 同 的 ⽅ 式 取 数 据 , 或 者 将 数 据 写 ⼊ 构 从 架 构 的 构 成 : 集 群 中 各 个 节 点 的 管 理 者 集 群 中 单 个 节 点 的 代 理 级 调 度 收 作 业 , 在 指 点 上 启 执 ⾏ 调 度 算 法 配 资 源 , 管 理 各 级 调 度 ⾏ , 求 资 源 , 接 资 源 分 配 , 启 动 执 并 监 执 ⾏ 状 态 要 组 件 求 ⾏ ⼀ 级 调 ⾏ 作 业 任 ⾏ ⼆ 级 调 资 源 表 ⽰ 模 型 内 存 、 ⽹ 络 等 资 源 分 配 供 给 其 中 的 任 务 需 要 计 算 资 源 , 均 运 ⾏ ⼾ 提 交 ⽅ 式 得 以 执 ⾏ ⾏ 所 有 理 ⼀ 运 ⾏ ⼀ 责 管 理 进 度 汇 报 , 求 资 源 过 ⼼ 跳 度 和 资 源 状 态 什 么 主 从 之 间 通 过 ⼼ 跳 通 信 ? 如 果 不 通 过 定 时 的 ⼼ 跳 , 那 么 我 永 知 道 是 因 为 没 有 状 况 导 致 不 通 信 还 是 因 为 故 障 导 致 没 有 通 信 。 作 ⼾ 提 交 ⼀ 次 计 算 任 务 , 交 个 作 业 对 应 ⼀ 业 的 每 个 ⼯ 作 流 对 应 ⼀ 效 率 更 ⾼ ⽤ ⼾ 共 享 ⼀ 个 ⻓ 系 统 响 应 更 快
个AppAttempt⽤ 业a的 过AManager将 的startContainer⽅ 动AMaster 业a启 业a的AMaster分 到NM1 在NM1中 业a启 动Container0(作 的0号 器) YARN⼯ 业a(Job) 器(scheduler)中 ,RM通 1 Client向RM提 2 RM在 3 NM1向RM提 4 RM通 过RPC调 5 NM1在Container0中 6 AMaster向AManager发 7 RM将AMaster的 NM分 的Container(资 ⽤NM1中 ⼊scheduler资 以Container的 由scheduler分 配), 向RM发 的Container 起RPC调 的NM发 回AManager已 8 AMaster向RM发 9 RM返 10 AMaster向 11 Container启 Application中Container的 12 AMaster为Container向RM请 13 作 ,AMaster向RM申 的Container 业Application, 向AMaster汇 ,AMaster负 Yarn调 度AM 器) 器) 器) 的container实 的ResourceManager管 器)执 过Scheduler(调 FIFO Scheduler (先 Capacity Scheduler (容 Fair Scheduler (公 YARN中 RM作 RM通 Scheduler⽀ 调 调 ⾏Container的 Map-Reduce基 器 ---> Container的 ---> 执 息 ---> ApplicationMaster 建 ---> Application   Map-Reduce框 public class WordCountApp extends Configured implements Tool org.apache.hadoop.conf.Configured org.apache.hadoop.util.Tool 了Job⼊ Run⽅ 化Job job执 ⼊Map类 作 流 程 交 作 调 度 创 建 ⼀ 以 管 理 作 调 度 交 ⼼ 跳 作 配 法 , 为 作 业 容 为 作 起 请 求 注 册 并 初 始 化 ⾃ ⾝ , 计 算 ⾃ ⾝ 所 需 资 源 , 并 起 资 源 请 求 资 源 请 求 放 源 队 列 中 , 配 资 源 , 获 得 资 源 后 向 指 定 的 配 相 应 源 形 式 分 等 下 ⼀ 次 ⼼ 跳 送 ⼼ 跳 分 配 好 对 应 ⽤ , 启 动 已 分 配 动 后 , ⽤ 于 执 ⾏ ⽤ ⼾ 的 作 并 报 进 度 责 整 个 ⽣ 命 周 期 管 理 求 资 源 业 执 ⾏ 完 毕 请 注 销 资 源 度 器 理 了 集 群 中 的 资 源 , 并 使 ⽤ 双 层 调 度 范 式 , 执 ⾏ 资 源 调 度 。 为 ⼀ 级 调 度 , 将 资 源 分 配 给 ⼆ 级 调 度 ⾏ ⼀ 级 调 度 持 三 种 调 度 器 进 先 出 调 度 器 调 度 平 调 度 度 器 通 过 分 配 不 同 ⼤ 小 现 资 源 调 度 度 分 配 信 创 础 架 主 类 声 明 : 需 要 继 承 ⾄ : 对 作 业 的 定 义 和 管 理 并 实 现 接 口 定 义 口 法 实 现 实 例 注 ⼊ 作 业 主 类 ⾏ 的 主 类 是 什 么 注
执 ⾏map逻 类(Mapper的 类) ⼊Reduce 执 ⾏reduce逻 类(Reducer的 类) TextInputFormat类 识 TextOutputFormat类 识 Map实 map由Mapper的 的map⽅ 写Mapper类 的map⽅ MR框 建map实 ⽤StringTokenizer类 将value⽂ ⽂(MR由 Reduce实 reduce由Reducer的 由value属 据) 的reduce⽅ 写Reducer类 的reduce⽅ MR框 将val转 建reduce实 为Iterator序 该reduce的 到Context中 由key和val变 ,MR框 MapReduce过 个map操 个InputSplit 取InputSplit和 到InputFormat后 对map过 ⾏map过 ⾄Reducer的 于map本 和reduce的 , Partition前 个Barrier(完 有Mapper执 的reduce中(reduce主 取), 个reducer MapReduce内 InputData:HDFS中 InputSplit: InputFormat: Mapper: Combiner: reduce Partition: Reducer同 Shuffle: Sort: Reducer: OutputFormat: 定map的 障), 将map的 给Reduce的 ⾏reduce过 责Job的 ⾄HDFS maprefuce配 1、mapred-site.xml #增   mapreduce.admin.user.env   HADOOP_MAPRED_HOME=$HADOOP_COMMON_HOME   yarn.app.mapreduce.am.env   HADOOP_MAPRED_HOME=$HADOOP_COMMON_HOME 辑 的 ⼦ 注 辑 的 ⼦ 注 ⼊ 输 ⼊ 类 并 获 取 输 ⼊ ⽂ 件 的 路 径 别 执 ⾏ 命 令 中 的 输 ⼊ 路 径 字 串 并 写 ⼊ 注 ⼊ 输 出 类 并 获 取 输 出 ⽬ 录 的 路 径 别 执 ⾏ 命 令 中 的 输 出 路 径 字 串 并 写 ⼊ 开 始 执 ⾏ 作 业 并 等 待 执 ⾏ 完 毕 现 ⼦ 类 实 现 具 体 法 须 重 法 架 会 ⾃ 动 创 例 并 执 ⾏ , 且 会 将 读 取 到 的 输 ⼊ ⽂ 本 拆 分 后 性 传 ⼊ 。 使 本 拆 分 为 词 汇 , 遍 历 词 汇 , 并 将 词 汇 和 其 出 现 次 数 组 合 成 键 值 对 写 ⼊ 上 下 框 架 传 ⼊ 的 ⼀ 个 对 象 , 专 ⻔ ⽤ 于 保 存 计 算 过 程 中 的 数 现 ⼦ 类 实 现 具 体 法 须 重 法 架 会 ⾃ 动 创 例 并 执 ⾏ , 且 会 将 分 配 给 键 值 对 量 传 ⼊ 。 列 后 遍 历 之 , 将 其 数 量 相 加 后 输 出 架 会 ⾃ 动 将 输 出 值 写 ⼊ 到 输 出 ⽬ 录 中 程 部 运 ⾏ 过 程 : 输 ⼊ 的 数 据 数 据 分 ⽚ , 每 作 ⼀ 负 责 读 执 ⾏ 键 值 对 拆 分 收 的 键 值 对 , 执 程 程 的 键 值 对 进 ⾏ ⼀ 次 处 理 以 减 少 输 出 数 据 量 , 相 当 地 的 确 输 出 键 映 射 关 系 有 ⼀ 毕 后 才 能 进 ⼊ 步 保 证 所 ⾏ 输 出 键 传 输 到 指 定 动 拉 ⼀ 个 键 对 应 ⼀ 将 传 输 键 值 排 序 并 组 合 成 序 列 执 程 负 输 出 , 输 出 置 加 两 个 配 置 :
2、yarn-site.xml #增 加container本    yarn.nodemanager.log-dirs    $HADOOP_HOME/logs/userlogs      yarn.nodemanager.log.retain-seconds    108000    yarn.nodemanager.resource.memory-mb  1800 # ⽌VM不 ⾜Container被kill #设    yarn.nodemanager.vmem-pmem-ratio    3   、AM错 卡Job、 卡0%等 为HA模 (1)mapred-site.xml 将mapreduce.framework.name改 ------------------------------------ vix.mapreduce.framework.name yarn ------------------------------------ (2)yarn-site.xml 将yarn.resourcemanager.address改 ------------------------------------ vix.yarn.resourcemanager.address 址:18040 ------------------------------------ 将yarn.resourcemanager.scheduler.address改 ------------------------------------ vix.yarn.resourcemanager.scheduler.address 址:18030 ------------------------------------   HBase基 HBase特 础 点 地 ⽇ 志 查 看 配 置 项 ⼩ 序 会 报 置 虚 拟 内 存 与 内 存 的 倍 率 , 防 以 上 配 置 确 认 ⽆ 误 后 , 如 果 仍 有 报 内 存 错 误 误 、 问 题 找 不 到 原 因 , 可 以 尝 试 按 以 下 ⽅ 式 解 决 : ( 相 应 属 性 的 设 置 式 设 置 ) 为 : 为 : 主 节 点 地 为 : 主 节 点 地
分享到:
收藏