写点什么

架構師訓練營 week12 總結

用户头像
ilake
关注
发布于: 2020 年 12 月 13 日

12.1 大数据原理概述

  1. 文件系統: GFS

  2. 計算框架: MapReduce

  3. 資料庫: NoSQL - BigTable


Hive: 將 SQL 語句轉為 MapReduce 的程式,大大降低使用的門檻

Yarn: 資源調度系統

Spark: 性能更好,逐步取代 MapReduce

12.2 分布式文件系统 HDFS


HDFS 設計目標

  • 超大文件

  • 流式數據訪問

  • 一次寫入多次存取

  • 節點失效是常態

  • failover

  • auto recover

不適用的場景

  • 低延遲數據訪問

  • 大量小文件

  • 多用戶隨機寫入修改文件


Divide and Conquer



Namenode:

  • 中心服務器,負責管理文件系統的 namespace 以及客戶端的訪問

  • namenode 決定東西存在哪個 datanode

  • 週期性的接收 datanode 的狀態報告

Datanode:

  • 負責處理文件內容的讀寫申請

  • 包含兩個文件

  • 數據本身

  • meta-data, 數據塊長度,效驗,時間戳


HDFS 關鍵運行機制

  • 數據複製

  • 故障檢測

  • 數據節點

  • 心跳包

  • 塊報告

  • 數據完整性檢測

  • 名字節點

  • 日誌文件、鏡像文件

  • 空間回收機制






12.3 大数据计算框架 MapReduce - 编程模型

MapReduce

  • 目的

  • 處理海量數據

  • 上百上千 CPU 併行處理

  • 特性

  • 自動實現分佈式併行計算

  • 容錯

  • 提供狀態監控工具

  • 模型抽象簡潔


移動計算比移動數據更划算







JobTracker 內部實現

  • 作業控制

  • 抽象成三層: 監控層(JIP)、控制層(TIP)、執行層

  • 任務可能會被多次執行,TA (Task Attempt)

  • TA 成功,TIP 會標註成功,所有 TIP 成功,JIP 成功

  • 資源管理

  • 根據 TaskTracker 狀態進行分配

12.5 大数据集群资源管理系统 Yarn

Yarn: Yet Another Resource Negotiator

  • resource manager - 負責集群的資源調度管理

  • 調度器

  • 應用程序管理器

  • node manager - 負責具體服務器上的資源和任務管理


12.6 大数据仓库 Hive





用户头像

ilake

关注

还未添加个人签名 2019.04.15 加入

还未添加个人简介

评论

发布
暂无评论
架構師訓練營 week12 總結