第 13 周学习总结
一、Spark
Spark:大多数场景下,Spark比Hadoop快
Spark特点:DAG切分的多阶段计算过程更快速、使用内存存储中间计算结果更高效、RDD的编程模型更简单
RDD:弹性分布式数据集。MapReduce是面向过程的。Spark可以理解为面向对象的大数据计算。定义两种函数:转换函数、执行函数。转换函数,调用以后还是RDD。Action函数,调用以后不再返回RDD。
惰性计算:map、filter等操作不会出现新的分片。Spark只有在产生新的分片时候,才会在物理上真的生成一个RDD。
Spark的计算阶段:分割成更多stage。组成一个有向无环图DAG。Spark任务调度器根据DAG依赖关系执行计算阶段。
Spark作业管理:遇到shuffle,生成一个计算阶段;遇到action函数,生成一个作业。
二、流计算
Storm:实时计算系统。低延迟、高性能、分布式、可伸缩、高可用。
Nimbus:负责资源分配和任务调度。
Supervisor:负责接受Nimbus分配的任务,启动和停止属于自己管理的Worker进程。
Worker:运行具体处理组件逻辑的进程。
Task:Worker中每一个Spout/Bolt的线程称为一个Task。
Spark Streaming
Flink
HiBench
传统MPP架构——Cloudera Impala
三、数据分析
大数据可视化
互联网运营常用数据指标:新增用户数、用户留存率、活跃用户数、PV(Page View)、GMV(成交总金额)、转化率
数据可视化:折线图、漏斗图
四、大数据算法
网页排名算法:PageRank
KNN分类算法
TF-IDF算法
贝叶斯分类算法
K-means聚类算法
推荐引擎算法
五、机器学习
样本:训练数据。包括输入和结果。
模型:映射样本输入与样本结果的函数。
算法:从模型的假设空间寻找一个最优函数。
机器学习要计算偏微分方程
感知机模型
神经网络
总结:技术越往深处走,感觉数学越显得重要。
评论