邢黎闻
“从时间角度来看,大数据可以分成两类,一类是历史的大数据,即批式大数据;另一类是实时的大数据,即流式大数据。作个通俗的比喻,大数据等同于水库,那么存在水库里的水就是批式大数据,而随时流进水库的水就是流式大数据。”一开场,计算机应用专家、浙江大学计算机科学与技术学院教授、中国工程院院士陈纯就用一个通俗易懂的比喻把晦涩难懂的专业术语阐述得简单明了。也真是因为有了这个比喻,让距离这个专业十万八千里的笔者,听起他的主题演讲来也并非想象中的那么云里雾里。
迫切需要研发具有快速、高效、智能且自主可控特点的流式大数据实时智能处理平台
目前主流的大数据处理技术体系是Hadoop及其衍生系统,主要由Yahoo、Facebook等公司支持,实现并优化了MapReduce框架。2006年首次发布以来,Hadoop技术体系已经从传统的三架马车——HDFS、MapReduce和Hbase发展为60多个相关组建的庞大生态。值得一提的是,从2012年开始,才有了专门流式大数据的组件,如Tez、Spark Streaming。也就是说,在2012年之前,所有的大数据算法和系统只关注批式大数据。Spark Streaming是建立在Spark基础之上的流式大数据处理框架。与Tez相比,具有吞吐量高、容错能力强等特点,并支持多种数据输入源和输出格式。
2017年1月,Apache基金会发布了Beam项目。其前身是Google Dataflow数据处理服务,本身不是一个流式大数据处理平台,而是支持批式大数据和流式大数据融合处理的统一编程处理框架,可集成多种大数据处理平台,包括Spark、SQL、Hadoop、Flink、Spark Streaming、Apache Storm、Stream Cube……。
數据流处理的应用场景主要两类,第一类是互联网和移动互联网,通过提供个性化服务来不断提升用户体验,它对实时性的要求是达到亚秒级的响应;第二类是物联网的传感数据,通过对实时数据和历史数据的智能分析,在事中作出决策和处理,它对实时性的要求是达到毫秒级的响应。
现有的解决方案在做实时处理上都有困难,不管是Hadoop技术体系,还是流式大数据组件。Hadoop技术体系是分布式、集群式的架构,它的好处是数据量大,但是难以实时响应;而学过计算机的人都知道,要想计算的快的化,数据一定要存在内存里,但是内存再怎么大,也是有限的,这也就是流式大数据组件的短处——虽然其计算很快,但数据规模受限。所以,我们迫切需要研发具有快速、高效、智能且自主可控特点的流式大数据实时智能处理平台。
“流立方”实时智能处理平台提供基于时间窗口漂移的动态数据快速处理技术
“流立方”提供基于时间窗口漂移的动态数据快速处理技术,支持计数、求和、平均、最大、最小、方差、标准差、K阶中心矩、递增/递减、最大连续递增/递减、唯一性判别、采集、过滤等多种分布式统计计算模型。
“流立方”平台+实时智能处理分析模型(规则)集把处理引擎和计算逻辑分开,避免计算逻辑变化造成二次开发。
批式大数据处理性能以排序作为公认的评测基准,但是流式大数据实时处理性能尚未无公认的评测基准。在8台PC Serve、单台服务器配置为12核CPU、256G内存的测试环境下,“流立方”实时处理系统性能指标达到单节点写入43000+TPS,8节点读取100万+TPS,平均延时10-20毫秒。“流立方”平台在银联商务招标测试中综合性能排名第一,打败了IMB、Oracle、CFCA。在当前的电子支付上,除了蚂蚁金服和微信支付是自己做的风控以外,基本上所有的银联系统的风控都是基于流立方来做的。
此外,还可以利用“流立方”平台来反爬虫。当前,40%~60%的流量由爬虫贡献,且日渐趋于智能化发展,遍布了包括银行类、政府类、社交类、票务类、电商类等在内的各类网站,正在消耗网站内资源、影响正常分访问、增加网站运营成本、混淆网站用户生态、爬取产品和价格信息进行不正当竞争。而现在的“流立方”实时反爬虫系统,可以增加数据服务,把数据的指南、人机的识别、爬虫的行为分析都用安全专家、网络专家规则的形式考虑进去,在微秒级延时中识别爬虫和作出反击,达到积极主动的实时爬虫修补。
总而言之,大数据实时智能处理是大数据时代信息化的重要抓手,采用“事中”甚至“事前”模式实现分析、判断、决策等功能的智能系统需要流式大数据实时处理平台的支撑。物联网实时传感数据需要与历史数据相结合,进行实时处理、分析和决策;互联网/移动互联网上的各类应用(App)需要将流式数据与历史数据相结合,进行实时的个性化服务。同时,大数据实时智能处理可以为大数据驱动的深度学习提供计算框架的支撑平台,基于大数据实时智能处理平台,研制能融合传统符号人工智能、众包人工智能、神经网络人工智能等多种形态的统一计算框架,为下一代数据驱动和知识引导相结合的人工智能技术研究和产品研发提供高效可靠的基础设施。