APP下载

基于云端的查询优化设计

2016-03-04林德南彭志刚王益新

无线互联科技 2015年5期
关键词:云计算

林德南+彭志刚+王益新

摘要:云计算在大数据处理、资源共享方面的优势使得越来越多的行业使用云计算技术。云计算中的数据存储和检索方式与传统的数据库系统不同,且传统数据库的数据查询方式无法直接迁移到云平台中。文章利用后缀树建立云存储的算法,并讨论了基于后缀树云查询模型,且该查询模型可以嵌入到现有的数据查询系统中,实现传统查询平台向云平台的迁移。

关键词:查询;后缀树;索引;云计算

随着信息技术的快速发展,越来企业和机构享受到信息技术的带来的便利,但是随之而来的海量数据的管理和分析确让医疗、通信、交通、金融及互联网等很多行业感到棘手。传统数据处理方式和手段对于如此大规模的数据管理往往无所适从,同时与此相关的软硬件以及维护的昂贵成本也是让大部分用户捉襟见肘。云计算是是一种新兴的计算模式,它隐藏了计算资源以及计算的执行过程,用户只需要通过浏览器或者应用程序界面提交计算任务或者服务请求,而不必考虑如何构建计算架构,如何组织、调度计算资源。越来越多的组织更愿意把数据中心从昂贵的高性能计算集群转移到公有云或私有云环境中。

由于云计算是建立在资源分布式存储和设备共享基础上的数据存储和计算模式,因此传统的数据库技术无法直接迁移到云计算平台。所以建立云计算平台其中一个关键性的技术就是建立云存储的数据库服务,这是一项具有挑战性的工作。文章主要讨论云计算的查询优化技术,为实现在云平台数据的快速检索和操作提供一个可行方法。

1云计算查询技术

随着大数据处理的需要,越来越多的应用服务和数据处理从高性能服务器转移到共有云或私有云系统中。在云计算系统中如何提供数据处理服务以及对数据高效管理成为云计算系统最关键的任务之一。由于云计算系统的数据存储和管理方式与传统的关系数据库的管理方式完全不同,因而无法直接将现有的数据库计算迁移到云计算系统中。并且云计算系统要求数据管理功能能提供良好的可扩展性和快速的、精准的数据存取能力,同时对于集群化的数据分析和高密度的并发性事务处理有高效的解决方案。类似与现有的数据库系统,查询处理及优化也是云计算系统中数据管理的关键技术。数据检索能力是云计算系统提供快速响应的服务的重要保障。在框架服务、平台服务和软件服务三种主要云计算服务模式下,查询技术都是重要的技术环节,也是用户和系统都会使用的重要功能。索引技术在数据管理系统中能够有效的提高查询质量,索引用于减少查询使用的CPU时间、磁盘读取等操作,以此提高查询性能,在云计算环境中构建有效的索引也可以提高查询的处理性能。文章提出了一种后缀树的快速检索技术,以实现在云计算系统中的数据快速查询。

2基于后缀数据的索引技术

当前云计算采用的索引技术分为两类:集中式索引和分布式索引。集中式索引是将文件划分为若干固定大小的数据块,并将数据索引集中存储在中心管理节点中,以确保元数据的存取效率;而分布式索引将数据均匀地存储到各个云节点,数据查询只需要整个云系统上的节点路由进行定位即可。文章提出的后缀树索引可以进行集中索引和分布索引,在小型私有云中可以进行集中索引,以提高管理效率,而在大型的云平台中,则可以进行分布式索引,以减轻系统压力。

2.1后缀树

对于查询一个路径表达式而言,可以通过表达式路径上的元素名和相应的属性名形成的表的连接来进行计算。例如对于查询M1/M2/M3,可以分解为M1/M2和M2/M3两次查询。然后把两次查询的结果进行连接,就可以得到一个完整的查询结果。然而,在再查询路径比较长的情况下,经过多次分解得到多个中间查询结果,则进行连接的代价往往比较高,从而影响查询的效率。如果能实现基于语义的查询,即把表达语义相同的数据结点集中在一个顶层结点上,在多项式时间内查询到该结点,将大大简化查询的流程和时间。这也是构造基于云计算查询路径后缀树的基本思想。总体上来说,文章提出的后缀树构造可以描述为:针对每个查询结点的语义路径生成一个后缀串,然后再利用这些后缀串形成一个查询后缀树,则该后缀树为查询路径上每个结点对应的后缀索引树(Sufflndex),下面给出Sufflndex的定义:

在云计算系统的数据库中通常存在多个文档结构,因此需要构建多个不同的Suffindex树。为了简化模型,我们通常假定这些文档构建的Suffindex树拥有共同的root虚根,因此可以在该虚根下构建一个多文档模型的Suffindex树的集合。为了更快速地实现查询,通常我们采用了路径导航的查询方式来实现云计算下的数据结点查询。Suffindex树本身来说也是后缀树,因此可以把文档中的路径提取出来进行字符的编码,并用后缀树来对这些路径进行索引,同时对那些具有相同索引路径的字符进行归并。这样,我们可以在线性时间内,对多文档结构的云数据库实现快速索引和查询,而且对于每个查询结点上的元素实例都可以按照它所在的文档模型的根节点到它的路径模式进行分组。

3基于后缀树云查询模型

本节就云计算中的查询流程给一个清晰的流程结构图,如图l所示。对于一个查询表达式输入,需要进行形式语句的检查,然后建立后缀结构。如果事先建立SuffIndex的索引,则直接进入索引查询器中进行索引查询;反之则需要进行语义路径分析,通过路径拆分生成多个查询片段,然后再在查询索引器中进行查询。云计算的后缀树查询就是利用后缀树建立查询索引,然后分配到各个节点上去,对于集中查询的方式,则交给索引数据库统一管理。

4结语

云计算在各个行业的应用势必带来行业信息化的快速发展,特别是低成本,高效率的云平台,使得资源共享,信息分布式处理以及大数据处理成为行业信息化建设的关键技术。文章对云计算中的查询优化技术进行了探讨,提出了一种后缀数据的查询方法,该方法无论在集中式还是分布式查询中,都具有一定的适应性,其基于后缀树云查询模型可以嵌入现有的数据库管理系统中,实现传统数据库技术向云计算数据管理技术的迁移。

猜你喜欢

云计算
谈云计算与信息资源共享管理
基于MapReduce的故障诊断方法
实验云:理论教学与实验教学深度融合的助推器