计算机应用 ›› 2018, Vol. 38 ›› Issue (10): 2869-2874.DOI: 10.11772/j.issn.1001-9081.2018040749

• 数据科学与技术 • 上一篇    下一篇

基于Hilbert-R树分级索引的时空查询算法

侯海耀1, 钱育蓉1, 英昌甜1,2, 张晗1, 卢学远1, 赵燚3   

  1. 1. 新疆大学 软件学院, 乌鲁木齐 830008;
    2. 新疆大学 电气工程学科博士后流动站, 乌鲁木齐 830046;
    3. 新疆大学 信息科学与工程学院, 乌鲁木齐 830046
  • 收稿日期:2018-04-12 修回日期:2018-07-08 出版日期:2018-10-10 发布日期:2018-10-13
  • 通讯作者: 钱育蓉
  • 作者简介:侯海耀(1990-),男,山西汾阳人,硕士研究生,主要研究方向:时空数据库索引、遥感图像处理;钱育蓉(1980-),女,山东武城人,教授,博士,CCF高级会员,主要研究方向:网络计算、遥感图像处理;英昌甜(1989-),女,新疆乌鲁木齐人,博士,主要研究方向:图像处理、内存计算;张晗(1987-),男,辽宁本溪人,硕士研究生,主要研究方向:图像处理、模式识别;卢学远(1992-),男,浙江温州人,硕士研究生,CCF会员,主要研究方向:图像处理、机器学习;赵燚(1993-),女,新疆克拉玛依人,硕士研究生,主要研究方向:时空数据库索引、遥感图像处理。
  • 基金资助:
    国家自然科学基金资助项目(61562086,61462079);新疆维吾尔自治区教育厅项目(XJEDU2016S035);新疆大学博士科研启动基金资助项目(BS150257);新疆维吾尔自治区教育厅创新团队项目(XJEDU2017T002)。

Spatio-temporal query algorithm based on Hilbert-R tree hierarchical index

HOU Haiyao1, QIAN Yurong1, YING Changtian1,2, ZHANG Han1, LU Xueyuan1, ZHAO Yi3   

  1. 1. School of Software, Xinjiang University, Urumqi Xinjiang 830008, China;
    2. Postdoctoral Research Station of Electrical Engineering, Xinjiang University, Urumqi Xinjiang 830046, China;
    3. School of Information Science and Engineering, Xinjiang University, Urumqi Xinjiang 830046, China
  • Received:2018-04-12 Revised:2018-07-08 Online:2018-10-10 Published:2018-10-13
  • Supported by:
    This work is partially supported by the National Natural Science Foundation of China (61562086, 61462079), the Education Department Project of Xinjiang Uygur Autonomous Region (XJEDU2016S035), the Doctoral Research Startup Fund of Xinjiang University (BS150257), the Funds for Creative Research Groups of Higher Education of Xinjiang Uygur Autonomous Region (XJEDU 2017T002).

摘要: 针对树形空间索引中多路查询及未考虑时间维索引的问题,提出一种结合时间和聚类结果的Hilbert-R树索引构建策略。首先,按照数据采集的周期划分时空数据集,并在此基础上建立时间索引,通过Hilbert曲线对空间数据进行分割编码,将空间坐标映射到一维区间;其次,依据数据要素在空间中的分布,采用动态确定K值的聚类算法,结合聚类结果构建高效的Hilbert-R树空间索引;最后,基于Redis几种常见的键值数据结构,对时空数据的时间属性和聚类结果构建分级索引。在时空范围及目标矢量对象查询的实验中,与缓存敏感R+树(CCR+)相比,所提算法可有效减少时间开销,查询时间平均缩短约25%,对不同密集型数据具有良好的适应性,可更好地支持Redis应用于海量时空数据查询。

关键词: 时空数据, Redis数据库, 聚类算法, Hilbert-R树, 分级索引, 时空范围查询

Abstract: Aiming at the problem of multi-path query in tree-spatial index and not considering temporal index, A Hilbert-R tree index construction scheme combining time and clustering results was proposed. Firstly, according to the periodicity of data collection, the spatial-temporal dataset was divided, and on this basis, a time index was established. The spatial data was partitioned and encoded by the Hilbert curve, and the spatial coordinates were mapped to one-dimensional intervals. Secondly, according to the distribution of the feature object in space, a clustering algorithm using dynamic determination of K value was adopted, to build an efficient Hilbert-R tree spatial index. Finally, based on several common key-value data structures of Redis, the hierarchical indexing mechanism of time attributes and clustering results was built. Compared with the Cache Conscious R+tree (CCR+), the proposed algorithm can effectively reduce the time overhead, and the query time is shortened by about 25% on average in the experiment of spatial-temporal range and target vector object query. It has good adaptability to different intensive data and can better support Redis for massive spatio-temporal data queries.

Key words: spatio-temporal data, Redis database, clustering algorithm, Hilbert-R tree, hierarchical index, spatio-temporal range query

中图分类号: