非零范围空间对象的索引方法--XZ序曲线索引
XZ-Ordering Method
1 背景
空间数据库系统的索引结构,主体采用R树索引及其各种变体。这些方法采用树状结构,树中每个节点均对应物理存储中的一页(Page)。该方法的问题在于,当在传统关系型数据库中实现R树时,无法直接和属性数据组合在一起统一管理,必须额外地增加一个索引文件或者索引表单独实现地理空间对象的空间索引,这种方式也被称为混合索引方案。这种混合索引方案存在以下几个方面问题:
非常难以维护,因为要保持两种结构的同步更新。如果一方更新失败,都会导致另一方被迫停止。为实现这一目的,必须要实现一种面向同质数据库系统的分布式提交协议,这需要对数据库内部技术细节非常了解,实现起来也非常耗时。采取混合索引方案会带来其他问题,例如:文件系统和数据库系统采用的是完全不同的数据安全策略、备份策略和并发访问策略,维护起来非常复杂。
面向对象数据库系统(另外一种NoSQL数据库)可能是解决上述问题的一种方案,因为面向对象数据库可以扩展面向应用的数据类型。但是在对象数据库中,如果要实现多维索引结构,也需要使用数据管理系统在块层级的存储管理访问接口,而大部分数据库管理系统并不 ...
分布式空间数据库「 6 」-- 空间填充曲线的聚簇性分析
空间填充曲线的聚簇性分析
一、 概述
先说结论,作者将曲线分为连续型(Hillbert、Peano等)、近连续型、非连续型(Z序、Morton等)分开讨论。
1.1 关于矩形查询的通用结论
(1)对于固定尺寸的“矩形查询 rrr ”,存在一个平均簇值的最优解(下限)。
(2)上述最优解(下限)受限于 rrr 的体积(用r中的单元数做量化)和形状(用 rrr中各维度上的边数来量化)。
(3)通常连续性曲线较非连续型曲线更接近最优解(下限)。
(4)对于固定尺寸的“矩形查询 rrr “ ,仅考虑部分旋转集时,总是构造一种连续型曲线,使其平均簇值达到最优值(下限)。
(5)对于固定尺寸的“矩形查询 rrr”,考虑其全旋转集时,所有连续型曲线的平均簇值都是最优解。
1.2 关于连续型曲线的结论
(1)对于连续型填充曲线,通过将某个查询 ggg 在各维度上做所有可能的平移后,得出统计结论:
该情况下,查询 ggg 的平均簇值仅和 ggg 的体积(用 ggg 内的单元数做量化)、形状(用 ggg 在各维度上边的数量来量化),以及填充曲线中各维度的边占比有关(用填充曲线中各维度上 ...
基于空间填充曲线的降维方法
#refplus, #refplus li{
padding:0;
margin:0;
list-style:none;
};
document.querySelectorAll(".refplus-num").forEach((ref) => {
let refid = ref.firstChild.href.replace(location.origin+location.pathname,'');
let refel = document.querySelector(refid);
let refnum = refel.dataset.num;
let ref_content = refel.innerText.replace(`[${refnum}]`,'');
tippy(ref, {
content: ref_content,
...
基于列族数据库构建分布式空间数据库
基于列族数据库构建分布式空间数据库
摘要:
在海量空间数据的分布式存储管理方案中,在已有成熟的分布式数据库之上实现空间数据组织和索引,是一种比较便利的方法。本文以GeoMesa为例,探讨其中的主要实现技术机理。主要技术点来自于Anthony Fox等人2013年发表的论文Spatio-temporal Indexing in Non-relational Distributed Databases,James N. Hughes等人2015年发表的“GeoMesa: a distributed architecture for spatio-temporal fusion”论文,以及GeoMesa的官方文档。
1 背景知识
移动传感器、微博等提供了大量带有地理标记的数据,在数量、速度和多样性方面呈现出典型大数据的4V特征。 这使人们不得不考虑使用诸如Accumulo和HBase之类的分布式数据库来管理这些海量数据。 不幸的是,现有的分布式数据库并没有专门的、符合标准的功能来管理时空数据,因此,出现了大量相关方面的软件系统,其中GeoMesa是最为典型,也最为成熟 ...
基于全文数据库构建分布式空间数据库
基于全文数据库构建分布式空间数据库
摘要:
利用现有商业和开源的分布式数据系统构建分布式空间数据库,是一种代价小、稳定性高的技术方案。其中,利用ElasticSearch、MangoDB等具备分布式部署能力的全文数据库构件分布式空间数据引擎,是最易实现的技术方案。根据大数据时代的分布式空间数据库)所述,空间数据索引主要有三种实现方式,一是在数据空间中进行划分,而后建立独立的索引结构,其缺点是索引需要与数据同步、索引更新复杂度高,优点是检索效率快;二是构造HASH函数,将多维空间中的数据映射到若干桶中,建立基于桶的索引结构,其优点是索引计算简单,缺点是不同的桶中数据规模不同,难以解决数据倾斜问题,此外也需要建立单独的索引结构,同样存在与数据同步的问题;三是将多维空间映射到一维值空间,直接借用成熟数据库内建的B+树索引,其优点是可直接移植到现有数据库中,缺点是需要将查询窗口映射到若干子区间,将单个查询转换为多个区间查询,计算复杂度较高,检索效率相对较低。本文所述方法属于第三类,并且重点针对全文数据库,借用全文数据库多节点分布式部署的功能实现分布式空间数据存储能力。本文核心 ...
空间大数据引擎综述文章:大数据时代的空间数据引擎
大数据时代的空间数据引擎
【摘要】本文是有关分布式空间数据库相关空间大数据库技术的综述性文章,主要包括几个方面:(1)目前三种主要的分布式空间数据库类型;(2)目前三种重要的分布式空间数据库的实现途径;(3)六个分布式数据库重点考虑的技术点,其中核心是空间索引模型、查询方法和查询语言;(4)三类主要的空间索引模型;(5)空间运算及空间查询方法,有关具体查询算法和空间索引模型密切相关,本文不做过多细节展开;(6)空间查询语言,由于目前不是本人关注重点,暂略,待后面补充。希望通过本文的介绍,让同学们能够对当前分布式空间数据库的技术现状有所了解,更多技术细节请参考文中列出的链接或参考文献,自信深入阅读。
一、分布式空间数据库的三种类型
根据目前空间大数据存储、组织和计算的现状,初步梳理如下:
3.1 以专业应用为重点,基于并行数据库的系统
以Parallel Secondo、Paradise、Sphinx为代表
重点解决的是如何在并行数据库(如:Exodus、Impala等)中实现空间数据的高效组织
此类系统的分布式能力来源于数据库本身
此类分布式空间数据库受限于 ...
基于分布式文件系统实现空间数据引擎
〖 摘 要〗在分布式空间数据库研究的技术体系中,基于成熟数据库实现海量空间数据的组织管理是一种便利的方式,但受限于基底数据库的约束,研究人员很难有更灵活的发挥。因此,直接在分布式文件系统基础上,重新构件分布式空间数据库的方法称为另外一条技术途径。原理上来说,此类方法不能称为严格的空间数据库构建方法,因为其管理的对象大多以静态数据为主,对插入、删除、更新等事物性较强的工作较少涉及。此类技术体系中,较为典型的系统是 SptialHadoop 和 HadoopGIS。本文以 SpatialHadoop 作为重点,剖析此类方法中的关键技术点。
1 背景知识
2 SpatialHadoop 架构
3 分布式空间数据引擎
4 查询方法
5 总结
略。
参考文献
明尼苏达大学 Mohamed F. Mokbel、Ahmed Eldawy、Louai Alarabi 等人发表的下列文献:
2013 年,在 VLDB 上发表的A demonstration of spatialhadoop: An efficient mapreduce framework for ...