大數據概述、分布式數據收集系統:Sqoop與Flume
【理論部分】大數據概論、 大數據技術體系(按照六層架構介紹:數據收集、數據存儲、資源管理、計算引擎、數據分析以及可視化),Hadoop發展歷程、Hadoop生態系統概述/結構化數據收集Sqoop:背景、架構、原理以及使用 、非結構化(日志)數據收集系統Flume:背景、架構、原理及使用;
【實戰部分】利用Flume從指定目錄中收集數據到HDFS、利用Sqoop將MySQL表中數據寫HDFS。
【課程目標】 掌握大數據收集系統架構,能夠使用sqoop和flume構建企業級大數據收集系統。
分布式消息隊列:Kafka、分布式存儲系統:文件系統HDFS
【理論部分】概述 、基本架構與工作原理、應用場景以及經典的架構組合等、HDFS簡介、優缺點、架構(主節點NameNode、從節點DataNode、journal node的解析) 、核心設計(數據塊、數據副本的存放策略、安全模式、負載均衡、機架感應等)、HDFS操作(命令行接口、Java接口)
【實戰部分】搭建Kafka集群、如何編寫Producer將數據寫入Kafka、如何編寫Consumer從Kafka中讀取數據、搭建HDFS集群、使用NameNode Web UI、使用HDFS Shell利用Java編寫程序從HDFS中讀數據、利用Java編寫程序將數據寫入HDFS中、利用Java刪除HDFS上的文件和目錄
分布式存儲系統:分布式數據庫HBase
【理論部分】HBase簡介、優缺點、架構以及HBase API使用等
【實戰部分】搭建Hbase集群、使用Hbase Web UI、使用HBase Shell、利用Java編寫程序在hbase中創建表、利用Java編寫程序向hbase表中寫入和讀取數據
【項目案例】用戶畫像系統、網絡爬蟲
【課程目標】掌握HBase系統架構,能夠編寫程序讀寫 HBase中存儲的數據 。
分布式分析引擎:Hive基礎
【理論部分】Hive背景、架構、 HQL的DML和DDL語法等
【實戰部分】Hive環境搭建、利用Hive創建表,并進行查詢、Hive創建ORC與Parquet表并查詢
【課程目標】熟練掌握HQL編寫方式,能夠使用Hive構建大數據倉庫系統
分布式分析引擎:Hive進階
【理論部分】Hive內部原理,多計算引擎(Tez與Spark),Hive創建ORC/Parquet表,Hive調優
【實戰部分】程序方式訪問Hive、Hive調優演示
【課程目標】掌握Hive內部原理,了解常見Hive的優化方式。
10-交互式查詢引擎Presto
【理論部分】Presto基本架構,Presto與Hive對比,Presto基本使用。
【實戰部分】Presto集群搭建、Presto使用方式、Presto與Hive性能對比
【項目測試練習】 Hadoop測試(包括選擇題、簡單題和編程題三部分) |