阿里开源Blink背后的成功“套路”
副标题[/!--empirenews.page--]
阿里云开源Blink,大数据实时计算进入快车道 大数据应用中,Hadoop占据非常重要的地位,运行在其上的大数据应用也很多。 但是Hadoop在批处理方面的强大无法掩盖其在实时处理以及流处理方面的缺憾。 同时Hadhoop核心组件——MapReduce、Hive和HDFS与边缘组件的边界正在变得越来越清晰,Spark、Flink正在逐渐成长,生态渐渐庞大,可供选择的组件越来越多,引领着实时计算的发展。 其实,实时计算正处于上升期,Google、Intel、IBM等国际巨头都在积极布局。阿里从2015年开始对Flink开源大数据流处理引擎进行改造,并将Flink的计算能力扩大数倍,推出内部版Blink。阿里在Flink上的重磅押注将成为其未来的核心竞争力之一。 果然,根据中国软件网1月28日报道,阿里云正式对外宣布,已开源实时计算平台Blink( Blink开源项目地址:https://github.com/apache/flink/tree/blink)。Blink能将计算延迟降低到人类无法感知的毫秒级,浏览网页的时候,你只是眨了一下眼睛,处理的信息已经刷新了17亿次。 从Spark到Flink:天地如此广阔 后来者的Spark和Flink正在弥补Hadoop在实时处理方面的劣势,在大数据市场分得了一方天下。 Spark在内存中运行速度比Hadoop快100倍,在磁盘上运行速度快10倍。Spark在机器学习应用中的速度同样更快。 那么 Flink 和现在流行的Spark 到底有什么异同呢? Flink 是一个面向分布式数据流处理和批量数据处理的开源计算平台。与Spark类似,两者都希望提供一个统一功能的计算平台,都在尝试建立一个统一的平台以运行批量、流式、交互式、图处理、机器学习等应用。 虽然目标非常类似,但是 Flink在实现上和Spark却有很大的不同,Flink 从另一个视角看待流处理和批处理,将二者统一起来:Flink完全支持流处理,作为流处理看待时输入数据流是无界的;批处理被作为一种特殊的流处理,只是输入数据流被定义为有界的。 专家从框架、SQL支持、性能等几方面来对比两者的区别: 框架:Flink和Spark都是基于内存计算、支持实时/批处理等多种计算模式的统一框架,但Flink 的设计理念是 Stream as Platform,而Spark的设计理念是Batch as Platform。 流计算:Spark基于小批量处理,把 Streaming看成是更快的批处理,支持秒级计算,在流计算方面延时较大。而 Flink基于每个事件处理,是真正的流式计算,跟Storm的性能差不多,支持毫秒级计算。 SQL支持:Spark提供SparkSQL,Flink通过Table API提供SQL交互支持。两者相比,Spark对SQL支持更好,而且Spark支持对SQL的优化和扩展等,相关社区非常活跃。而Flink 在SQL支持方面还有很大提升空间。 性能:在计算性能方面,两者都有较好的表现,但Flink支持增量迭代等特性,因此 Flink 具有更好的性能表现。 社区活跃度:Spark社区非常活跃,生态系统越来越完善。而Flink社区活跃度相对较低,但相信随着Flink应用越来越广泛,这一现象会得到改变。 所以,Spark、Flink与Hadoop不是取代,是合作。如果未来用户在部署大数据平台时,选择放弃Spark或者Flink,那就是瞎子下象棋,不识相了! 从Flink到Blink:阿里云如此多娇 而目前市面上,各大公司采取的主流数据解决方案主要为Spark和Flink两种,它们很好地平衡了用户对于批处理和流处理的需求。Spark的技术理念是基于批来模拟流的计算,也就是更擅长有延迟的离线计算,而Flink则完全相反,它采用的是基于流计算来模拟批计,更擅长实时计算。 从目前来看,Spark技术在对海量数据实时性要求高的场景确实显得有些“鸡肋”——食之无味,弃之可惜。与之相比,Flink在实时计算方面显得游刃有余。作为最早布局Flink的公司之一,阿里在2015年就已经开始基于开源版本进行改造和创新,推出内部版本Blink。 据介绍,截止到目前,Blink在批SQL的性能方面已是Flink社区版本性能的10倍以上,在TPCDS场景下Blink的性能也能达到3倍Spark以上。 Blink在阿里内部应用的最多的场景是流计算,但是也有不少业务上线使用了批计算场景。 另外,本次开源Blink代码在 Flink1.5.1 版本之上,加入了大量的新功能,以及在性能和稳定性上的各种优化。 主要贡献包括:阿里巴巴在流计算上积累的一些新功能和性能的优化,一套完整的(能够跑通全部TPC-H/TPC-DS,,能够读取 Hive meta和data)高性能Batch SQL,以及一些以提升易用性为主的功能(包括支持更高效的 interactive programming,与zeppelin更紧密的结合,以及体验和性能更佳的Flink web)等。 媒体报道,未来阿里云还将继续贡献Flink在AI、IoT 以及其他新领域的功能和优化。 从内部使用到开源:Blink大数据应用如此绚烂多采 基于 Blink的计算平台于2016年正式上线。截至目前,阿里绝大多数的技术部门都在使用Blink。Blink一直在阿里内部错综复杂的业务场景中锻炼成长。对于内部用户反馈的各种性能、资源使用率、易用性等诸多方面的问题,Blink 都做了针对性的改进。开源之前,Blink在阿里内部应用中得到成功应用。 在2018年双11期间Blink实现了每秒处理17亿次事件的能力,相当于你眨眼一次的0.3秒里,机器已经刷新了5亿次库存。 当然除了技术大考的双11之外,阿里云的ET城市大脑更是实时计算着杭州1300个信号灯路口、4500路视频,保障着交通动脉的通畅。其中,依靠计算,一辆救护车到达医院的速度,平均可以缩短50%,排长队的拥堵以及鸣笛、闯红灯式的开道都将被完美解决。 据阿里云介绍,Blink 永远不会成为一个独立的开源项目,它一定是Flink的一部分。开源后阿里云期望能找到办法,以最快的方式将 Blink merge 到 Flink 中去。Blink 开源只有一个目的,就是希望 Flink 做得更好。 无论是功能还是生态,阿里云都会在 Flink 社区加大投入,也将投入力量做Flink社区的运营,让Flink真正在中国、乃至全世界大规模地使用起来。 因此,从开源的角度而言,对大数据应用和用户而言确实是一个好消息。 作者:刘学习前15年,专注于服务器、存储以及云计算 后5年,爱上基础软件、管理软件,以及国产化系统 (编辑:宜春站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- Windows:将stdout和stderror重定向到空
- Win10如何玩lol?Win10玩lol卡怎么处理?
- Windows 10用户必看:几个小技巧大幅提升使用体验
- Windows 10不好用?你不可不知的Windows 10技巧
- windows-server-2008 – 如何阻止对终端服务器(Win2008R2)的
- Windows 10中的家长控制:如何控制他们的操作并在PC上看到您
- Linux Mint 19.2代号为“Tina”,仍基于Ubuntu 18.04 LTS
- iOS版Chrome浏览器迎来“信用卡扫描器”代码
- Win7系统无法复制粘贴怎么办
- windows-server-2008 – 在8 GB RAM机器上删除页面文件有什