基于云计算的流数据集成与服务分析
2022-04-02王慧
王慧
关键词 云计算技术 流数据集成 云服务 资源分配
1引言
在科技水平不断提升的情况下,多种新型的技术被研发和应用,并且网络规模也在不断扩大,使得社交和视频等应用程序持续生成流数据。云计算技术具有诸多应用优势,其是一种新型的计算范式,即在虚拟化技术、动态可配置技术的支持下,可以使计算等服务按照具体需求,通过互联网直接交付给客户。在实际处理流数据期间,充分应用云计算技术可以搭建符合要求的平台。本文从流数据的基本概念入手,结合基于云计算技术设计的流数据集成与服务框架展开阐述,重点介绍了流数据集成和资源分配模块,为后续设计出科学合理的资源分配算法创造了条件。
2流数据的基本概念
细致分析“流数据”,可知其概念主要来源于数据库领域。通常情况下,我们将流数据看作是具有无边界、瞬时特征的数据项序列,并且同源流数据中的数据项也具有相同的模式。数据流是指带有时间戳、按照具体达到时间的序列表示的数据,并且会将时间序列模型作为主要形式进行表示,具体的数据格式包括元组、键值对记录等。在明确流数据的基本概念之后,可以将流数据集成与处理工作看作是由执行数据操作的“算子”,或是“处理单位”集合互相之间通过数据流连接形成的有向无环图。在此基础上,算子在获取输入的数据流之后,就能够及时触发相应操作[1] 。实际上,算子操作流程比较复杂,如包括数据转换、数据处理、产生输出数据等。数据源接收算子的主要功能是收集来自多个数据源的数据,并及时将这些数据发送到下一个数据处理算子中;目的接收算子的主要功能是将完成处理的流数据结果传递到外部应用和服务单元。
处理流数据具有转换规则和检测规则。转换规定义了一个由基本的算子运算符构成的执行计划,并且这些运算符对算子执行的过滤、连接、聚集等多项操作数据进行描述。检测规则由条件、活动两部分构成,其被广泛应用在事件流处理系统中。
3应用云计算技术构建的流数据集成与服务框架
在网络规模不断扩大的背景下,各个应用领域的感知类数据数量逐步增多,加之系统规模扩大、数据多元异构复杂性增强、流数据并发速度不断加快,对流数据处理工作提出了严格要求,即不仅要具备流数据处理能力,也要具备较强的可伸缩性和容错性。在这些要求下,为了提高流数据处理效率和质量,需要充分应用云计算技术,构建符合标准的流数据集成和服务框架,在其运行期间主要将云计算基础设施、云计算技术作为核心保障处理流数据,同时也要高效开展过滤、关联、聚合等处理工作。此后,流数据以Web应用程序编程接口作为主要形式提供给开发者,为后续高效开展定制化开发工作创造了条件,从而节省了开发资金。
3.1框架结构
基于云计算技术构建的流数据集成与服务框架主要由云基础设施层、云数据管理层、云服务层、性质保障四个部分组成。
“云基础设施层”提供对CPU、网络和存储等云基础设施资源的虚拟化抽象、资源监控、资源部署等功能[2] 。“云数据管理层”的主要依据是缓冲区,接收不同消息系统、数据源的流数据,之后顺利进入到流数据引擎,能够实现实时处理流数据的目标。以云计算技术为核心依据的流数据处理引擎在实际运行期间,主要将分布式的部署架构、并行处理模式等作为保障。云数据管理层在云计算技术的支持下,可以提供符合要求的流数据查询操作接口,具體包括基本、聚集、连接等查询操作。“云服务层”将云数据管理层提供的流数据操作接口作为基础条件,主要功能是提供流数据服务的建模、发现、编程、提供、托管等服务,可以在满足不同应用要求的基础上,制定具有个性化特征的服务方案。为了避免在大规模的云计算环境中产生故障问题,就要做好流数据服务的可靠性保障工作,同时也要使流数据的可伸缩性保障功能在最大程度上发挥出应用价值。
3.2框架特征
目前,云计算技术被广泛应用在流数据处理工作中,其逐步成为数据存储、数据管理、计算等多项操作的技术支持。传统形势下的流数据处理系统存在诸多不足,为了提高流数据处理效果,应构建基于云计算技术的流数据集成和服务框架。
流数据处理系统的发展历经了三代,即第一代是将单机版作为流数据处理系统,在具体应用期间其功能无法满足标准;第二代是以分布式体系结构为主,以完善流数据处理系统为目标,其具有容错性、支持适应性的查询等特征;第三代是将云计算技术作为技术保障,显著特征是具有较强的可伸缩性和容错能力。
如今,云计算技术构建的数据流集成和服务框架的应用率不断提高,其在实际运行期间具有以下特征。
( 1)支持服务交付、使用模式的功能。在该特征的作用下,多租户可以共享流数据,并且支持“即取即用”的服务使用模式,在提供充足资源同时,具备较强的服务能力。在云计算技术发挥作用之后,流数据的各项操作能够以服务形式为主进行交付使用。
(2)较强的实时性[3] 。在实现高吞吐量这一目标之后,能够及时高效地处理流数据。考虑到每一秒都会迸发大量数据,在实际开展处理工作时具有较大难度,这就要适当地缩短响应时间,在满足实时处理要求之后,提高流数据处理效率。
(3)动态可伸缩性。负载不断变化,需要保证基于云计算技术构建的流数据集成和服务框架具有较强的动态可伸缩性,如从理论角度进行分析,不难发现在云计算环境中,应用和服务可以随意伸缩,但是在负载逐步上升或是不断降低的情况下,存在荷载缺乏均衡性的问题。这就要突出动态可伸缩性,进而保证在不同的负载状况下仍然能够具备一样的性能。
(4)容错性。在充分利用这一特征之后,可以更加高效地处理存在缺陷的数据,如即使存在故障数据流,处理系统仍然可以正常运行。这样既能提供可靠性保障服务,也能防止引发更加严重的问题。
4基于云计算的流数据集成与服务
4.1流数据集成
深入研究流数据集成问题后,可以将其总结为多个流数据源的集成、流处理引擎间的集成、流处理引擎、传统数据库集成等问题。gzslib202204022152在充分应用云计算技术的情况下,用户的查询请求涉及多个流数据源,并且其也具有不同类型的数据模型和访问接口。在明确这项内容之后,输出流处理引擎会产生流数据处理结果输出到不同目的系统的现象[4] 。在实际处理该问题时,非常关键的一项操作是提供适用于不同数据类型的适配器,虽然一些适配器的集成仍然需要人工操作,但是其具有支持流数据输入和输出集成的功能。
考虑到中介模式和与数据源模式之间存在语义映射关系,可以利用视图回答查询进行数据集成,即将其应用在多个流数据源的集成系统中。多个流数据源的模式存在差异,通过充分利用中介模式集成数据,在重写之后查询步骤会变得非常烦琐。为了解决该问题,可以直接将得到的流数据格式、模式等映射到连续查询上,同时将查询重写推迟到运行时,从而让MDQ 技术能够充分发挥作用,高效灵活的开展异构模式流数据集成工作。
在解决流数据模式异构造成的问题之后,还要将流数据集成操作与传统形势下的数据集成操作进行比较,为此不难发现流数据无法在前期阶段进行存储,并且数据也不属于某一个流处理引擎,甚至会在网络的作用下连续到达,从而使需要集成的数据源不可预测性、不可靠性变得非常显著。在此情况下,利用云计算技术构建完善的流数据集成体系,可以有效解决相关问题,但是这对流数据负载变化的可伸缩性保障技术等提出了严格要求。
4.2流数据查询
在云计算技术最大程度上发挥作用的状况下,保证高效完成流数据查询操作,可以为后续提供定制化服务创造条件。在进行该操作期间,会涉及两个方面的内容,即单个查询操作、互相连接多个流数据操作算子的执行和优化。前者包括连接查询、聚集查询等。后者包括算子重新排序、算子去重等。
将基于云计算的流数据查询操作与传统形势下的数据库进行对比可知:二者具有较强的相似性,可以将流数据查询的操作步骤分为选择、投影、连接、聚集等。在实际开展选择和投影工作时,流程非常简单,但是连接和聚集环节的操作程序比较复杂,甚至会消耗较多时间。在传统数据库研究中,我们将连接和聚集查询作为主要研究内容;而在流数据研究中,因为大规模的流数据具有较强的实时性和不间断性,所以为了做好连接和聚集查询工作,既要使用流數据基本查询方法,也要使用应用率较高的流数据高级查询操作方法,从而满足云计算环境下流数据查询操作要求。
4.3流数据定制化服务
应用云计算技术构建的流数据服务体系,需要保证具备流数据定制化服务功能,主要目的是面向不同类型应用的需求,以服务方式为主,提供科学合理地流数据连续查询、事件检测、实时分析等能力。此后,可以支持用户对大规模流数据集成、处理结果进行充分应用。在达到共享目的之后, 完成服务定制工作[5] 。
一般情况下,将云计算环境下的流数据定制化服务工作内容分为建模、发现、编程、提供、托管等,既要保证面向流数据进行访问和获取,也要充分考虑服务的抽象和建模等方面的问题。流数据使用者还要明确需要访问的流数据、具体格式、语义、集成方式等。在保证流数据定制服务具有针对性和合理性之后,其不仅可以向服务消费者提供表达语言、丰富的元数据,消费者也可以利用相关服务,将访问和查询请求发送给服务提供者,从而及时有效地获取数据。流数据定制化服务是云数据服务的重要组成部分,在将流数据的管理、部署、运营等多项任务托管给网络之后,可以高效开展数据采集、查询、分析等工作,形成新的服务模式,进而满足用户需求。
5结束语