MapReduce的缺点:
1.开发
wordcount程序复杂
以作业连方式串起来执行
打包
2.运行速度:
map输出写到磁盘,reduce写到hdfs,磁盘I/O,网络I/O,序列化等压力大
map任务和reduce任务以进程方式运行
一定要求排序(其实有时候不需要)
不适合迭代处理,交互式处理,流式处理
3.框架多样性:
维护和学习成本大
Spark特点:
速度快,使用方便,通用性,可以运行在hadoop,Hadoop, Mesos, Kubernetes, standalone, cloud
Hadoop生态系统和Spark生态系统:
Hadoop和Spark生态圈:
hadoop对比Spark:
MapReduce和Spark对比:
Spark开发语言及运行模式:
开发语言:Java,python,Scala(推荐)
运行模式:standlone(内置),yarn,mesos,local
分布式计算框架Flink:
概述:开源流式的处理框架
分布式,高性能,精确计算流处理应用
框架类型:
仅批处理框架:
Apache Hadoop
仅流处理框架:
Apache StormApache Samza
混合框架:
Apache Spark
Apache Flink
大数据处理神器Beam:
老三驾:GFS,MapReduce,BigTable
新三驾:Dremel,Pregel,Caffeine