Google I/O大会上,Google宣布使用其google Cloud Dataflow替代原来的MapReduce,很多人误解为MR没有用了,以为MR被新的技术替代,其实并不是这回事。目前大数据处理领域主要有MR代表的批处理和Storm代表的流式实时处理。批处理的缺点是实时性比较差,在Storm作者提出的大数据Lambda架构中,曾经提出近期数据归为Storm来处理,如果超过一定期限由MR处理,这需要在两个不同代码风格之间转换。Google引入了Pipeline来统一了批处理和实时处理,由统一的代码实现两种处理,使用Cloud Dataflow 云平台支持。 Dataflow是设计为处理非常非常大的数据集和复制的工作流,也就是说,MR只适合大数据集+简单流程的应用场景,Dataflow能够自动优化 pipeline,并且管理底层基础设施, Dataflow 自己是语言无关的。目前虽然第一个SDK首先支持Java。Google大会上展示了使用Dataflow作为异常检测的案例,对世界杯数据历史进行流分析以便发现异常,如果检测到异常会自动采取行动。