设计 任务书 文档 开题 答辩 说明书 格式 模板 外文 翻译 范文 资料 作品 文献 课程 实习 指导 调研 下载 网络教育 计算机 网站 网页 小程序 商城 购物 订餐 电影 安卓 Android Html Html5 SSM SSH Python 爬虫 大数据 管理系统 图书 校园网 考试 选题 网络安全 推荐系统 机械 模具 夹具 自动化 数控 车床 汽车 故障 诊断 电机 建模 机械手 去壳机 千斤顶 变速器 减速器 图纸 电气 变电站 电子 Stm32 单片机 物联网 监控 密码锁 Plc 组态 控制 智能 Matlab 土木 建筑 结构 框架 教学楼 住宅楼 造价 施工 办公楼 给水 排水 桥梁 刚构桥 水利 重力坝 水库 采矿 环境 化工 固废 工厂 视觉传达 室内设计 产品设计 电子商务 物流 盈利 案例 分析 评估 报告 营销 报销 会计
 首 页 机械毕业设计 电子电气毕业设计 计算机毕业设计 土木工程毕业设计 视觉传达毕业设计 理工论文 文科论文 毕设资料 帮助中心 设计流程 
垫片
您现在所在的位置:首页 >>计算机毕业设计 >> 文章内容
                 
垫片
   我们提供全套毕业设计和毕业论文服务,联系微信号:biyezuopin QQ:2922748026   
基于二分混合空间曲线的HBase多维索引构建及查询优化问题研究 硕士毕业论文+小论文+开题报告+开题答辩PPT+中期考察表+中期答辩PPT+答辩稿+毕业答辩PPT+毕设演示系统+实验记录+英文论文
文章来源:www.biyezuopin.vip   发布者:毕业作品网站  

摘要

HBase是基于分布式文件系统Hadoop的开源数据库,能够支持海量数据的实时读写。为了支持快速的数据写入,HBase并没有提供对多维索引的支持。然而,许多HBase的应用场景中都需要使用多维索引,例如电商、物联网、交通等领域。因此,许多研究致力于为HBase多维索引提供解决方案。其中,基于线性化技术的全局索引方案首先将多维数据线性化为一维序列,然后在一维序列上建立索引结构,取得了不错的插入、查询效率。然而,这种方案在确保数据并发性和一致性的实现上较为复杂,且大多数方案的查询效率和使用的线性化技术仍有改进空间。

本文首先从理论上改进线性化技术。空间填充曲线是一种常见的线性化技术,局部性、聚集度是衡量空间填充曲线“好坏”的两类理论指标。在众多的空间填充曲线中,Z曲线由于编码简单、支持二分划分裁剪多维空间而得到广泛应用,然而其局部性、聚集度较差。本文使用Z曲线等支持二分划分的空间填充曲线混合理论性质优良的其他空间填充曲线,提出一种新的二分混合空间填充曲线,不仅能够支持二分划分裁剪多维数据空间,并且拥有更好的局部性、聚集度。在实验条件下,使用Z曲线混合Hilbert曲线的Blend_Z_Hilbert曲线在局部性指标上较Z曲线提升20%以上,在聚集度指标上提升50%以上。

接着,基于二分混合空间填充曲线降维后的一维数据,提出了一种基于流式批处理计算的HBase多维索引结构SFI-HBase。在数据插入方面,SFI-HBase使用Spark Streaming对插入全量索引层的数据提前进行聚合、存储,提供了对并发插入的支持,实现了良好的插入效率。在数据查询方面,SFI-HBase的全量索引层存储不同粒度的索引信息,能够根据范围、KNN查询条件选择索引粒度,进而提高查询效率。在实验对比方面,与多种HBase多维索引解决方案进行了插入和查询实验对比,结果表明本文提出的索引结构具有综合最优的时空效率。与线性化技术经典解决方案MD-HBase相比,SFI-HBase的范围查询效率提高10%左右,KNN查询效率提高5倍以上,插入效率提高十倍以上。

最后,为了验证SFI-HBase在真实场景中的可用性,基于开源网约车数据集实现了一个网约车离线分析平台。该平台能够自动的将插入到MySQL的数据通过采集、计算的方式自动同步到SFI-HBase的存储层和全量索引层,并能够基于时间、经纬度等多维条件实现对网约车订单数据的高效查询。

关键词:HBase,二分混合空间填充曲线,多维索引,流式计算


Research on HBase multi-dimensional Index construction and query optimization based on binary blend Space Filling Curve

Master Candidate: Hu Zhao

(Software Engineering)

Directed by Sun Qiao, Wang Xinyang and Sun YueRan

ABSTRACT

HBase is an open-source database based on the distributed file system Hadoop, capable of supporting real-time read and write operations for massive data. To facilitate rapid data insertion, HBase does not offer support for multi-dimensional indexing. However, many application scenarios of HBase require the use of multi-dimensional indexing, such as in the fields of e-commerce, IoT (Internet of Things), transportation, etc. Thus, numerous studies are dedicated to providing solutions for multi-dimensional indexing in HBase. Among them, the global indexing scheme based on linearization techniques first linearizes multi-dimensional data into a one-dimensional sequence, and then builds an indexing structure on this one-dimensional sequence, achieving commendable insertion and query efficiency. However, this approach tends to be complex in ensuring data concurrency and consistency, and the query efficiency and employed linearization techniques of most schemes still have room for improvement.

This paper first theoretically improves linearization techniques. Space-filling curves are a common type of linearization technique, where locality and clustering degree are two theoretical indicators to measure the "quality" of space-filling curves. Among various space-filling curves, the Z-curve, due to its simple encoding and support for binary partition trimming of multi-dimensional spaces, is widely applied. However, its locality and clustering degree are relatively poor. This paper mixes the Z-curve, which supports binary partitioning, with other space-filling curves with excellent theoretical properties, proposing a new binary-mixed space-filling curve that not only supports binary partition trimming of multi-dimensional data spaces but also possesses better locality and clustering degree. Under experimental conditions, the Blend_Z_Hilbert curve, which mixes the Z-curve with the Hilbert curve, improves over 20% in locality and over 50% in clustering degree compared to the Z-curve alone.

Following this, based on the one-dimensional data after dimensionality reduction using the binary-mixed space-filling curve, a multi-dimensional index structure for HBase named SFI-HBase, based on stream-batch processing computation, is proposed. For data insertion, SFI-HBase uses Spark Streaming to aggregate and store the data intended for the full index layer in advance, providing support for concurrent insertions and achieving high insertion efficiency. For data querying, the full index layer of SFI-HBase stores different granularities of index information, enabling the selection of index granularity based on range and KNN query conditions, thereby improving query efficiency. In experimental comparisons with various HBase multi-dimensional indexing solutions, the results demonstrate that the index structure proposed in this paper has the best spatial-temporal efficiency. Compared to the classic linearization solution MD-HBase, the range query efficiency of SFI-HBase improves by about 10%, and the KNN query efficiency increases by more than five times, with over ten times improvement in insertion efficiency.

Lastly, to validate the usability of SFI-HBase in real scenarios, an offline analysis platform for ride-hailing services based on an open-source dataset has been implemented. This platform can automatically synchronize the data inserted into MySQL to the storage layer and full index layer of SFI-HBase through collection and computation, and efficiently query the ride-hailing order data based on multi-dimensional conditions such as time and latitude/longitude.

Keywords: HBase, binary mixed space filling curve, multidimensional index, stream computing


目录

1 绪论

1.1 研究背景与意义

1.2 国内外研究现状

1.2.1 索引技术

1.2.2 空间填充曲线

1.3 论文主要工作

1.4 论文章节安排

2 相关理论基础与技术简介

2.1 大数据存储与计算技术

2.1.1 Hadoop生态圈

2.1.2 HDFS

2.1.3 HBase

2.1.4 Spark Streaming

2.3 索引相关技术

2.3.1 二级索引

2.3.2 聚簇索引

2.3.3 多维索引

2.3 空间填充曲线

2.4 本章小结

3 基于可变阶数的二分混合空间填充曲线

3.1 问题描述

3.2 二分混合空间填充曲线

3.2.1 基本概念

3.2.2 编码方法

3.2.3 解码方法

3.2.4 编解码时空复杂度

3.2.5 可变阶数设置

3.3 空间填充曲线评价指标定义和说明

3.3.1 局部性

3.3.2 聚集度

3.4 空间填充曲线实验对比与分析

3.5 本章小结

4 基于二分混合空间填充曲线的多维流式全量索引

4.1 问题描述

4.1.1 数据倾斜与齐夫分布

4.1.2 线性化技术索引方案存在的问题

4.2多维流式全量索引SFI-HBase

4.2.1 SFI-HBase索引结构

4.2.2 范围查询

4.2.3 KNN查询

4.3索引性能实验对比与分析

4.3.1 插入效率对比

4.3.2 范围查询效率对比

4.3.2 KNN查询效率对比

4.4 本章小结

5 基于SFI-HBase的海量数据分析平台设计与实现

5.1 系统需求分析

5.1.1 功能性需求分析

5.1.2 非功能性需求分析

5.2 系统设计

5.2.1 系统架构设计

5.2.2 功能模块设计

5.2.3 数据库设计

5.3系统实现

5.3.1 员工管理模块

5.3.2 数据同步模块

5.3.3 订单查询模块

5.3.4 统计信息模块

5.4 系统测试

5.4.1 功能测试

5.4.2 性能测试

5.5 本章小结

6 总结与展望

6.1 总结

6.2 展望

参考文献






























  全套毕业设计论文现成成品资料请咨询微信号:biyezuopin QQ:2922748026     返回首页 如转载请注明来源于www.biyezuopin.vip  

                 

打印本页 | 关闭窗口
本类最新文章
基于Spring Boot的学生 基于Spring Boot的心理 基于Spring Boot的助农
基于Spring Boot和Vu 基于Vue.js的超市商品管理导 基于Spring Boot的二手
| 关于我们 | 友情链接 | 毕业设计招聘 |

Email:biyeshejiba@163.com 微信号:biyezuopin QQ:2922748026  
本站毕业设计毕业论文资料均属原创者所有,仅供学习交流之用,请勿转载并做其他非法用途.如有侵犯您的版权有损您的利益,请联系我们会立即改正或删除有关内容!