本学期上了分布式系统的课,主要从MapReduce框架、批处理系统代表Spark、流处理代表Flink着手介绍分布式系统的发展,并配以大量project,基本掌握了以Spark、Flink、Zookeeper为主的分布式系统框架使用及原理,希望能对分布式系统感兴趣的同学一些参考。
Syllabus
Lecture | Reading Material/hints | Notes |
---|---|---|
1. Prepare knowledge and coding in Java | - reflect in Java<br />- anonymous inner class<br />- Proxy in Java<br />- abstract and interface<br />- thread start() and runnable | RPC and serialization |
2. Distribution File System(DFS) | Distribution File System (DFS) | |
3. MapReduce model | MapReduce处理系统 | |
4. MapReduce Coding | - 组合式MapReduce<br />- 链式MapReduce<br />- 迭代式MapReduce<br />- C/C++ 与 python通信 | MapReduce编程 |
5. Spark model | Spark处理框架 | |
6. Spark Coding | - Spark Shell简单使用<br />- RDD操作<br />- Spark Submit | Spark编程 |
7. YARN and ZooKeeper | - Yarn之日志分析<br /> | - Yarn资源管理框架<br />- ZooKeeper元数据管理系统 |
8. DataFlow Framework | - Async-loop-died<br />- Storm处理Stream Join的简单实例 | 流计算系统概述 |
9. Flink | - Flink 原理与实现:架构和拓扑概览 | 批流融合系统-Flink |
10. Spark v2 & Beam | 批流融合系统-展望 | |
11. 分布式图处理系统 | 分布式图处理系统--Pregel | |
12. 机器学习系统--mahout | 机器学习系统--mahout | |
13. 机器学习系统--GraphLab | 机器学习系统--GraphLab | |
14. 机器学习系统-- Parameter Server | 机器学习系统-- Parameter Server |
Lab
-
Lab1: RPC model in Java
-
Lab2: hadoop安装与配置
-
Lab3: hadoop编程实践(一)
-
Lab4: hadoop编程实践(二)
-
Lab5: hadoop编程练习
-
Lab6: spark安装与配置
-
Lab7: spark编程实践
-
Lab8: spark编程练习
-
Lab9: ZooKeeper配置及简单使用
-
Lab10: Yarn框架下的系统部署
-
Lab11: Storm部署与运行
-
Lab12: Storm编程练习
-
Lab13: SparkSteaming使用
-
Lab14: Flink安装及使用
-
Lab15: Flink编程练习(一)
-
Lab16: Flink编程练习(二)
-
Lab17: 常用图算法实现--Hadoop
-
Lab18: 常用图算法实现--Spark
-
Lab19: 常用图算法实现--Flink
-
Lab20: Giraph配置及使用
-
Lab21: Flink迭代小记
网友评论