大数据建设中的快数据(Fast Data )实施方案
作者:互联网
最近一段时间一直在思考微服务的设计问题,微服务的交互通信以及微服务整个体系架构的建设,都和Fast Data实现方案有一些关联,因此我们在探讨或解决某个问题点时可能需要由点到面,由面及体。在讨论Fast Data的时候,也会涉及大数据、容器云、微服务、内存数据网格、消息通信、复杂事件处理等技术。每种技术并不是独立存在,都有其发展演进的基础和路径,都有其关联相似性,因此在面临某一问题时可以从整体上来考虑方案,不要局限于某个点而失去整个空间。
确切的说,Fast Data并不是一种新技术、应用或用例,可能国内讨论的比较少些。它是一组成熟的思想和技术,围绕着数据事件的快速处理以及大量不同种类数据的分析、洞察、决策、改进等。特别是物联网的发展,使它最近受到海量的各种数据大数据爆炸的影响;各种数据终端设备和物联网的普遍应用,使各种各样的数据急剧增长,也对数据处理的速度提出了新的挑战和要求。速度是关于实时处理大量数据并以更快的方式做出决策的能力,从而在大量业务数据操作中不但获取高度易逝的数据价值,更创造出新的价值。Fast Data被归于大数据的Velocity方面,有别于传统大数据的批处理,倾向于大数据实时流处理的实时态势感知和决策分析等。
Fast Data(快速数据)是Ovum的Tony Baer提出的一个术语:“Fast Data, the velocity of Big Data, is not new, but technology price/performance trends are making Fast Data applications more widely available”。快速数据是对管理大量“运动中”数据的大数据的一种补充方法,这些数据往往是时效关键的数据,可以帮助企业在业务关键决策上有质的提升。快速数据是实时连续访问和处理事件及数据,以便获得即时感知并采取即时动作,在时间关键的业务场景中发现和洞察新的业务机遇,并在第一时间获取数据的价值。比如金融股票的行情数据,距离和网络可能会成为一个影响行情数据价值的因素。获取数据之后根据定义的交易规则对数据进行处理,也可能会基于历史行情数据的分析作出决策,或者综合其他因素,速度越快可能带来的价值越大,这就是数据的时间价值。要想最大的获得这些时间关键的数据的价值,就需要相应的软硬件平台支撑。
Fast Data需要一种不仅允许快速检索信息,而且需要有对数据快速操作处理的能力的架构方法。这可能不仅仅是将实时处理系统或平台添加到现有后端系统上的问题,为了获取更大的数据价值,它往往要求重构(这也和微服务架构思想理论类似),它不仅要求关注数据的传输、集成、管理和展示,而且也要求关注数据的模型重构、数据治理等方面。
一、 一种实施方案
上一篇文章《大数据之FastData》中我们简单介绍了Fast Data处理的几个过程:感知、洞察和识别,跟踪和记录,分析、决策和响应。这个过程就是在Fast Data实施方案中要实现的能力。
(一) Fast Data功能实现
1、数据接收、采集
接收和采集分别意味着被动和主动的数据收集方式,如同人感知这个世界一样,每时每刻有很多信息被动接收,也可以主动去看、听、闻、触摸一些感兴趣的信息。在我们实现Fast Data的数据处理时,可能也需要考虑主动和被动的数据采集和接收。
2、感知
感知是对数据的初步处理或者预处理过程,“Awareness of situation”,首先得知道所处的环境、场景。在计算机系统中,可能需要辅助一些预配置信息来实现数据场景的感知。
3、识别、过滤、转换和关联数据
识别、过滤和关联到来的数据,数据中可能包含有众多的数据信息,这些数据信息会和其他数据紧密相关,需要识别出这些关键数据,过滤掉非紧急或非关键的数据,并在需要的情况下关联上其他相关的数据,比如内存或内存数据网格中或大数据平台的数据,以完善和支撑到来的数据的进一步分析需求。
也可能需要对非结构化或半结构化甚至结构化的数据进行转换,比如数据编码格式,以实现生态系统内可识别的或标准化的数据格式。
4、跟踪和记录
数据在实时处理移动过程中,可能需要跟踪和记录数据的状态、关联关系、中间过程、会话等信息,关键的信息可能需要持久化,或者为了理解整个处理过程或者重新推演等需要,以牺牲部分性能详细记录数据的处理过程。
5、分析
分析过程是整个FastData处理过程的核心。这部分的能力直接关系到决策的准确性以及到来的数据所能发挥的价值。分析过程可能涉及计算处理平台、算法平台、搜索平台、机器学习平台、语音图像视频等处理平台、消息平台等基础的中间件服务平台。
6、决策和响应
基于分析过程的全面的分析结果,从各种数据关联场景实时获得的可能持续变化的结果,基于规则或深度学习算法作出决策,使业务用户能够在正确的时间基于正确的结果采取正确行动,响应业务应用请求或者报告决策结果。
7、基础设施支撑
Fast Data实施并不是要从头再来,Fast Data实施是一种渐进的方法,它补充和改进而不是完全取代现有的IT基础设施、数据和中间件平台以及应用程序。基于现有系统的基础上,构建和完善基础设施平台、数据治理和数据处理平台、服务平台、消息平台、大数据平台、内存数据网格、事件处理平台、数据分析和展示、中间件工具等,以及基于数据和大数据等之上的机器学习和深度学习AI平台等。
Fast Data不是单个用例、应用程序或体系结构模式。它需要建立起广泛的中间件和产品数据管理体系,用正确的体系结构路径映射客户具体的用例和业务需求的选择。Fastdata是一个演进的过程,企业逐个解决其难点,同时集成或补充或替换或重构其现有的基础支撑系统,以满足实际业务场景的需求。没有什么是一成不变的,需要根据实际适时调整。
(二) Fast Data方案关键技术
1、基础平台
当前基础设施平台的一个相对较优的方案选择可能是基于云计算技术的容器云平台。不管私有化部署或者采用公有云,基础设施资源和基础设施组件基本上都可以具备一定的能力。私有化部署相对麻烦一些,但在数据安全等方面却有着难以替代的优势。如果数据的价值大于使用公有云节省的费用,就应该考虑部署私有云。
2、事件处理
事件驱动体系结构用于由事件发生触发模式的业务场景;比如复杂事件处理(CEP)系统,允许规则引擎对到来的事件进行复杂的业务逻辑规则运算,然后根据运算结果自动响应。事件处理或复杂事件处理系统通常用于自动响应高度复杂的事件模式,这些事件模式是人们不可感知的,例如交易欺诈、老鼠仓或洗钱行为检测等业务场景。这里,数据通常在内存中被拦截而不持久化,因为需要对这些数据进行即时分析并采取行动;在某些情况下,所选数据可能被用于补充可用于历史或预测分析的数据仓库。
事件处理平台在企业的IT系统建设中是必不可少的。它是实时数据处理重要的支撑平台。
3、内存数据网格/内存数据库
内存数据网格往往用于更复杂、动态的、低延迟场景,这些场景是高度分布式的应用程序,具有不能容忍延迟的易失性数据,比如金融股票市场交易或无人驾驶系统。高度易失性的数据被放置在中间层的大内存中,通常用数据对象或实体对象来表示,通常以编程方式访问和操纵这些数据对象,对外可以通过封装提供统一的标准化的数据服务。
内存数据库或闪存(固态磁盘)数据库也应用到了传统数据库,执行高度复杂的实时优化分析。由于内存和闪存价格的下降,其应用的场景和范围也越来越广。
4、消息及中间件
中间件平台可能包含众多的能力,消息平台是重要的基础组件服务,满足低延迟或超低延迟的业务需求。也可能不止一套消息系统,不同的业务场景可能需要不同的消息平台来支撑。所有公共的一些中间件能力都可以部署为中间件平台,提供统一的服务,比如计算服务、算法服务、搜索服务、语音图像视频服务,甚至日志服务、监控服务、权限服务等。
5、数据治理和数据管理
数据是企业重要的资产之一。数据治理能力往往决定着企业IT系统建设的高度。不管数据仓库或者大数据平台建设,数据治理都是一个绕不开的课题。业务应用的研发往往也是受限于数据,数据就像粮米,没有粮米巧妇难为无米之炊,粮米的优劣直接决定了汤饭的口味。想基于一团乱麻的数据做出好的应用,无异于难以上青天。也因此,数据治理和数据管理平台是IT系统建设的重要的基础。
6、分析决策中心
分析决策中心如同人的大脑,对接收到的数据进行分析处理并做出决定如何响应。这部分可能包括不同的能力,在事件处理的过程中根据规则发送到不同的分析决策子中心进行处理,最后可能需要综合多个结果做出响应。也可以需要复杂的事件处理规则来定义,使用大数据平台能力、AI深度学习能力等不断的进行优化和改进。
二、 Fast Data方案演进
数据的持续产生和累积驱动数据处理方案的持续演进。智能设备和物联网的发展使数据以指数倍的产生,这些数据蕴含着巨大的潜在价值,从这些数据中发掘新的业务场景,开发新的商业价值,是众多企业需要面对的课题,技术的发展也使解决方案不断演进,方案不是一成不变的,Fast Data也是。
(一) 不是一成不变的解决方案
Fast Data在不同的行业都有广泛的应用场景,各种不同的技术平台解决方案可能是适用的。其实任何行业任何技术解决方案一样,第一步要确定企业需要找到影响效率和收益的瓶颈和痛点;第二步,评估数据的质和量,找到消除或改进这些痛点的适用方法。很难说一个方案是普适的,即便同为互联网企业,适合阿里的不见得就适合腾讯。
(二) 方案演进
Fast Data解决方案关注时间敏感性,在企业内应该与不需要这种速度的其他系统平台并存。在系统构建时也不是独立存在的。我们需要摒弃单个项目单个系统的思想,用全局的思维来构建系统和数据平台,并根据技术和数据的变化持续改进。
三、 后言
Fast Data方案只是大数据和系统建设中的一部分,架构中的各个部分也适用于不同的业务系统,并非只为Fast Data设计。Fast Data是为了高价值高时效性的数据进行快速决策以期获取更大收益。
我们不只在金融股票交易市场会用到FastData,随着对数据实时价值认知的提高以及实时业务发展的需要,它将在各个行业变得越来越普遍。应用场景将会涵盖了金融服务、电信、高科技、制造、媒体和娱乐、旅游和运输、零售、专业服务以及公共部门等。
标签:事件处理,场景,实施方案,Data,平台,Fast,数据 来源: https://blog.51cto.com/u_15127582/2757087