Spark SQL分布式全文检索框架的设计与实现

来源 :中国科学院大学 | 被引量 : 0次 | 上传用户:lhj123
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
随着信息化的深入,大数据在各个领域产生了巨大的价值,海量数据的存储和快速分析成为新的挑战。传统的关系型数据库由于其性能、扩展性的不足以及价格昂贵等方面的缺点难以满足大数据的存储和分析需求。Spark SQL是基于大数据处理框架Spark的数据分析工具,支持关系型SQL查询,目前已支持TPC-DS基准,成为了大数据背景下传统数据仓库的替代解决方案。全文检索作为一种文本搜索的有效方式,能够与一般查询操作结合使用,提供更加丰富的查询和分析操作,在众多关系型数据库中都提供了全文检索功能。目前,Spark SQL仅支持简单的查询操作,不支持全文检索。  为了满足传统业务迁移和现有业务对于全文检索的使用需求,论文提出并实现了一个基于Spark SQL的分布式全文检索框架,并在如下四个方面开展了关键技术研究:  (1)针对Spark SQL尚不支持使用SQL全文检索的问题,提出了全文检索文法和全文检索查询语言到检索模型的翻译转换方法。  (2)针对Spark缺少分布式环境下索引建立和查询方法的问题,提出了检索模型的并行化方法。包括数据的并行化、索引建立和查询计算的并行化、索引多作业间的共享、全局结果聚合。  (3)针对Spark尚未支持索引的问题,提出了存储模型与检索优化方案。在建立索引阶段,本文提出两类存储模型即拥有高查询性能的全量存储模型和极低索引存储量的索引指定列存储模型。在查询阶段,基于索引指定列存储模型,提出了能够将查询结果与原表数据进行连接、具有O(n)复杂度的分区对齐连接算法,同时,基于两类存储模型提出了谓词下推以及列裁剪优化策略。  (4)设计和实现了Spark SQL分布式全文检索系统,使用大规模数据集对系统的性能、扩展性进行了评测,与传统关系型数据库进行了比较。  实验表明,相比传统关系型数据库,在两种存储模型和相应检索优化方案下,该框架索引构建的平均速度比传统数据库的快166倍和200倍,查询的平均速度快99倍和9倍,在索引指定列存储模型中,索引存储量减少为传统数据库的55%,有效验证了Spark SQL全文检索框架能够满足海量数据的全文检索需求。
其他文献
对国内外工作流技术研究情况分析可知,大规模的分布式工作流系统已经成为趋势.通过比较分析分布式工作流管理系统的实现技术,采用了CORBA技术作为实现技术.同时结合Java技术
本文针对ScopeOLAP系统中格的产生算法和实例化视图选择算法的不足之处加以改进和优化,使其更加实用。ScopeOLAP系统中的格产生算法递归调用程序,时间复杂度很大。为改善其性能
优化设计是指利用最优化原理进行工程设计,使设计结果在某些方面到达最优。战后40年来,工程设计的最优化在机械工程和土木工程等传统项目中获得坚强的立足点。后来,它被推广应用
随着计算机应用需求的拓展和计算机硬件特别是网络技术的日趋成熟,分布式数据库系统迅速发展起来。分布式数据库系统通常包括以下几个部分:用户接口子系统、目录结构管理子系统
低分辨率问题导致图像的细节信息减少,造成观测目标的识别非常困难,特别是卫星空间成像低分辨率问题制约着研究探索的发展,是亟待解决的问题之一。通用的解决方式是提高相机传感
该文仔细研究了现有的数据仓库的各种模型,仍然采取了最常用的基于关系理论的数据模型--雪花模型作为基本的存取模型,但为了更好的支持决策,对它加以扩充和改造,形成了一种新
该文结合中国医科大学第二附属医院实验室临床检验的现状以及临床检验的特殊性及重要性.提出了实验室全面质量控制.介绍了几种常用的Westgard单规则和多规则,对Westgard单规
学位
随着Internet服务发展的需要,用户对于网络服务性能水平提出了越来越高的要求,甚至会就服务水平与ISP签订合约。但是,现在的网络却面临着诸多复杂的问题:基于宽带的应用对于
本文首先提出了一种新的网络应用:无线终端通过AP接入校园网,从而实现校园网中无线终端之间的语音通信,校园网的宽带为这一应用提供了必要条件。接着,本文从基于H.323协议的VoIP