论文部分内容阅读
IDC2009调查报告表明,近年来飞速发展的互联网技术导致了数字信息的总量迅速增长,数字信息的组成也由传统的结构化数据偏向于非结构化数据,其中有70%~85%是图像、音频、视频等非结构化数据,与此同时,数据处理技术的研究和应用重心也由结构化数据处理转向这些复杂的非结构化数据的处理技术。海量的、复杂非结构化数据上的存储模型、数据管理和处理技术是传统数据管理技术所面临的巨大挑战。传统的关系数据库管理系统(RelationalDatabase Manage System,RDBMS)在存储、索引、代价优化以及大规模并行处理能力等方面还缺乏足够的支持,难以有效地满足海量数据上的包含复杂非结构化类型数据的混合查询处理需求。 首先,RDBMS的存储模型、索引技术的设计基础是结构化数据,缺乏对各种复杂非结构化类型数据的高效存取访问支持以及有效的索引机制;其次,RDBMS的代价模型及查询优化策略是基于磁盘访问代价的,是以数据密集型应用特点为基础,对于耗时的复杂非结构化类型数据上计算密集型的处理模型,这种优化模型不再适合;最后,随着数据类型的多样化且数据规模的迅速扩张,数据处理代价将成为新的瓶颈,传统的RDBMS缺乏高效、灵活的管理框架,需要在大规模并行处理及可扩展性方面进行扩展以适应海量复杂数据处理时代的应用需求。 本文以非结构化视频数据为例,研究包含复杂非结构化数据的混合数据管理问题,研究范围涵盖优化视频数据的存取性能、视频数据管理框架研究、视频数据的元数据及抽取信息的索引技术、包含视频数据的查询处理优化技术,以及大规模并行环境下包含视频处理的查询处理技术。本文研究背景是基于视频监控的大型超市数据管理技术,在应用中既包含传统的结构化数据,如客户信息、销售信息、货品情况等关系数据信息,又包括监控视频、顾客照片及视频、产品图片及视频等非结构化数据,并且查询中可能包含耗时的视频处理,例如从视频数据中抽取视频物理特征、语义等信息、人脸识别、轨迹识别等。用户提交的查询往往是涉及这两类数据的混合查询,即包含传统的关系数据与视频等非结构化数据。因此,在这一应用场景下,既要利用关系数据库管理海量的用户历史交易信息,又需要扩展关系数据库的功能,增强对视频文件存储、索引以及查询处理的能力,高效地执行包含这两类数据的混合查询。 本文目标是构建一个具有大规模并行处理及良好可扩展能力的结构化数据与视频数据混合数据管理平台,实现对视频数据的高效存储及索引,设计包含视频处理的混合查询代价优化模型,实现在多核及大规模并行环境中高效的、可扩展的查询处理技术。具体研究内容包括基于关系数据库的视频数据管理框架及执行语言研究、基于关系数据库的视频数据存储模型及索引技术研究和包含高代价谓词查询优化技术研究等。主要的研究工作如下: 1.提出以Pig-Latin-RDB(Pig-Latin in relational database,简称PLR)上的查询处理为最小执行单位,用以执行包含视频处理的查询,并设计了Pig-Latin-RDB基本操作及转换原则。客户端输入的包含视频处理的SQL语句,即ViSQL(Video SQL),被分解成以PLR为单位的细粒度的子查询,以便基于包含高代价的视频处理代价模型在系统中制定一个更为优化的执行计划。PLR语句与传统的SQL语句相比其执行查询的粒度更细,查询计划最后以PLR语句的形式进行调度线程控制并发送,执行计划中每个PLR被分配给一个独立的线程,发送到各结点执行。每条PLR是功能原子的基本执行单位,更容易实现PLR语句的代价估算,且每条PLR语句在独立的处理核心或单个数据库结点上执行,使中间结果的重用以及并行的可能性更大。 2.提出了对视频数据中抽取的用户轨迹进行索引的方法,并在关系数据库中通过关系模型模拟的方法实现该索引。在以关系数据库管理视频数据的技术背景下,设计了针对视频数据的存储策略,并为视频数据中抽取出的用户轨迹数据设计了对用户基本行为模式的索引方法。由于关系数据库本身不具有这种索引方式,本文提出基于关系模型的关系表、存储过程、触发器、一维索引等传统技术来模拟用户轨迹索引的方法,该方法具有很好的可移植性,进而实现有效地对用户行为模式进行检索的技术,实验表明其性能完全满足各种实际应用需要,能够为基于关系数据库的视频数据管理提供有力的技术支持。 3.提出以属性势值估算为基础的包含超高代价谓词的查询优化算法(OEPEC-PRO)。在包含视频处理的查询优化研究中,定义了超高代价谓词和超高代价谓词的执行方式,提出通过操作结果缓存(ORB)方式执行高代价谓词以有效降低高代价谓词执行次数,并确定操作结果缓存的索引策略(ORB*);对于包含超高代价谓词的查询,降低超高代价谓词的执行次数是提高查询性能的重要手段,因此计算查询计划树中各节点属性势值的变化,采用迭代的方式计算选择或连接操作产生的属性势值变化,在此基础上拟合出估算属性势值的函数,从而降低属型势值估算的计算代价,使其更加适合查询优化的需要。人们应用属型势值估算方法,考虑多个超高代价谓词之间相互的属性势值影响因素,估算各节点超高代价谓词的执行次数并依据规则加以调整,提出包含超高代价谓词查询的优化策略(OEPEC以及OEPEC-PRO)。这种优化策略进一步降低了超高代价谓词的执行次数,很好地解决了包含传统类型的数据和视频数据的混合查询处理的代价优化问题,实验结果表明,与以往包含高代价谓词的查询优化技术相比较,查询性能提高了30%到80%。 4.提出了在多核环境下以Pig-Latin-RDB方式执行包含视频处理的并行查询技术,Pig-Latin-RDB方式可以更有效的利用多核并行处理的硬件特性,提高查询处理性能;对于大规模并行处理环境下包含视频处理的混合查询,提出基于磁盘访问代价、超高代价谓词处理代价以及网络传输代价的并行查询处理代价模型,并实现对单个PLR的代价估算以及不同类型代价模型之间的规范化代价换算。此外将ORB技术扩展到当前主流的、海量数据处理的MapReduce框架中,提出ORB-MR(Operating Results Buffering in MapReduce)的方法以支持未来的视频云计算技术。该技术可以降低视频数据处理时在网络间的传输量,并使得在各Map节点上超高代价谓词执行的负载均衡,最终获得全局最少的超高代价谓词执行次数,进而提高查询整体的性能。