CN114168697A - 一种瓦片数据发布方法及装置 - Google Patents

一种瓦片数据发布方法及装置 Download PDF

Info

Publication number
CN114168697A
CN114168697A CN202111449281.5A CN202111449281A CN114168697A CN 114168697 A CN114168697 A CN 114168697A CN 202111449281 A CN202111449281 A CN 202111449281A CN 114168697 A CN114168697 A CN 114168697A
Authority
CN
China
Prior art keywords
tile data
data
tile
metadata
hbase database
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202111449281.5A
Other languages
English (en)
Inventor
王伟
陈静
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tianjin University of Technology and Education China Vocational Training Instructor Training Center
Original Assignee
Tianjin University of Technology and Education China Vocational Training Instructor Training Center
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tianjin University of Technology and Education China Vocational Training Instructor Training Center filed Critical Tianjin University of Technology and Education China Vocational Training Instructor Training Center
Priority to CN202111449281.5A priority Critical patent/CN114168697A/zh
Publication of CN114168697A publication Critical patent/CN114168697A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/29Geographical information databases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2228Indexing structures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2291User-Defined Types; Storage management thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Remote Sensing (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请提供一种瓦片数据发布方法,包括:将地图数据切割为瓦片数据并提取所述瓦片数据的元数据,将所述瓦片数据和所述瓦片数据的元数据存储到HBase数据库中;从所述HBase数据库中获取所述元数据,根据用户权限生成所述数据访问列表,并提取所述访问列表中的每一条元数据的摘要字符;根据所述摘要字符确定所述瓦片数据的行健,将所述行健输入到Openlayers中ol.source.XYZ组件的构造函数中计算所述瓦片数据在HBase数据库的瓦片数据源;将所述瓦片数据源加载进浏览器进行发布。通过HBase在海量瓦片数据文件存储、Openlayers在地理图形前端可视化上的多功能性,实现基于HBase的瓦片数据存储与前端可视化应用的一体化整合。本申请还提供一种瓦片数据发布装置。

Description

一种瓦片数据发布方法及装置
技术领域
本申请请求保护一种电子地图技术,尤其涉及一种瓦片数据发布方法。本 申请还涉及一种瓦片数据发布装置。
背景技术
地图瓦片是指将地图分割为多个尺寸相同的图片,缓存的瓦片数据集在数 量上呈金字塔结构,且具有单个文件小、文件数量多、整体数据量大等特点, 使用一般的磁盘存储,会造成严重磁盘碎片化、IO读写性能下降、数据易于损 坏以及难于管理维护等问题。另外,由于瓦片数据在前端浏览器中的加载应用 需要借助于单独的服务应用程序,因此,随着发布不同的瓦片数据集数量的增 多,会严重消耗服务器硬件资源,造成服务器性能显著下降。
为解决上述缺陷,现有技术中采取的措施有以下几种方案:1、基于Hadoop、 Hbase的底图瓦片云存储的解决方案,该运用Hilber曲线创建辅助索引,提高了 数据存储与检索的效率。2、通过多层级自适应的瓦片生成方法,优化了可视化 引擎,实现了大规模栅格数据瓦片金字塔的快速构建。3、通过空间查询特性和 Spark分布式内存计算模型,设计了HBase分布式存储、分布式空间索引、Spark 分布式内存计算框架的空间区域查询算法和SparkStreaming的空间查询算法, 提供实时在线空间查询服务。4、通过基于NoSQL数据库MongoDB的存储结构 设计并实现了一种时态地图瓦片数据存储模型,解决天地图建设和更新过程中 遇到的电子地图瓦片数据的版本管理、共享访问、存储扩容限制等方面的问题。5、通过基于内存数据库和No-SQL数据库的空间大数据分布式存储与综合处理 策略,用以解决大数据存储与管理方面面临的复杂问题。
但是,现有技术大多从瓦片数据存储与管理的角度,提出相应的解决方案, 如何实现数据存储与前端可视化应用的无缝整合,目前还没有相应的解决办法。
发明内容
为了解决当前技术方案中数据存储与前端可视化应用的无缝整合效果较差 的问题,本申请提出一种瓦片数据发布方法以及一种瓦片数据发布装置。
本申请提供一种瓦片数据发布方法,包括:
将地图数据切割为瓦片数据并提取所述瓦片数据的元数据,将所述瓦片数 据和所述瓦片数据的元数据存储到HBase数据库中;
从所述HBase数据库中获取所述元数据,根据用户权限生成所述数据访问 列表,并提取所述访问列表中的每一条元数据的摘要字符;
根据所述摘要字符确定所述瓦片数据的行健,将所述行健输入到Openlayers 中ol.source.XYZ组件的构造函数中计算所述瓦片数据在HBase数据库的瓦片数 据源;
将所述瓦片数据源加载到浏览器进行发布。
可选的,所述瓦片数据的元数据包括:瓦片数据的种类描述、标题描述、 数据来源描述和数据版本描述。
可选的,所述瓦片数据在存储到HBase数据库中之前根据所述瓦片数据更 新所述瓦片数据对应的元数据。
可选的,所述元数据通过MD5算法生成32位字符的行健头。
可选的,所述行健还包括:瓦片路径。
可选的,所述HBase数据库存储所述瓦片数据的步骤包括:
从存储介质上遍历所述瓦片数据;
将遍历后的所述瓦片数据转换为Base-64编码格式的瓦片数据;
调用HBase数据库接口将所述Base-64编码格式的瓦片数据存储到HBase 数据库中。
可选的,所述HBase数据库包括:
一级目录,用于存储不同缩放级别的瓦片数据;
二级目录,用于存储不同的列号的瓦片数据;
三级目录,用于存储不同的行号的瓦片数据。
本申请还提供一种瓦片数据发布装置,包括:
存储模块,用于将地图数据切割为瓦片数据并提取所述瓦片数据的元数据, 将所述瓦片数据和所述瓦片数据的元数据存储到HBase数据库中;
提取模块,用于从所述HBase数据库中获取所述元数据,根据用户权限生 成所述数据访问列表,并提取所述访问列表中的每一条元数据的摘要字符;
计算模块,用于根据所述摘要字符确定所述瓦片数据的行健,将所述行健 输入到Openlayers中ol.source.XYZ组件的构造函数中计算所述瓦片数据在 HBase数据库的瓦片数据源;
发布模块,用于将所述瓦片数据源加载到浏览器进行发布。
可选的,所述瓦片数据的元数据包括:瓦片数据的种类描述、标题描述、 数据来源描述和数据版本描述。
可选的,所述瓦片数据在存储到HBase数据库中之前根据所述瓦片数据更 新所述瓦片数据对应的元数据。
可选的,所述元数据通过MD5算法生成32位字符的行健头。
可选的,所述行健还包括:瓦片路径。
可选的,所述存储模块包括:
遍历单元,用于从存储介质上遍历所述瓦片数据;
转换单元,用于将遍历后的所述瓦片数据转换为Base-64编码格式的瓦片数 据;
调用单元,用于调用HBase数据库接口将所述Base-64编码格式的瓦片数 据存储到HBase数据库中。
可选的,所述HBase数据库包括:
一级目录,用于存储不同缩放级别的瓦片数据;
二级目录,用于存储不同的列号的瓦片数据;
三级目录,用于存储不同的行号的瓦片数据。
本申请相较于现有技术的优点是:
本申请提供一种瓦片数据发布方法,包括:将地图数据切割为瓦片数据并 提取所述瓦片数据的元数据,将所述瓦片数据和所述瓦片数据的元数据存储到 HBase数据库中;从所述HBase数据库中获取所述元数据,根据用户权限生成 所述数据访问列表,并提取所述访问列表中的每一条元数据的摘要字符;根据 所述摘要字符确定所述瓦片数据的行健,将所述行健输入到Openlayers中 ol.source.XYZ组件的构造函数中计算所述瓦片数据在HBase数据库的瓦片数据 源;将所述瓦片数据源加载进浏览器进行发布。通过HBase在海量瓦片数据文 件存储、Openlayers在地理图形前端可视化上的多功能性,实现基于HBase的瓦片数据存储与前端可视化应用的一体化整合。
附图说明
图1是本申请中瓦片数据的发布流程图。
图2是本申请中瓦片数据的存储框架图。
图3是本申请中瓦片数据入库流程图。
图4是本申请中瓦片数据在前端发布的流程图。
图5是本申请中瓦片数据发布装置示意图。
图6是本申请中存储模块示意图。
具体实施方式
以下内容均是为了详细说明本申请要保护的技术方案所提供的具体实施过 程的示例,但是本申请还可以采用不同于此的描述的其他方式实施,本领域技 术人员可以在本申请构思的指引下,采用不同的技术手段实现本申请,因此本 申请不受下面具体实施例的限制。
本申请提供一种本申请提供一种瓦片数据发布方法,包括:将地图数据切 割为瓦片数据并提取所述瓦片数据的元数据,将所述瓦片数据和所述瓦片数据 的元数据存储到HBase数据库中;从所述HBase数据库中获取所述元数据,根 据用户权限生成所述数据访问列表,并提取所述访问列表中的每一条元数据的 摘要字符;根据所述摘要字符确定所述瓦片数据的行健,将所述行健输入到 Openlayers中ol.source.XYZ组件的构造函数中计算所述瓦片数据在HBase数据 库的瓦片数据源;将所述瓦片数据源加载进浏览器进行发布。通过HBase在海 量瓦片数据文件存储、Openlayers在地理图形前端可视化上的多功能性,实现基 于HBase的瓦片数据存储与前端可视化应用的一体化整合。
图1是本申请中瓦片数据的发布流程图。
请参照图1所示,S101将地图数据切割为瓦片数据并提取所述瓦片数据的 元数据,将所述瓦片数据和所述瓦片数据的元数据存储到HBase数据库中。
本申请所述地图数据是指存储在存储设备上的电子数据,而不是常规的纸 面地图数据。所述地图数据可以是任何格式的适用于图形展示的数据。
针对一份地图数据,首先需要将所述地图数据分割为大小相等的多个瓦片 数据。优选的,本申请采用WGS84标准TMS(tile map service)瓦片的生成算 法进行地图数据的分割,形成多级别的瓦片数据。具体的,所述TMS瓦片生成 算法的程序如下:
//以投影后的平面地图左下角为原点,经度方向为横轴,纬度方向为纵轴建 立平面直角坐标系;
For zoom=0,1,2,…,n-1do;(zoom为缩放级别);
For 0≤col≤2zoom+1-1do
For 0≤row≤2zoom-1do
将坐标范围为[-180,180]的经度沿X轴平分2zoom+1份,将坐标范围[-90,90] 的纬度沿Y轴平分2zoom份,将地理坐标范围平分为2zoom+1*2zoom个格网;
生成zoom缩放级别下,横向编号为col、纵向编号为row、瓦片尺寸为 256*256的格网地图瓦片,并保存到磁盘;
row++;
end for
col++;
end for
Zoom++;
end for;
在上述程序代码中,所述缩放级别是指地图数据具有的不同缩放能力的版 本,本申请将不同缩放能力的地图数据存储在根目录下的第一级目录,所述第 一级目录中的每个文件都是具有不同缩放能力的地图数据。
所述一级目录,用于存储不同缩放级别的瓦片数据,在所述第一级目录下, 还具有第二级目录,所述第二级目录用于存储不同的列号的瓦片数据,所述列 号是按左下角为原点沿经度方向等距分割的每一列地图数据。在所述二级目录 下,还具有三级目录,所述三级目录用于存储不同的行号的瓦片数据,所述行 号是将分割的每一列地图数据延纬度等距分割的瓦片数据。
在上述瓦片数据存储目录中,每个文件都是从靠近地图数据左下角原点的 一侧向远离原点的一侧按照顺序进行编号。如此,通过所述编号即可确定每个 瓦片数据的经纬度,通过所述金纬度即可确定所述瓦片数据的编号。通过上述 的瓦片数据所在的经纬度和瓦片数据的编号之间存储的关系,就可以实现瓦片 数据的索引。
本申请中,还需要根据所述已经通过分割生成的瓦片数据,对应的生成所 述瓦片数据的元数据,然后基于所述元数据的标准,为所述瓦片数据创建数据 源。所述元数据是所述瓦片数据的注释,所述瓦片数据的元数据包括:瓦片数 据的种类描述、标题描述、数据来源描述和数据版本描述,用于记录所述瓦片 数据的属性信息。下面表1是本申请中基于JSON格式的元数据的具体内容:
Figure BDA0003385365600000061
表1
所述瓦片数据再存储到数据库前,都需要根据所述瓦片数据更新所述瓦片 数据对应的元数据,然后将所述瓦片数据和元数据进行存储。
本申请所述瓦片数据存储的数据库是HBase数据库,该数据库主要搭建在 HDFS分布式文件系统之上。
图2是本申请中瓦片数据存储技术框架图。
请参照图2所示,本申请所述技术框架主要分为3层,分别是私有云层201、 存储层202和应用层203。所述私有云内具有多个虚拟机,每个虚拟机都需要进 行数据获取和存储,因此其都通过统一的文件管理系统连接到存储层202。本申 请中,所述文件管理系统是HDFS分布式文件系统,在该文件管理系统之上搭 建HBase数据库,用于存储所述瓦片数据和元数据。
所述HBase数据库采用行健和列族两部分设计而成,所述列族是指文件存 储过程中,采用高表方案:即每一行数据中仅仅保留一个列族,列族内仅有一 列,用于存储二进制瓦片数据。
行健(Rowkey)是不可分割的字节数组,在表中按照字典排序由低到高存 储,是所述瓦片数据的唯一的索引。具体的,所述行健由头部字符串,即行键 头和尾部字符串,即瓦片路径组成。所述元数据通过MD5算法生成32位字符 的头部字符串,是所述元数据中记录的瓦片数据的描述信息按序组合成的描述 字符串,然后通过MD5算法计算所述描述字符串得到的32位摘要字符。所述 尾部字符串是瓦片路径,包括所述瓦片数据的缩放级别,列编码,行编码在内 的组合字符串。
请继续参照图1所示,S102从所述HBase数据库中获取所述元数据,根据 用户权限生成所述数据访问列表,并提取所述访问列表中的每一条元数据的摘 要字符。
在说明获取所述摘要字符之前,首先需要简单介绍本申请中所述瓦片数据 的入库流程,所述入库流程是所述HBase数据库存储所述瓦片数据的步骤。
图3是本申请中瓦片数据入库流程图。
请参照图3所示,S301从存储介质上遍历所述瓦片数据。
本申请中,所述瓦片数据是电子数据,存储于瓦片数据的存储介质上,通 过遍历的方式,获取所述瓦片数据的全部数据信息。在此之前,需要录入所述 瓦片数据的元数据,根据所述元数据生成摘要字符,根据所述摘要字符进行瓦 片数据的遍历。所述瓦片数据在存储到HBase数据库中之前根据所述瓦片数据 更新所述瓦片数据对应的元数据。
S302将遍历后的所述瓦片数据转换为Base-64编码格式的瓦片数据。
具体的,遍历全部瓦片数据后,判断是否存在所述摘要字符对应的瓦片数 据,若是则根据所述摘要字符生成所述瓦片数据的行键。
S303调用HBase数据库接口将所述Base-64编码格式的瓦片数据存储到 HBase数据库中。
调用HBase数据库接口是指HBase数据库的REST接口,是基于HBase REST Server接口开发的数据保存接口,所述数据保存接口如下表2所示:
Figure BDA0003385365600000081
表2
在完成所述瓦片数据的入库后,接下来就是进行瓦片数据发布的准备了。
图4是本申请中瓦片数据在前端发布的流程图。
请参照图4所示,在开始瓦片数据发布流程后,首先读取元数据,即从所 述HBase数据库中获取所述元数据,然后根据所述元数据获取数据访问列表。 本申请中元数据读取接口如表2所示:
Figure BDA0003385365600000082
表2
所述数据访问列表是根据用户的访问权限设置,依照用户的可访问权限, 由所述元数据生成。
生成所述数据访问列表后,还需要判断所述数据访问列表中是否为空,若 所述数据访问列表中数据为空,则表示用户不具有访问所述瓦片数据的权限, 若所述数据访问列表不为空,根据所述数据访问列表进行下一步。
请继续参照图1所示,S103根据所述摘要字符确定所述瓦片数据的行健, 将所述行健输入到Openlayers中ol.source.XYZ组件的构造函数中计算所述瓦片 数据在HBase数据库的瓦片数据源。
根据所述数据访问列表,提取所述瓦片数据的元数据的摘要字符,根据所 述摘要字符创建数据源。
具体的,所述瓦片数据的行键是根据所述摘要字符创建的,因此可以根据 所述摘要字符确定所述行键,根据所述行键建立数据源。
本申请中所述瓦片数据的发布通过Openlayers实现。所述Openlayers中具 有ol.source.XYZ组件的构造函数,通过在该ol.source.XYZ输入所述行键获得返 回值,得到瓦片数据,创建所述瓦片数据的瓦片数据源,核心代码如下:
Figure BDA0003385365600000091
请继续参照图1所示,将所述瓦片数据源加载到浏览器进行发布。
本申请中,将创建好的数据源,直接加载到Openlayers的Map组件,就可 以实现存储在HBase中的瓦片地图的浏览了。核心代码如下:
Figure BDA0003385365600000092
Figure BDA0003385365600000101
基于上述瓦片数据发布方法,本申请将通过具体的实验数据验证所述其有 益效果。
本申请采用Arcgis Image Server和HBase REST Server API两种接口分别调 用对比方法中的ArcGIS Tiled Image Server数据源和本申请方法中的HBase数据 源做出对照表,进行分析。
需要说明的是:TTFB(等待时间)是衡量应用程序服务器性能的重要指标 之一,它是Request(发出页面请求)到Response(接收到应答)数据第一个字节 所花费的毫秒数。利用Chrome浏览器开发者模式,分别获得两种技术方案下同 一地图视域下20个瓦片请求的TTFB。本验证分别对两种数据源下的地图页面 作3次刷新操作,对同一瓦片提取3组TTFB数据,并使用平均值作为获取该 瓦片的最终TTFB数值,测量结果如表3所示。
Figure BDA0003385365600000102
Figure BDA0003385365600000111
表3
从表3可以非常直观的看出,与基于ArcGIS Server的技术框架相比,运用 HBaseREST Server实现瓦片数据的发布功能,具有服务响应速度快、性能表现 稳定高效的突出优点,具有非常明显的性能优势。
本申请还提供一种瓦片数据发布装置,所述装置对应于上述瓦片数据发布 方法,包括:存储模块501、提取模块502、计算模块503、发布模块504。
图5是本申请中瓦片数据发布装置示意图。
请参照图5所示,存储模块501,用于将地图数据切割为瓦片数据并提取所 述瓦片数据的元数据,将所述瓦片数据和所述瓦片数据的元数据存储到HBase 数据库中。
本申请所述地图数据是指存储在存储设备上的电子数据,而不是常规的纸 面地图数据。所述地图数据可以是任何格式的适用于图形展示的数据。
针对一份地图数据,首先需要将所述地图数据分割为大小相等的多个瓦片 数据。优选的,本申请采用WGS84标准TMS(tile map service)瓦片的生成算 法进行地图数据的分割,形成多级别的瓦片数据。
本申请将不同缩放能力的地图数据存储在根目录下的第一级目录,所述第 一级目录中的每个文件都是具有不同缩放能力的地图数据。
所述一级目录,用于存储不同缩放级别的瓦片数据,在所述第一级目录下, 还具有第二级目录,所述第二级目录用于存储不同的列号的瓦片数据,所述列 号是按左下角为原点沿经度方向等距分割的每一列地图数据。在所述二级目录 下,还具有三级目录,所述三级目录用于存储不同的行号的瓦片数据,所述行 号是将分割的每一列地图数据沿纬度等距分割的瓦片数据。
在上述瓦片数据存储目录中,每个文件都是从靠近地图数据左下角原点的 一侧向远离原点的一侧按照顺序进行编号。如此,通过所述编号即可确定每个 瓦片数据的经纬度,通过所述金纬度即可确定所述瓦片数据的编号。通过上述 的瓦片数据所在的经纬度和瓦片数据的编号之间存储的关系,就可以实现瓦片 数据的索引。
本申请中,还需要根据所述已经通过分割生成的瓦片数据,对应的生成所 述瓦片数据的元数据,然后基于所述元数据的标准,为所述瓦片数据创建数据 源。所述元数据是所述瓦片数据的注释,所述瓦片数据的元数据包括:瓦片数 据的种类描述、标题描述、数据来源描述和数据版本描述,用于记录所述瓦片 数据的属性信息。下面表1是本申请中基于JSON格式的元数据的具体内容:
Figure BDA0003385365600000131
表1
所述瓦片数据再存储到数据库前,都需要根据所述瓦片数据更新所述瓦片 数据对应的元数据,然后将所述瓦片数据和元数据进行存储。
本申请所述瓦片数据存储的数据库是HBase数据库,该数据库主要搭建在 HDFS分布式文件系统之上。
请参照图2所示,本申请所述技术框架主要分为3层,分别是私有云层201、 存储层202和应用层203。所述私有云内具有多个虚拟机,每个虚拟机都需要进 行数据获取和存储,因此其都通过统一的文件管理系统连接到存储层202。本申 请中,所述文件管理系统是HDFS分布式文件系统,在该文件管理系统之上搭 建HBase数据库,用于存储所述瓦片数据和元数据。
所述HBase数据库采用行健和列族两部分设计而成,所述列族是指文件存 储过程中,采用高表方案:即每一行数据中仅仅保留一个列族,列族内仅有一 列,用于存储二进制瓦片数据。
行健(Rowkey)是不可分割的字节数组,在表中按照字典排序由低到高存 储,是所述瓦片数据的唯一的索引。具体的,所述行健由头部字符串,即行键 头和尾部字符串,即瓦片路径组成。所述元数据通过MD5算法生成32位字符 的头部字符串,是所述元数据中记录的瓦片数据的描述信息按序组合成的描述 字符串,然后通过MD5算法计算所述描述字符串得到的32位摘要字符。所述 尾部字符串是瓦片路径,包括所述瓦片数据的缩放级别,列编码,行编码在内 的组合字符串。
请继续参照图5所示,提取模块502,用于从所述HBase数据库中获取所述 元数据,根据用户权限生成所述数据访问列表,并提取所述访问列表中的每一 条元数据的摘要字符。
在说明获取所述摘要字符之前,首先需要简单介绍本申请中所述瓦片数据 的入库流程,所述入库流程是所述HBase数据库存储存储模块执行的,所述存 储模块还包括:
请参照图6所示,遍历单元601,用于从存储介质上遍历所述瓦片数据。
本申请中,所述瓦片数据是电子数据,存储于瓦片数据的存储介质上,通 过遍历的方式,获取所述瓦片数据的全部数据信息。在此之前,需要录入所述 瓦片数据的元数据,根据所述元数据生成摘要字符,根据所述摘要字符进行瓦 片数据的遍历。所述瓦片数据在存储到HBase数据库中之前根据所述瓦片数据 更新所述瓦片数据对应的元数据。
转换单元602,用于将遍历后的所述瓦片数据转换为Base-64编码格式的瓦 片数据。
具体的,遍历全部瓦片数据后,判断是否存在所述摘要字符对应的瓦片数 据,若是则根据所述摘要字符生成所述瓦片数据的行键。
调用单元603,用于调用HBase数据库接口将所述Base-64编码格式的瓦片 数据存储到HBase数据库中。
调用HBase数据库接口是指HBase数据库的REST接口,是基于HBase REST Server接口开发的数据保存接口,所述数据保存接口如下表2所示:
Figure BDA0003385365600000141
表2
在完成所述瓦片数据的入库后,接下来就是进行瓦片数据发布的准备了。
图4是本申请中瓦片数据在前端发布的流程图。
请参照图4所示,在开始瓦片数据发布流程后,首先读取元数据,即从所 述HBase数据库中获取所述元数据,然后根据所述元数据获取数据访问列表。 本申请中元数据读取接口如表2所示:
Figure BDA0003385365600000151
表2
所述数据访问列表是根据用户的访问权限设置,依照用户的可访问权限, 由所述元数据生成。
生成所述数据访问列表后,还需要判断所述数据访问列表中是否为空,若 所述数据访问列表中数据为空,则表示用户不具有访问所述瓦片数据的权限, 若所述数据访问列表不为空,根据所述数据访问列表进行下一步。
请继续参照图5所示,计算模块503,用于根据所述摘要字符确定所述瓦片 数据的行健,将所述行健输入到Openlayers中ol.source.XYZ组件的构造函数中 计算所述瓦片数据在HBase数据库的瓦片数据源。
根据所述数据访问列表,提取所述瓦片数据的元数据的摘要字符,根据所 述摘要字符创建数据源。
具体的,所述瓦片数据的行键是根据所述摘要字符创建的,因此可以根据 所述摘要字符确定所述行键,根据所述行键建立数据源。
本申请中所述瓦片数据的发布通过Openlayers实现。所述Openlayers中具 有ol.source.XYZ组件的构造函数,通过在该ol.source.XYZ输入所述行键获得返 回值,得到瓦片数据,创建所述瓦片数据的瓦片数据源。
请继续参照图5所示,发布模块504,用于将所述瓦片数据源加载进浏览器 进行发布。
本申请中,将创建好的数据源,直接加载到Openlayers的Map组件,就可 以实现存储在HBase中的瓦片地图的浏览了。

Claims (10)

1.一种瓦片数据发布方法,其特征在于,包括:
将地图数据切割为瓦片数据并提取所述瓦片数据的元数据,将所述瓦片数据和所述瓦片数据的元数据存储到HBase数据库中;
从所述HBase数据库中获取所述元数据,根据用户权限生成所述数据访问列表,并提取所述访问列表中的每一条元数据的摘要字符;
根据所述摘要字符确定所述瓦片数据的行健,将所述行健输入到Openlayers中ol.source.XYZ组件的构造函数中计算所述瓦片数据在HBase数据库的瓦片数据源;
将所述瓦片数据源加载到浏览器进行发布。
2.根据权利要求1所述瓦片数据发布方法,其特征在于,
所述瓦片数据的元数据包括:瓦片数据的种类描述、标题描述、数据来源描述和数据版本描述。
3.根据权利要求2所述瓦片数据发布方法,其特征在于,所述瓦片数据在存储到HBase数据库中之前根据所述瓦片数据更新所述瓦片数据对应的元数据。
4.根据权利要求1所述瓦片数据发布方法,其特征在于,所述元数据通过MD5算法生成32位字符的行健头。
5.根据权利要求4所述瓦片数据发布方法,其特征在于,所述行健还包括:瓦片路径。
6.一种瓦片数据发布装置,其特征在于,包括:
存储模块,用于将地图数据切割为瓦片数据并提取所述瓦片数据的元数据,将所述瓦片数据和所述瓦片数据的元数据存储到HBase数据库中;
提取模块,用于从所述HBase数据库中获取所述元数据,根据用户权限生成所述数据访问列表,并提取所述访问列表中的每一条元数据的摘要字符;
计算模块,用于根据所述摘要字符确定所述瓦片数据的行健,将所述行健输入到Openlayers中ol.source.XYZ组件的构造函数中计算所述瓦片数据在HBase数据库的瓦片数据源;
发布模块,用于将所述瓦片数据源加载到浏览器进行发布。
7.根据权利要求6所述瓦片数据发布装置,其特征在于,
所述瓦片数据的元数据包括:瓦片数据的种类描述、标题描述、数据来源描述和数据版本描述。
8.根据权利要求7所述瓦片数据发布装置,其特征在于,所述瓦片数据在存储到HBase数据库中之前根据所述瓦片数据更新所述瓦片数据对应的元数据。
9.根据权利要求6所述瓦片数据发布装置,其特征在于,所述元数据通过MD5算法生成32位字符的行健头。
10.根据权利要求9所述瓦片数据发布装置,其特征在于,所述行健还包括:瓦片路径。
CN202111449281.5A 2021-12-01 2021-12-01 一种瓦片数据发布方法及装置 Pending CN114168697A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111449281.5A CN114168697A (zh) 2021-12-01 2021-12-01 一种瓦片数据发布方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111449281.5A CN114168697A (zh) 2021-12-01 2021-12-01 一种瓦片数据发布方法及装置

Publications (1)

Publication Number Publication Date
CN114168697A true CN114168697A (zh) 2022-03-11

Family

ID=80481952

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111449281.5A Pending CN114168697A (zh) 2021-12-01 2021-12-01 一种瓦片数据发布方法及装置

Country Status (1)

Country Link
CN (1) CN114168697A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116341002A (zh) * 2023-03-17 2023-06-27 南通创越时空数据科技有限公司 一种地图数据脱敏方法和系统

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116341002A (zh) * 2023-03-17 2023-06-27 南通创越时空数据科技有限公司 一种地图数据脱敏方法和系统
CN116341002B (zh) * 2023-03-17 2023-12-12 南通创越时空数据科技有限公司 一种地图数据脱敏方法和系统

Similar Documents

Publication Publication Date Title
Lv et al. BIM big data storage in WebVRGIS
CN111291016B (zh) 一种海量遥感影像数据分层混合存储与索引方法
CN103412962A (zh) 一种海量瓦片数据的存储方法及读取方法
CN103995861B (zh) 一种基于空间关联的分布式数据装置、方法及系统
CN111930767B (zh) 一种基于多层缓存的矢量瓦片实时切片和更新方法
CN105956165B (zh) 一种三维模型数据的瓦片式大文件存储组织方法
CN111125392B (zh) 一种基于矩阵对象存储机制的遥感影像存储、查询方法
CN112380302B (zh) 基于轨迹数据的热力图生成方法、装置、电子设备以及存储介质
CN113628331B (zh) 一种虚幻引擎中摄影测量模型的数据组织和调度方法
CN103309943A (zh) 一种三维地理信息平台及其地形数据处理方法
CN113268557B (zh) 一种适应显示导向型可视化分析的快速的空间索引方法
US20230281182A1 (en) R-tree index merging and updating method and apparatus based on hilbert curve, and medium
CN116860905B (zh) 一种城市信息模型的空间单元编码生成方法
CN115391699B (zh) 一种云优化的静态地理信息矢量数据在线服务方法
CN114168697A (zh) 一种瓦片数据发布方法及装置
EP3889797A1 (en) Database index and database query processing method, apparatus, and device
CN109410118B (zh) 一种用于海量的点云数据快速加载显示方法
CN117056626A (zh) 一种地图预览的方法及装置
CN103425694A (zh) 关系型数据的搜索方法和装置
CN116467540A (zh) 一种基于HBase的海量空间数据快速可视化方法
CN114840792A (zh) 基于网格化处理的Web端疫情分布可视化系统与方法
WO2022188453A1 (zh) 在线即分析影像与格网立方体数据存储管理方法及系统
CN115145930A (zh) 基于树状层次索引的gis矢量数据层次编码方法及装置
Liang et al. Research on distributed storage of big data based on hbase remote sensing image
Bormann et al. Real-time indexing of point cloud data during LiDAR capture

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination