CN116881244A - 一种基于列存数据库的空间数据的实时处理方法及装置 - Google Patents
一种基于列存数据库的空间数据的实时处理方法及装置 Download PDFInfo
- Publication number
- CN116881244A CN116881244A CN202310657120.8A CN202310657120A CN116881244A CN 116881244 A CN116881244 A CN 116881244A CN 202310657120 A CN202310657120 A CN 202310657120A CN 116881244 A CN116881244 A CN 116881244A
- Authority
- CN
- China
- Prior art keywords
- data
- space
- database
- spatial
- relational
- 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.)
- Granted
Links
- 238000003672 processing method Methods 0.000 title abstract description 8
- 238000004458 analytical method Methods 0.000 claims abstract description 56
- 230000006870 function Effects 0.000 claims abstract description 50
- 238000000034 method Methods 0.000 claims abstract description 46
- 238000012545 processing Methods 0.000 claims abstract description 26
- 238000006243 chemical reaction Methods 0.000 claims description 11
- 230000008859 change Effects 0.000 claims description 10
- 238000012732 spatial analysis Methods 0.000 claims description 10
- 238000004590 computer program Methods 0.000 claims description 8
- 239000012634 fragment Substances 0.000 claims description 8
- 238000004364 calculation method Methods 0.000 claims description 7
- 238000013144 data compression Methods 0.000 claims description 6
- 238000004422 calculation algorithm Methods 0.000 claims description 5
- 230000001360 synchronised effect Effects 0.000 claims description 5
- 238000013500 data storage Methods 0.000 claims description 4
- 238000013507 mapping Methods 0.000 claims description 4
- 238000009877 rendering Methods 0.000 claims description 4
- 238000005259 measurement Methods 0.000 claims description 3
- 238000012544 monitoring process Methods 0.000 claims description 3
- 238000005265 energy consumption Methods 0.000 abstract description 5
- 238000010586 diagram Methods 0.000 description 8
- 238000004891 communication Methods 0.000 description 3
- 238000007906 compression Methods 0.000 description 2
- 230000006835 compression Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000007405 data analysis Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/221—Column-oriented storage; Management thereof
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/284—Relational databases
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
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)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供了一种基于列存数据库的空间数据的实时处理方法及装置,属于数据处理领域,该方法如下:根据预设的识别方法识别空间SHP文件中的空间数据并写入关系型空间数据库;将关系型空间数据库中的数据的geometry字段转换为WKT文本,并开启任务调度器;确定数据同步方式,将关系型空间数据库中的数据同步到列存数据库;构建空间分析指标体系,根据空间分析指标体系中的指标以及指标所对应的输入项、输出项和空间运算函数确定空间分析交叉函数对应的动态可执行SQL,并将根据动态可执行SQL得到的空间运算结果写入列存数据库;对列存数据库中的数据进行解析并将解析后的数据初始化为几何图形进行展示。本发明提高了调用展示空间数据的效率,降低了能耗。
Description
技术领域
本发明涉及数据处理技术领域,尤其涉及一种基于列存数据库的空间数据的实时处理方法、装置、设备及存储介质。
背景技术
现有的主流矢量空间数据分析和加载的方式是借助关系型数据库实的,主要的弊端在于运算慢、存储空间大,在进行空间计算分析时,查询数据时是按照行进行遍历查询,对于不需要查询的数据依然需要遍历,极大的浪费了计算资源和存储资源;
此外,在实际业务应用时,如果有空间数据的存在,需要独立规划空间数据的存储,没有办法通过统一存储解决空间和非空间存储一体化存储和分析的问题。
发明内容
本发明提供了一种基于列存数据库的空间数据的实时处理方法、装置、设备及存储介质,通过数据转换、压缩、分析、同步的方式将矢量空间数据存储到列存数据库中进行展示,可以高效、低能耗的调度空间数据进行分析展示。
第一方面,本发明的实施例提供了一种基于列存数据库的空间数据的实时处理方法,该方法包括:
根据预设的识别方法识别空间SHP文件中的空间数据并写入关系型空间数据库;
其中,空间数据包括:点类型空间数据、线类型空间数据和面类型空间数据;
将关系型空间数据库中的数据的geometry字段转换为WKT文本,并开启任务调度器;
确定数据同步方式,将关系型空间数据库中的数据同步到列存数据库;
其中,数据同步方式包括:一次性数据同步SQL脚本和差异化数据同步SQL脚本;
构建空间分析指标体系,根据空间分析指标体系中的指标以及指标所对应的输入项、输出项和空间运算函数确定空间分析交叉函数对应的动态可执行SQL,并将根据动态可执行SQL得到的空间运算结果写入列存数据库;
对列存数据库中的数据进行解析并将解析后的数据初始化为几何图形进行展示。
上述技术方案通过数据转换、压缩、分析、同步的方式将矢量空间数据存储到列存数据库中进行展示,可以高效、低能耗的调度空间数据进行分析展示。
可选地,根据预设的识别方法识别空间数据文件中的空间数据并写入关系型空间数据库,包括:
构建空间数据存储目录并以物理时间戳作为空间数据的存储目录名;
根据空间数据检测器从空间SHP文件的geometry空间字段中识别出空间数据;
通过Arcpy工具执行arcpy.FeatureClassToFeatureClass_conversion函数,将空间SHP文件写入关系型空间数据库。
可选地,根据预设的识别方法识别空间数据文件中的空间数据并写入关系型空间数据库,还包括:
监测空间SHP文件中空间数据的更新变化;
开启任务调度器,当监测到空间数据的变化时,增量执行Arcpy工具将空间SHP文件中更新的空间数据写入关系型空间数据库。
可选地,将关系型空间数据库中的数据的geometry字段转换为WKT文本,并开启任务调度器,包括:
获取关系型空间数据库中的空间数据;
解析空间数据得到点类型空间数据、线类型空间数据和面类型空间数据;
解析空间数据得到空间参考信息;
其中,空间参考信息包括:空间参考编码、原点坐标、坐标单位、M容差、XY容差和空间参考字符串信息;
解析空间数据得到空间属性信息;
根据空间参考信息、空间属性信息和postgis的st_astext函数,将点类型空间数据、线类型空间数据和面类型空间数据分别转换为WKT文本。
可选地,确定数据同步方式,将关系型空间数据库中的数据同步到列存数据库,包括:
根据关系型空间数据库中的数据更新频率确定数据同步策略;
根据数据同步策略选择数据同步工具和数据同步脚本语言;
配置数据同步任务并设置任务调度器的调度参数;
其中,调度参数包括:执行时间、执行周期、执行优先级和冲突问题处理;
确定数据同步脚本;
其中,数据同步脚本包括:一次性数据同步SQL脚本和差异化数据同步SQL脚本;
若不是进行空间数据更新,则通过任务调度器的任务调度模块执行一次性数据同步SQL脚本进行数据同步;
若是定期更新空间数据,则执行差异化数据同步SQL脚本进行数据同步;
确定列存数据库的执行线程数量,使用LZ4数据压缩算法对关系型空间数据库中的数据进行压缩并根据数据同步方式将关系型空间数据库中的数据并行写入列存数据库;
其中,线程数量的确定方式如下:
p*h*m/k=n;
式中,p为待同步表的数量、k为所有分片的数量、h为并发分片的数量、m为所述列存数据库中预设线程的数量。
可选地,构建空间分析指标体系,根据空间分析指标体系中的指标以及指标所对应的输入项、输出项和空间运算函数确定空间分析交叉函数对应的动态可执行SQL,并将根据动态可执行SQL得到的空间运算结果写入列存数据库,包括:
构建空间分析指标体系并对空间分析指标体系中的空间分析指标进行维度和度量的拆解得到一组原子指标;
分别对原子指标的计算路径进行映射分析,确定原子指标对应的输入项、输出项和空间运算函数;
对原子指标进行组装,串联原子指标的运算顺序和运算权重,构建由原子指标组成的空间分析交叉函数,并将空间分析交叉函数转化为动态可执行SQL;
执行动态可执行SQL,将空间运算结果写入列存数据库。
可选地,对列存数据库中的数据进行解析并将解析后的数据初始化为几何图形进行展示,包括:
设置列存数据库作为底图数据的数据源并输入连接信息;
其中,连接信息包括URL地址和账户密码;
使用OpenLayers函数对列存数据库中的WKT空间数据进行加载和初始化几何图形,并通过样式对矢量图层设置矢量要素的渲染;
将初始化后或渲染后的几何图形进行展示。
第二方面,本发明的实施例提供了一种基于列存数据库的空间数据的实时处理装置,该装置包括:
识别模块,用于根据预设的识别方法识别空间SHP文件中的空间数据并写入关系型空间数据库;
其中,空间数据包括:点类型空间数据、线类型空间数据和面类型空间数据;
转换模块,用于将关系型空间数据库中的数据的geometry字段转换为WKT文本,并开启任务调度器;
同步模块,用于确定数据同步方式,将关系型空间数据库中的数据同步到列存数据库;
其中,数据同步方式包括:一次性数据同步SQL脚本和差异化数据同步SQL脚本;
确定模块,用于构建空间分析指标体系,根据空间分析指标体系中的指标以及指标所对应的输入项、输出项和空间运算函数确定空间分析交叉函数对应的动态可执行SQL,并将根据动态可执行SQL得到的空间运算结果写入列存数据库;
展示模块,用于对列存数据库中的数据进行解析并将解析后的数据初始化为几何图形进行展示。
第三方面,本发明的实施例提供了一种电子设备,包括存储器和处理器,所述存储器上存储有计算机程序,所述处理器执行所述程序时实现如第一方面中任一实现方式所述的方法。
第四方面,本发明的实施例提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如第一方面中任一实现方式所述的方法。
本发明提供了一种基于列存数据库的空间数据的实时处理方法及装置,该方法如下:根据预设的识别方法识别空间SHP文件中的空间数据并写入关系型空间数据库;将关系型空间数据库中的数据的geometry字段转换为WKT文本,并开启任务调度器;确定数据同步方式,将关系型空间数据库中的数据同步到列存数据库;构建空间分析指标体系,根据空间分析指标体系中的指标以及指标所对应的输入项、输出项和空间运算函数确定空间分析交叉函数对应的动态可执行SQL,并将根据动态可执行SQL得到的空间运算结果写入列存数据库;对列存数据库中的数据进行解析并将解析后的数据初始化为几何图形进行展示。本发明可以让空间数据存储在列存数据库中,充分发挥了列存数据库高效、低能的优势去实现空间数据使用价值,提高了调用展示空间数据的效率,降低了能耗。
应当理解,发明内容部分中所描述的内容并非旨在限定本发明的实施例的关键或重要特征,亦非用于限制本发明的范围。本发明的其它特征将通过以下的描述变得容易理解。
附图说明
结合附图并参考以下详细说明,本发明各实施例的上述和其他特征、优点及方面将变得更加明显。在附图中,相同或相似的附图标记表示相同或相似的元素。
图1为本发明实施例的一种基于列存数据库的空间数据的实时处理方法的流程图;
图2为本发明实施例的一种基于列存数据库的空间数据的实时处理方法的子流程图;
图3为本发明实施例的一种基于列存数据库的空间数据的实时处理方法的子流程图;
图4为本发明实施例的一种基于列存数据库的空间数据的实时处理方法的子流程图;
图5为本发明实施例的一种基于列存数据库的空间数据的实时处理方法的子流程图;
图6为本发明实施例的一种基于列存数据库的空间数据的实时处理方法的子流程图;
图7为本发明实施例的一种基于列存数据库的空间数据的实时处理装置的结构示意图;
图8为本发明实施例的一种电子设备的结构图。
具体实施方式
为了使本技术领域的人员更好地理解本说明书一个或多个实施例中的技术方案,下面将结合本说明书一个或多个实施例中的附图,对本说明书一个或多个实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本说明书的一部分实施例,而不是全部的实施例。基于本说明书一个或多个实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本文件的保护范围。
需要说明的是,本发明实施例描述的仅仅是为了更加清楚的说明本发明实施例的技术方案,并不构成对本发明实施例提供的技术方案的限定。
图1为本发明实施例的一种基于列存数据库的空间数据的实时处理方法的流程图。如图1所示,包括:
S101、根据预设的识别方法识别空间SHP文件中的空间数据并写入关系型空间数据库。
其中,空间数据包括:点类型(point)空间数据、线类型(polyline)空间数据和面类型(polygon)空间数据。
可选地,步骤S101的具体子步骤可以如图2所示:
S201、构建空间数据存储目录并以物理时间戳作为空间数据的存储目录名;
示例性地,按照物理时间戳作为空间数据的存储目录名时,时间可以精确到分钟,该存储名录用于标识数据的最新变化时间,目录中包含point、polyline和polygon空间数据。
S202、根据空间数据检测器从空间SHP文件的geometry空间字段中识别出空间数据;
示例性地,空间数据检测器可以从空间SHP文件格式的geometry空间字段中识别出空间数据的数据类型,并监测每一类型数据的数据更新变化情况。
其中,空间数据检测器可以识别出的数据类型包括:point、polyline、polygon和multipoint空间数据。
S203、通过Arcpy工具执行arcpy.FeatureClassToFeatureClass_ conversion函数,将空间SHP文件写入关系型空间数据库。
示例性地,存入关系型空间数据库中的数据结构可以如下:postgreSQL+SDE。
可选地,上述步骤S101还可以包括:
监测空间SHP文件中空间数据的更新变化;
开启任务调度器,当监测到空间数据的变化时,增量执行Arcpy工具将空间SHP文件中更新的空间数据写入关系型空间数据库。
需要说明的是,任务调度器开启后保持长期运行,当步骤S202中的空间数据更新时,增量执行Arcpy工具将更新数据写入关系型空间数据库。
S102、将关系型空间数据库中的数据的geometry字段转换为WKT文本,并开启任务调度器。
可选地,步骤S102的具体子步骤可以如图3所示:
S301、获取关系型空间数据库中的空间数据;
S302、解析空间数据得到点类型空间数据、线类型空间数据和面类型空间数据;
示例性地,可以从关系型空间数据库中的shape字段中分别解析出对应point、polyline、polygon和multipoint空间数据。
S303、解析空间数据得到空间参考信息;
其中,空间参考信息包括:空间参考编码(srid)、原点X坐标(falsex)、原点Y坐标(falsey)、坐标单位(xyunits)、M容差(mcluster_tol)、XY容差(xycluster_tol)和空间参考字符串(srtext)信息。
S304、解析空间数据得到空间属性信息;
S305、根据空间参考信息、空间属性信息和postgis的st_astext函数,将点类型空间数据、线类型空间数据和面类型空间数据分别转换为WKT文本。
S103、确定数据同步方式,将关系型空间数据库中的数据同步到列存数据库。
其中,数据同步方式包括:一次性数据同步SQL脚本和差异化数据同步SQL脚本。
可选地,步骤S103的具体子步骤可以如图4所示:
S401、根据关系型空间数据库中的数据更新频率确定数据同步策略。
示例性地,可以以point、polyline和polygon原始空间数据规划更新频率,例如:按天更新,则执行一次性数据同步和按天差异性增量数据同步策略。
S402、根据数据同步策略选择数据同步工具和数据同步脚本语言。
示例性地,可根据空间数据的数据量级及同步频率情况选择数据同步工具和数据同步脚本语言,例如:spark和SQL。
S403、配置数据同步任务并设置任务调度器的调度参数。
其中,调度参数包括:执行时间、执行周期、执行优先级和冲突问题处理。
S404确定数据同步脚本。
其中,数据同步脚本包括:一次性数据同步SQL脚本和差异化数据同步SQL脚本。
若不是进行空间数据更新,则通过任务调度器的任务调度模块执行一次性数据同步SQL脚本进行数据同步;
若是定期更新空间数据,则执行差异化数据同步SQL脚本进行数据同步。
S405、确定列存数据库的执行线程数量,使用LZ4数据压缩算法对关系型空间数据库中的数据进行压缩并根据数据同步方式将关系型空间数据库中的数据并行写入列存数据库。
其中,线程数量的确定方式如下:
p*h*m/k=n;
式中,p为待同步表的数量、k为所有分片的数量、h为并发分片的数量、m为所述列存数据库中预设线程的数量。
示例性地,可以使用数据检测器获取到关系型空间数据库中待同步表的数量、所有分片的数量、并发分片的数量和列存数据库预设线程的数量。
可选地,使用LZ4数据压缩算法对数据进行压缩时,可以使用一张Hash表,快速找到匹配位置,逐个遍历原始待压缩数据存入Hash表。
其中,数据压缩需要与数据同步同时进行。
S104、构建空间分析指标体系,根据空间分析指标体系中的指标以及指标所对应的输入项、输出项和空间运算函数确定空间分析交叉函数对应的动态可执行SQL,并将根据动态可执行SQL得到的空间运算结果写入列存数据库。
可选地,步骤S104的具体子步骤可以如图5所示:
S501、构建空间分析指标体系并对空间分析指标体系中的空间分析指标进行维度和度量的拆解得到一组原子指标。
示例性地,得到的一组原子指标可以表示为:
空间分析指标V={指标1、指标2…指标n};
其中:V代表经过计算分析形成的空间分析指标,n代表原子指标的个数。
S502、分别对原子指标的计算路径进行映射分析,确定原子指标对应的输入项、输出项和空间运算函数。
示例性地,经过上述步骤S502可以得到如下表1所示的内容:
表1。
S503、对原子指标进行组装,串联原子指标的运算顺序和运算权重,构建由原子指标组成的空间分析交叉函数,并将空间分析交叉函数转化为动态可执行SQL。
S504、执行动态可执行SQL,将空间运算结果写入列存数据库。
S105、对列存数据库中的数据进行解析并将解析后的数据初始化为几何图形进行展示。
可选地,步骤S105的具体子步骤可以如图6所示:
S601、设置列存数据库作为底图数据的数据源并输入连接信息。
其中,连接信息包括URL地址和账户密码。
S602、使用OpenLayers函数对列存数据库中的WKT空间数据进行加载和初始化几何图形,并通过样式对矢量图层设置矢量要素的渲染。
S603、将初始化后或渲染后的几何图形进行展示。
通过上述步骤S601-S603,可以对列存数据库中的空间数据直接进行加载形成可视化图形,当空间数据变化时会引起空间图形的实时变化,可以更加直观地体现出空间数据的变化,能够及时地发现空间数据的变化。
示例性地,可以模拟数据更新,当point、polyline和polygon空间数据的数据源头文件发生变化时,可以数据检测器,然后在通过任务调度器执行数据同步,执行空间分析运算动态SQL,并通过OpenLayers加载的空间数据获取数据变化,对展示的几何图进行更新。
示例性地,空间数据的几何化展示也可以通过arcgis for JavaScript API完成。
本发明实施例提供了一种基于列存数据库的空间数据的实时处理方法,该方法如下:根据预设的识别方法识别空间SHP文件中的空间数据并写入关系型空间数据库;将关系型空间数据库中的数据的geometry字段转换为WKT文本,并开启任务调度器;确定数据同步方式,将关系型空间数据库中的数据同步到列存数据库;构建空间分析指标体系,根据空间分析指标体系中的指标以及指标所对应的输入项、输出项和空间运算函数确定空间分析交叉函数对应的动态可执行SQL,并将根据动态可执行SQL得到的空间运算结果写入列存数据库;对列存数据库中的数据进行解析并将解析后的数据初始化为几何图形进行展示。本发明可以让空间数据存储在列存数据库中,充分发挥了列存数据库高效、低能的优势去实现空间数据使用价值,提高了调用展示空间数据的效率,降低了能耗。
以下结合图7详细说明本申请实施例提供的可以执行上述基于列存数据库的空间数据的实时处理方法的装置。
示例性地,图7为本发明实施例的一种基于列存数据库的空间数据的实时处理装置的结构示意图;如图7所示,处理装置70包括:
识别模块701,用于根据预设的识别方法识别空间SHP文件中的空间数据并写入关系型空间数据库;
其中,空间数据包括:点类型空间数据、线类型空间数据和面类型空间数据;
转换模块702,用于将关系型空间数据库中的数据的geometry字段转换为WKT文本,并开启任务调度器;
同步模块703,用于确定数据同步方式,将关系型空间数据库中的数据同步到列存数据库;
其中,数据同步方式包括:一次性数据同步SQL脚本和差异化数据同步SQL脚本;
确定模块704,用于构建空间分析指标体系,根据空间分析指标体系中的指标以及指标所对应的输入项、输出项和空间运算函数确定空间分析交叉函数对应的动态可执行SQL,并将根据动态可执行SQL得到的空间运算结果写入列存数据库;
展示模块705,用于对列存数据库中的数据进行解析并将解析后的数据初始化为几何图形进行展示。
可选地,识别模块701,还用于构建空间数据存储目录并以物理时间戳作为空间数据的存储目录名;根据空间数据检测器从空间SHP文件的geometry空间字段中识别出空间数据;通过Arcpy工具执行arcpy.FeatureClassToFeatureClass_conversion函数,将空间SHP文件写入关系型空间数据库。
可选地,识别模块701,还用于监测空间SHP文件中空间数据的更新变化;开启任务调度器,当监测到空间数据的变化时,增量执行Arcpy工具将空间SHP文件中更新的空间数据写入关系型空间数据库。
可选地,转换模块702,还用于获取关系型空间数据库中的空间数据;解析空间数据得到点类型空间数据、线类型空间数据和面类型空间数据;解析空间数据得到空间参考信息;解析空间数据得到空间属性信息;根据空间参考信息、空间属性信息和postgis的st_astext函数,将点类型空间数据、线类型空间数据和面类型空间数据分别转换为WKT文本。
其中,空间参考信息包括:空间参考编码、原点坐标、坐标单位、M容差、XY容差和空间参考字符串信息。
可选地,同步模块703,还用于根据关系型空间数据库中的数据更新频率确定数据同步策略;根据数据同步策略选择数据同步工具和数据同步脚本语言;配置数据同步任务并设置任务调度器的调度参数。
其中,调度参数包括:执行时间、执行周期、执行优先级和冲突问题处理。
然后再通过同步模块703确定数据同步脚本。
其中,数据同步脚本包括:一次性数据同步SQL脚本和差异化数据同步SQL脚本;若不是进行空间数据更新,则通过任务调度器的任务调度模块执行一次性数据同步SQL脚本进行数据同步;若是定期更新空间数据,则执行差异化数据同步SQL脚本进行数据同步。
最后通过同步模块703确定列存数据库的执行线程数量,使用LZ4数据压缩算法对关系型空间数据库中的数据进行压缩并根据数据同步方式将关系型空间数据库中的数据并行写入列存数据库。
其中,线程数量的确定方式如下:
p*h*m/k=n;
式中,p为待同步表的数量、k为所有分片的数量、h为并发分片的数量、m为所述列存数据库中预设线程的数量。
可选地,确定模块704,还用于构建空间分析指标体系并对空间分析指标体系中的空间分析指标进行维度和度量的拆解得到一组原子指标;分别对原子指标的计算路径进行映射分析,确定原子指标对应的输入项、输出项和空间运算函数;对原子指标进行组装,串联原子指标的运算顺序和运算权重,构建由原子指标组成的空间分析交叉函数,并将空间分析交叉函数转化为动态可执行SQL;执行动态可执行SQL,将空间运算结果写入列存数据库。
可选地,展示模块705,还用于设置列存数据库作为底图数据的数据源并输入连接信息;其中,连接信息包括URL地址和账户密码;使用OpenLayers函数对列存数据库中的WKT空间数据进行加载和初始化几何图形,并通过样式对矢量图层设置矢量要素的渲染;将初始化后或渲染后的几何图形进行展示。
本发明实施例还提供了一种计算机电子设备,图8示出了可以应用本发明实施例的电子设备的结构示意图,如图8所示,该计算机电子设备包括,中央处理模块(CPU)801,其可以根据存储在只读存储器(ROM)802中的程序或者从存储部分808加载到随机访问存储器(RAM)803中的程序而执行各种适当的动作和处理。在RAM 803中,还存储有***操作所需的各种程序和数据。CPU 801、ROM 802以及RAM 803通过总线804彼此相连。输入/输出(I/O)接口805也连接至总线804。
以下部件连接至I/O接口805:包括键盘、鼠标等的输入部分806;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分807;包括硬盘等的存储部分808;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分809。通信部分809经由诸如因特网的网络执行通信处理。驱动器810也根据需要连接至I/O接口805。可拆卸介质811,诸如磁盘、光盘、磁光盘、半导体存储器等,根据需要安装在驱动器810上,以便于从其上读出的计算机程序根据需要被安装入存储部分808。
附图中的流程图和框图,图示了按照本发明各种实施例的***、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,所述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的***来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本发明实施例中所涉及到的模块或模块可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的模块或模块也可以设置在处理器中,例如,可以描述为:一种处理器包括识别模块701、转换模块702、同步模块703、确定模块704和展示模块705,其中,这些模块的名称在某种情况下并不构成对该模块本身的限定,例如,识别模块701还可以被描述为“用于根据预设的识别方法识别空间SHP文件中的空间数据并写入关系型空间数据库的识别模块701”。
作为另一方面,本发明还提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实施例中所述一种基于列存数据库的空间数据的实时处理装置中所包含的计算机可读存储介质;也可以是单独存在,未装配入电子设备中的计算机可读存储介质。计算机可读存储介质存储有一个或者一个以上程序,所述程序被一个或者一个以上的处理器用来执行描述于本发明的一种基于列存数据库的空间数据的实时处理方法。
以上描述仅为本发明的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本发明中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离所述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本发明中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。
Claims (10)
1.一种基于列存数据库的空间数据的实时处理方法,其特征在于,该方法包括:
根据预设的识别方法识别空间SHP文件中的空间数据并写入关系型空间数据库;所述空间数据包括:点类型空间数据、线类型空间数据和面类型空间数据;
将所述关系型空间数据库中的数据的geometry字段转换为WKT文本,并开启任务调度器;
确定数据同步方式,将所述关系型空间数据库中的数据同步到列存数据库;所述数据同步方式包括:一次性数据同步SQL脚本和差异化数据同步SQL脚本;
构建空间分析指标体系,根据所述空间分析指标体系中的指标以及所述指标所对应的输入项、输出项和空间运算函数确定空间分析交叉函数对应的动态可执行SQL,并将根据所述动态可执行SQL得到的空间运算结果写入所述列存数据库;
对所述列存数据库中的数据进行解析并将解析后的数据初始化为几何图形进行展示。
2.根据权利要求1所述的基于列存数据库的空间数据的实时处理方法,其特征在于,所述根据预设的识别方法识别空间数据文件中的空间数据并写入关系型空间数据库,包括:
构建空间数据存储目录并以物理时间戳作为所述空间数据的存储目录名;
根据空间数据检测器从所述空间SHP文件的geometry空间字段中识别出所述空间数据;
通过Arcpy工具执行arcpy.FeatureClassToFeatureClass_conversion函数,将所述空间SHP文件写入所述关系型空间数据库。
3.根据权利要求2所述的基于列存数据库的空间数据的实时处理方法,其特征在于,所述根据预设的识别方法识别空间数据文件中的空间数据并写入关系型空间数据库,还包括:
监测所述空间SHP文件中空间数据的更新变化;
开启任务调度器,当监测到空间数据的变化时,增量执行所述Arcpy工具将所述空间SHP文件中更新的空间数据写入所述关系型空间数据库。
4.根据权利要求1所述的基于列存数据库的空间数据的实时处理方法,其特征在于,所述将所述关系型空间数据库中的数据的geometry字段转换为WKT文本,并开启任务调度器,包括:
获取所述关系型空间数据库中的空间数据;
解析所述空间数据得到所述点类型空间数据、线类型空间数据和面类型空间数据;
解析所述空间数据得到空间参考信息,所述空间参考信息包括:空间参考编码、原点坐标、坐标单位、M容差、XY容差和空间参考字符串信息;
解析所述空间数据得到空间属性信息;
根据所述空间参考信息、所述空间属性信息和postgis的st_astext函数,将所述点类型空间数据、线类型空间数据和面类型空间数据分别转换为WKT文本。
5.根据权利要求1所述的基于列存数据库的空间数据的实时处理方法,其特征在于,所述确定数据同步方式,将所述关系型空间数据库中的数据同步到列存数据库,包括:
根据所述关系型空间数据库中的数据更新频率确定数据同步策略;
根据所述数据同步策略选择数据同步工具和数据同步脚本语言;
配置数据同步任务并设置所述任务调度器的调度参数;所述调度参数包括:执行时间、执行周期、执行优先级和冲突问题处理;
确定数据同步脚本,所述数据同步脚本包括:一次性数据同步SQL脚本和差异化数据同步SQL脚本;
其中,若不是进行空间数据更新,则通过所述任务调度器的任务调度模块执行所述一次性数据同步SQL脚本进行数据同步;
若是定期更新空间数据,则执行所述差异化数据同步SQL脚本进行数据同步;
确定所述列存数据库的执行线程数量,使用LZ4数据压缩算法对所述关系型空间数据库中的数据进行压缩并根据所述数据同步方式将所述关系型空间数据库中的数据并行写入所述列存数据库;
其中,线程数量的确定方式如下:
p*h*m/k=n;
式中,p为待同步表的数量、k为所有分片的数量、h为并发分片的数量、m为所述列存数据库中预设线程的数量。
6.根据权利要求1所述的基于列存数据库的空间数据的实时处理方法,其特征在于,所述构建空间分析指标体系,根据所述空间分析指标体系中的指标以及所述指标所对应的输入项、输出项和空间运算函数确定空间分析交叉函数对应的动态可执行SQL,并将根据所述动态可执行SQL得到的空间运算结果写入所述列存数据库,包括:
构建空间分析指标体系并对所述空间分析指标体系中的空间分析指标进行维度和度量的拆解得到一组原子指标;
分别对所述原子指标的计算路径进行映射分析,确定所述原子指标对应的输入项、输出项和空间运算函数;
对所述原子指标进行组装,串联所述原子指标的运算顺序和运算权重,构建由所述原子指标组成的空间分析交叉函数,并将所述空间分析交叉函数转化为动态可执行SQL;
执行所述动态可执行SQL,将空间运算结果写入所述列存数据库。
7.根据权利要求1所述的基于列存数据库的空间数据的实时处理方法,其特征在于,所述对所述列存数据库中的数据进行解析并将解析后的数据初始化为几何图形进行展示,包括:
设置所述列存数据库作为底图数据的数据源并输入连接信息;所述连接信息包括URL地址和账户密码;
使用OpenLayers函数对所述列存数据库中的WKT空间数据进行加载和初始化几何图形,并通过样式对矢量图层设置矢量要素的渲染;
将初始化后或渲染后的几何图形进行展示。
8.一种基于列存数据库的空间数据的实时处理装置,其特征在于,该装置包括:
识别模块,用于根据预设的识别方法识别空间SHP文件中的空间数据并写入关系型空间数据库;所述空间数据包括:点类型空间数据、线类型空间数据和面类型空间数据;
转换模块,用于将所述关系型空间数据库中的数据的geometry字段转换为WKT文本,并开启任务调度器;
同步模块,用于确定数据同步方式,将所述关系型空间数据库中的数据同步到列存数据库;所述数据同步方式包括:一次性数据同步SQL脚本和差异化数据同步SQL脚本;
确定模块,用于构建空间分析指标体系,根据所述空间分析指标体系中的指标以及所述指标所对应的输入项、输出项和空间运算函数确定空间分析交叉函数对应的动态可执行SQL,并将根据所述动态可执行SQL得到的空间运算结果写入所述列存数据库;
展示模块,用于对所述列存数据库中的数据进行解析并将解析后的数据初始化为几何图形进行展示。
9.一种电子设备,其特征在于,包括存储器和处理器,所述存储器上存储有计算机程序,所述处理器执行所述计算机程序时实现如权利要求1至7任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310657120.8A CN116881244B (zh) | 2023-06-05 | 2023-06-05 | 一种基于列存数据库的空间数据的实时处理方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310657120.8A CN116881244B (zh) | 2023-06-05 | 2023-06-05 | 一种基于列存数据库的空间数据的实时处理方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116881244A true CN116881244A (zh) | 2023-10-13 |
CN116881244B CN116881244B (zh) | 2024-03-26 |
Family
ID=88253744
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310657120.8A Active CN116881244B (zh) | 2023-06-05 | 2023-06-05 | 一种基于列存数据库的空间数据的实时处理方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116881244B (zh) |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101304856B1 (ko) * | 2012-09-18 | 2013-09-05 | (주)지오투정보기술 | 수치지도 서비스 속도 향상을 위한 공간데이터 관리 방법 및 시스템 |
CN104317843A (zh) * | 2014-10-11 | 2015-01-28 | 上海瀚之友信息技术服务有限公司 | 一种数据同步etl*** |
CN105911037A (zh) * | 2016-04-19 | 2016-08-31 | 湖南科技大学 | 锰矿区土水界面污染流中锰及伴生重金属分布预测方法 |
CN106708993A (zh) * | 2016-12-16 | 2017-05-24 | 武汉中地数码科技有限公司 | 基于大数据技术的空间数据存储处理中间件框架实现方法 |
CN111324605A (zh) * | 2020-01-22 | 2020-06-23 | 北京东方金信科技有限公司 | 数据库中数据混合存储动态调整方法及应用 |
CN111324610A (zh) * | 2020-02-19 | 2020-06-23 | 深圳市融壹买信息科技有限公司 | 一种数据同步的方法及装置 |
CN112346775A (zh) * | 2020-09-21 | 2021-02-09 | 杭州数智政通科技有限公司 | 指标数据通用处理方法、电子设备和存储介质 |
CN112988595A (zh) * | 2021-04-25 | 2021-06-18 | 深圳壹账通智能科技有限公司 | 动态同步测试方法、装置、设备及存储介质 |
CN113760240A (zh) * | 2020-09-02 | 2021-12-07 | 北京沃东天骏信息技术有限公司 | 一种生成数据模型的方法和装置 |
CN113946575A (zh) * | 2021-09-13 | 2022-01-18 | 中国电子科技集团公司第十五研究所 | 时空轨迹数据处理方法、装置、电子设备及存储介质 |
CN114036119A (zh) * | 2021-09-30 | 2022-02-11 | 河海大学 | 一种基于kettle和数据库日志的数据同步方法 |
CN116166686A (zh) * | 2022-12-08 | 2023-05-26 | 美林数据技术股份有限公司 | 基于维度模型的指标计算引擎实现方法 |
-
2023
- 2023-06-05 CN CN202310657120.8A patent/CN116881244B/zh active Active
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101304856B1 (ko) * | 2012-09-18 | 2013-09-05 | (주)지오투정보기술 | 수치지도 서비스 속도 향상을 위한 공간데이터 관리 방법 및 시스템 |
CN104317843A (zh) * | 2014-10-11 | 2015-01-28 | 上海瀚之友信息技术服务有限公司 | 一种数据同步etl*** |
CN105911037A (zh) * | 2016-04-19 | 2016-08-31 | 湖南科技大学 | 锰矿区土水界面污染流中锰及伴生重金属分布预测方法 |
CN106708993A (zh) * | 2016-12-16 | 2017-05-24 | 武汉中地数码科技有限公司 | 基于大数据技术的空间数据存储处理中间件框架实现方法 |
CN111324605A (zh) * | 2020-01-22 | 2020-06-23 | 北京东方金信科技有限公司 | 数据库中数据混合存储动态调整方法及应用 |
CN111324610A (zh) * | 2020-02-19 | 2020-06-23 | 深圳市融壹买信息科技有限公司 | 一种数据同步的方法及装置 |
CN113760240A (zh) * | 2020-09-02 | 2021-12-07 | 北京沃东天骏信息技术有限公司 | 一种生成数据模型的方法和装置 |
CN112346775A (zh) * | 2020-09-21 | 2021-02-09 | 杭州数智政通科技有限公司 | 指标数据通用处理方法、电子设备和存储介质 |
CN112988595A (zh) * | 2021-04-25 | 2021-06-18 | 深圳壹账通智能科技有限公司 | 动态同步测试方法、装置、设备及存储介质 |
CN113946575A (zh) * | 2021-09-13 | 2022-01-18 | 中国电子科技集团公司第十五研究所 | 时空轨迹数据处理方法、装置、电子设备及存储介质 |
CN114036119A (zh) * | 2021-09-30 | 2022-02-11 | 河海大学 | 一种基于kettle和数据库日志的数据同步方法 |
CN116166686A (zh) * | 2022-12-08 | 2023-05-26 | 美林数据技术股份有限公司 | 基于维度模型的指标计算引擎实现方法 |
Non-Patent Citations (3)
Title |
---|
LE, HV (HONG VAN LE): "G-HBase: A High Performance Geographical Database Based on HBase", IEICE TRANSACTIONS ON INFORMATION AND SYSTEMS, 30 April 2018 (2018-04-30), pages 1053 - 1065 * |
李杨: "基于Hadoop的地质灾害预警***设计与应用", 万方数据, 18 January 2019 (2019-01-18), pages 1 - 86 * |
石晓栊: "基于大数据应用的地质灾害数据存储策略", 知网, 18 January 2023 (2023-01-18), pages 1 - 8 * |
Also Published As
Publication number | Publication date |
---|---|
CN116881244B (zh) | 2024-03-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20190005104A1 (en) | Systems and methods for interest-driven data visualization systems utilizing visualization image data and trellised visualizations | |
US8819078B2 (en) | Event processing for graph-structured data | |
US20150112969A1 (en) | Systems and Methods for Interest-Driven Data Visualization Systems Utilizing Visualization Image Data and Trellised Visualizations | |
CN111324610A (zh) | 一种数据同步的方法及装置 | |
Cao et al. | Digital Twin–oriented real-time cutting simulation for intelligent computer numerical control machining | |
CN103390037A (zh) | 基于移动终端的万人协同标绘方法 | |
CN109871383B (zh) | 一种数据处理方法、装置、存储介质及电子设备 | |
CN113326314B (zh) | 数据可视化方法、装置、电子设备及可读存储介质 | |
US11507741B2 (en) | Document tracking through version hash linked graphs | |
CN113962597A (zh) | 一种数据分析方法、装置、电子设备及存储介质 | |
CN115686850A (zh) | 基于Spark的目标任务的处理方法、装置和电子设备 | |
CN111930731A (zh) | 数据转储方法、装置、设备及存储介质 | |
Zhou et al. | A parallel method to accelerate spatial operations involving polygon intersections | |
CN111177812A (zh) | 一种含有封闭空间的web地图构建方法和装置 | |
CN113190517B (zh) | 数据集成方法、装置、电子设备和计算机可读介质 | |
CN116881244B (zh) | 一种基于列存数据库的空间数据的实时处理方法及装置 | |
CN111125237B (zh) | 一种基于NoSql数据库的气象数值预报产品动态成图方法 | |
CN111198917A (zh) | 数据处理方法、装置、设备及存储介质 | |
CN113486416B (zh) | 一种3d建筑楼层分层的实现方法 | |
US20070074176A1 (en) | Apparatus and method for parallel processing of data profiling information | |
CN113722550A (zh) | 一种关系图谱的实现方法、装置、电子设备及存储介质 | |
CN113626507A (zh) | 一种可视化简报文件的生成方法、***及存储介质 | |
CN112084252A (zh) | 多数据联动交互方法和装置 | |
US12001710B2 (en) | Dynamic update of consolidated data based on granular data values | |
CN112732833B (zh) | 一种获取区块链信息的通用数据桥架构和设计方法 |
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 | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20240220 Address after: Room 105, 1st Floor, Building 5, No. 8 Dongbei Wangxi Road, Haidian District, Beijing, 100193 Applicant after: Yizhirui Information Technology Co.,Ltd. Country or region after: China Address before: 601, Unit 6, 3rd Floor, No. 25 Shangdi East Road, Haidian District, Beijing, 100089 Applicant before: Beijing Jietai Yunji Information Technology Co.,Ltd. Country or region before: China |
|
TA01 | Transfer of patent application right | ||
GR01 | Patent grant | ||
GR01 | Patent grant |