CN112653771B - 水利数据分片存储方法、点播方法、处理系统 - Google Patents
水利数据分片存储方法、点播方法、处理系统 Download PDFInfo
- Publication number
- CN112653771B CN112653771B CN202110273986.XA CN202110273986A CN112653771B CN 112653771 B CN112653771 B CN 112653771B CN 202110273986 A CN202110273986 A CN 202110273986A CN 112653771 B CN112653771 B CN 112653771B
- Authority
- CN
- China
- Prior art keywords
- data
- flow velocity
- bson
- frame number
- client
- 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.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/06—Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/182—Distributed file systems
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/04—Protocols for data compression, e.g. ROHC
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/06—Notations for structuring of protocol data, e.g. abstract syntax notation one [ASN.1]
Abstract
本发明涉及一种水利数据分片存储方法、点播方法、处理系统,其中,所述水利数据分片存储方法,包括:S1、针对第一客户端接收的水动力模型的结果文件,以帧为单位进行提取处理获取水动力模型结果文件的每一帧所对应的第一结构化数据;水动力模型结果文件的每一帧均具有帧号;所述多个节点数据按照节点编号顺序依次纵向排列;S2、针对所述第一结构化数据进行重组处理,获取第二结构化数据;S3、针对所述第二结构化数据进行压缩处理,获取bson结构数据;所述bson结构数据包括标识所述bson结构数据所对应的二维水动力模型结果文件的帧号的标签;S4、将所述bson结构数据存入与所述第一客户端通信连接的文档数据库。
Description
技术领域
本发明涉及数据存储技术领域,尤其涉及一种水利数据分片存储方法、点播方法、处理系统。
背景技术
现有水利数据的存储和调取,水利数据中各水利模型多且对应结果文件非常大,占用较大的空间。例如二维水动力模型的结果文件较大,大的场景,数据存储量都会达到百G级别。
当前水利数据需要汇总在一起,各个水利部门能够实时或周期调取各区域的水利数据进行研究并确定合理的调度方案。基于此,现有技术中将各个水利模型及其对应的结果文件均上传到云端,使得连接云端的各服务器根据需求下载。由于水利模型和结果文件都非常大,按照当前普通的宽带(100M带宽)进行计算,至少需要3个多小时才能完成全部文件的传输。相应地,在下载过程中也是非常缓慢,占用较多带宽和较长时间。为此,在云化过程中,如何保持客户端和云端的快速、有效传输是亟待解决的问题。
发明内容
(一)要解决的技术问题
鉴于现有技术的上述缺点、不足,本发明提供一种水利数据分片存储方法、点播方法、处理系统。
(二)技术方案
为了达到上述目的,本发明采用的主要技术方案包括:
第一方面,本发明实施例提供一种水利数据分片存储方法,所述水利数据包括:水动力模型的结果文件,用于分片存储的结果文件均为具有时序性的文件,所述方法包括:
S1、针对第一客户端接收的水动力模型的结果文件,以帧为单位进行提取处理获取所述水动力模型的结果文件的每一帧所对应的第一结构化数据;
所述水动力模型的结果文件的每一帧均具有帧号;
所述第一结构化数据包括:多个具有节点编号的节点数据和标识所述第一结构化数据所对应的水动力模型的结果文件的帧号的标签;
所述多个节点数据按照节点编号顺序依次纵向排列;
每一节点数据包括依次横向排列的节点编号、预先设定的节点地理坐标的x值、预先设定的节点地理坐标的y值、渲染水深数据值、流速横向坐标分量值、流速纵坐标分量值、水深值、流速值、流速方向和水位值;
S2、针对所述第一结构化数据进行重组处理,获取第二结构化数据;
S3、针对所述第二结构化数据进行压缩处理,获取bson结构数据;
所述bson结构数据包括标识所述bson结构数据所对应的水动力模型的结果文件的帧号的标签;
S4、将所述bson结构数据存入与所述第一客户端通信连接的文档数据库。
优选的,
所述第二结构化数据包括:依次纵向排列的渲染水深数据数组、流速横向坐标分量数组、流速纵坐标分量数组、水深数组、流速大小数组、流速方向数组和水位数组;
所述渲染水深数据数组包括:按照节点编号顺序依次横向排列的节点的渲染水深数据值;
所述流速横向坐标分量数组包括:按照节点编号顺序依次横向排列的节点的流速横向坐标分量值;
所述流速纵坐标分量数组包括:按照节点编号顺序依次横向排列的节点的流速纵坐标分量值;
所述渲染水深数据包括:按照节点编号顺序依次横向排列的节点的水深值;
所述流速大小数组包括:按照节点编号顺序依次横向排列的节点的流速值;
所述流速方向数组包括:按照节点编号顺序依次横向排列的节点的流速方向;
所述水位数组包括:按照节点编号顺序依次横向排列的节点的水位值。
优选的,所述S3包括:
S31、对所述第二结构化数据进行去零缩短处理,获取去零缩短处理后的数据结构;
所述去零缩短处理为:分别将第二结构化数据中所述渲染水深数据值、流速横向坐标分量值、流速纵坐标分量值、水深值、流速值、流速方向、水位值中重复多次的无效字符缩短并记录;
S32、针对所述去零缩短处理后的数据结构,将去零缩短处理后的数据结构中渲染水深数据数组、流速横向坐标分量数组、流速纵坐标分量数组、水深数组、流速大小数组、流速方向数组、水位数组拼接成一个字符串,并进行gzip压缩,组装成bson结构。
优选的,所述S3具体包括:
在预先确定的空闲时间段内对所述第二结构化数据进行压缩处理,获取bson结构数据;
其中,所述空闲时间段由所述第一客户端依据所述第一客户端统计的所述第一客户端在预设时间段内的空闲的时间所得到的。
第二方面,本实施例还提供一种云端水利数据的点播方法,所述云端水利数据为采用分片存储方式将水利数据存储在云端的数据,用于分片存储的水利数据均为具有时序性的数据,所述方法包括:
A1、接收用户在第二客户端输入的点播服务请求数据,根据所述点播服务请求数据,确定与所述第二客户端通信连接的云端数据库中与所述点播请求数据对应的bson结构数据;
所述云端数据库中包括通过分片存储方式存储的多个水利数据的bson结构数据;
所述bson结构数据包括标识所述bson结构数据所对应的水利数据中帧号的标签;
所述点播服务请求数据包括:预先指定的帧号、预先指定的连续帧号范围、预先指定的连续帧号范围中的固定间隔的帧号;
A2、根据与所述点播请求数据对应的bson结构数据,获取输出压缩文件,并将所述压缩文件发送至第二客户端。
优选的,所述A2包括:
A21、将所述bson结构数据转成json格式的数据;
A22、针对所述json格式的数据进行gzip压缩,获取输出压缩文件,并将所述压缩文件发送至客户端。
优选的,所述A1为:
当所述点播服务请求数据为预先指定的帧号时,则在所述云端数据库中确定与所述预先指定的帧号相应的bson结构数据。
优选的,所述A1为:
当所述点播服务请求数据为预先指定的连续帧号范围时,则在所述云端数据库中确定与所述预先指定的连续帧号范围相应的bson结构数据。
优选的,所述A1为:
当所述点播服务请求数据为预先指定的连续帧号范围中的固定间隔的帧号时,则在所述云端数据库中确定与所述预先指定的连续帧号范围中的固定间隔的帧号相应的bson结构数据。
另一方面,本实施例还提供一种水利数据处理系统,所述系统包括分片服务模块、位于云端的文档数据库模块以及点播服务模块;
所述文档数据库模块分别与所述分片服务模块和点播服务模块通信连接;所述点播服务模块还与至少一个客户端通信连接;
所述分片服务模块用于采用如上述任一的水利数据分片存储方法将水利数据分片存储至文档数据库模块;
所述点播服务模块用于通过所述客户端接收的用户输入的点播服务请求数据,采用如上述任一所述的云端水利数据的点播方法进行点播,获取输出压缩文件,并将所述压缩文件发送至客户端。
(三)有益效果
本发明的有益效果是:
本发明的一种水利数据分片存储方法,针对水利数据,按帧为单位进行提取处理获取相应的第一结构化数据,并针对所述第一结构化数据进行重组处理,获取第二结构化数据,相对于现有技术而言,其可以便于后续根据帧号进行检索。
本发明的一种云端水利数据的点播方法,可以根据所接收的不同用户的点播服务请求数据,根据所述接收用户的点播服务请求数据,获取云端数据库中与所述点播请求数据相应的bson结构数据,进一步可以使水利数据渲染达到秒播的程度,省去了原来需要等待文件下载的过程,同时可以跳帧查看结果。
本发明的一种水利数据处理系统,由于采用本发明的水利数据分片存储方法和本发明的云端水利数据的点播方法,能够通过对水利数据解析、分片、转换、压缩,将数据处理到易于传输的大小。在通过流式传输的方式,分批进行数据交互。支持单帧、多帧及抽帧点播服务,增强了用户的体验效果。
附图说明
图1为本发明的一种水利数据分片存储方法流程图;
图2为本发明实施例中第一结构化数据进行重组处理得到第二结构化数据对比示意图;
图3为本发明实施例中去零缩短处理示意图;
图4为本发明实施例中零缩短处理后的数据格式示意图;
图5为本发明实施例中渲染水深数据数组、流速横向坐标分量数组、流速纵坐标分量数组、水深数组、流速大小数组、流速方向数组、水位数组拼接成一个字符串的示意图;
图6为本发明的一种云端水利数据的点播方法流程图;
图7为本发明的一种水利数据处理系统示意图。
具体实施方式
为了更好的解释本发明,以便于理解,下面结合附图,通过具体实施方式,对本发明作详细描述。
帧:即影像动画中最小单位的单幅影像画面,相当于电影胶片上的每一格镜头。一帧就是一幅静止的画面,连续的帧就形成动画,如电视图像等。本文中的帧指的是水动力模型中某个指定输出的时刻形成的数据。
文档数据库:可存放并获取文档,其格式可以是XML、JSON、BSON等,这些文档具备可述性(self-describing),呈现分层的树状结构(hierarchical tree data structure),可以包含映射表、集合和纯量值。数据库中的文档彼此相似,但不必完全相同。文档数据库所存放的文档,就相当于键值数据库所存放的“值”。文档数据库可视为其值可查的键值数据库。MongoDB是文档数据库中最知名的产品,下文中所称的文档数据库即是指MongoDB。
bson:是一种计算机数据交换格式,主要被用作MongoDB数据库中的数据存储和网络传输格式。它是一种二进制表示形式,能用来表示简单数据结构、关联数组(MongoDB中称为“对象”或“文档”)以及MongoDB中的各种数据类型。
为了更好的理解上述技术方案,下面将参照附图更详细地描述本发明的示例性实施例。虽然附图中显示了本发明的示例性实施例,然而应当理解,可以以各种形式实现本发明而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更清楚、透彻地理解本发明,并且能够将本发明的范围完整的传达给本领域的技术人员。
参见图1,本实施例提供一种水利数据分片存储方法,所述水利数据包括:水动力模型的结果文件,用于分片存储的结果文件均为具有时序性的文件,所述方法包括:
S1、针对第一客户端接收的水动力模型的结果文件,以帧为单位进行提取处理获取所述水动力模型结果文件的每一帧所对应的第一结构化数据。
所述水动力模型结果文件的每一帧均具有帧号。
所述第一结构化数据包括:多个具有节点编号的节点数据和标识所述第一结构化数据所对应的水动力模型的结果文件的帧号的标签。
所述多个节点数据按照节点编号顺序依次纵向排列。
每一节点数据包括依次横向排列的:节点编号、预先设定的节点地理坐标的x值、预先设定的节点地理坐标的y值、渲染水深数据值、流速横向坐标分量值、流速纵坐标分量值、水深值、流速值、流速方向、水位值。
在本实施例实际应用中,从水动力模型的结果文件中提取出结构化数据。提取过程中,按帧为单位进行提取处理,避免了程序缓冲区溢出。
S2、针对所述第一结构化数据进行重组处理,获取第二结构化数据。
参见图2所示,在本实施例的实际应用中,将以帧为单位提取出的数据,进行重新组织,组织成便于按帧检索的结构,形成第二结构化数据。
S3、针对所述第二结构化数据进行压缩处理,获取bson结构数据。
所述bson结构数据包括标识所述bson结构数据所对应的水动力模型的结果文件的帧号的标签。
S4、将所述bson结构数据存入与所述第一客户端通信连接的文档数据库。
本实施例中,参见图2所示,所述第二结构化数据包括:
依次纵向排列的渲染水深数据数组、流速横向坐标分量数组、流速纵坐标分量数组、水深数组、流速大小数组、流速方向数组、水位数组。
本实施例图2中,Id为节点编号;x为节点地理坐标的x值(由用户提供);y为节点地理坐标的y值(由用户提供);Gisdata为Gis渲染时用到的水深数据;u为流速横向坐标分量;v为流速纵坐标分量;h为水深;Vmag为流速值;Dir为流速方向(度数);eta为水位。
所述渲染水深数据数组包括:按照节点编号顺序依次横向排列的节点的渲染水深数据值。
所述流速横向坐标分量数组包括:按照节点编号顺序依次横向排列的节点的流速横向坐标分量值。
所述流速纵坐标分量数组包括:按照节点编号顺序依次横向排列的节点的流速纵坐标分量值。
所述渲染水深数据包括:按照节点编号顺序依次横向排列的节点的水深值。
所述流速大小数组包括:按照节点编号顺序依次横向排列的节点的流速值。
所述流速方向数组包括:按照节点编号顺序依次横向排列的节点的流速方向。
所述水位数组包括:按照节点编号顺序依次横向排列的节点的水位值。
在本实施例的实际应用中,文中的x、y作为关键的基础数据,进行单独存储,此处不再阐述过程。
frameno是通过time(hr)计算出的帧号。此第二结构化数据中,将单帧内的多条数据,转换成了单条数据结构,便于后续根据帧号检索。
本实施例中,所述S3包括:
S31、对所述第二结构化数据进行去零缩短处理,获取去零缩短处理后的数据结构。
所述去零缩短处理为:分别将第二结构化数据中所述渲染水深数据值、流速横向坐标分量值、流速纵坐标分量值、水深值、流速值、流速方向、水位值中重复多次的无效字符缩短并记录,也就是将无效字符剔除。
S32、针对所述去零缩短处理后的数据结构,将去零缩短处理后的数据结构中渲染水深数据数组、流速横向坐标分量数组、流速纵坐标分量数组、水深数组、流速大小数组、流速方向数组、水位数组拼接成一个字符串,并进行gzip压缩,组装成bson结构。
本实施例中将第二结构化数据进行进一步的压缩处理,使数据体积变小。首先,我们对数据进行整理,将数据中无效字符“.000000”剔除。剔除过程见图3所示。在去零缩短后,数据格式变成如图4所示结构。然后,再将渲染水深数据数组、流速横向坐标分量数组、流速纵坐标分量数组、水深数组、流速大小数组、流速方向数组、水位数组拼接成一个字符串,并进行gzip压缩,组装成bson结构,结果如图5所示。
本实施例中优选的,所述渲染水深数据值、流速横向坐标分量值、流速纵坐标分量值、水深值、流速值、流速方向、水位值中无效字符为“.000000”。
在本实施例的实际应用中,所述S3具体包括:
在预先确定的空闲时间段内对所述第二结构化数据进行压缩处理,获取bson结构数据;
其中,所述空闲时间段由所述第一客户端依据所述第一客户端统计的所述第一客户端在预设时间段内的空闲的时间所得到的。
也就是说,第一客户端可以在空闲时间段内进行压缩处理,在这样的时间段处理的效率更高。
本实施例中的所述水利数据包括:水动力模型的结果文件,更具体的,本实施例中的水利数据包括二维水动力模型的结果文件。
本实施例中的一种水利数据分片存储方法,针对水利数据,按帧为单位进行提取处理获取相应的第一结构化数据,并针对所述第一结构化数据进行重组处理,获取第二结构化数据,相对于现有技术而言,其可以便于后续根据帧号进行检索。同时解决了云化过程中,水利数据文件传输量大、效率低的问题。
第二方面,参见图6,本发明实施例提供一种云端水利数据的点播方法,所述云端水利数据为采用分片存储方式将水利数据存储在云端的数据,其特征在于,用于分片存储的水利数据均为具有时序性的数据,所述方法包括:
A1、接收用户在第二客户端输入的点播服务请求数据,根据所述点播服务请求数据,确定与所述第二客户端通信连接的云端数据库中与所述点播请求数据对应的bson结构数据。
所述云端数据库中包括通过分片存储方式存储的多个水利数据的bson结构数据。
本实施例中的云端数据库即为位于云端的文档数据库,对此不作限定。
所述bson结构数据包括标识所述bson结构数据所对应的水利数据中帧号的标签。
所述点播服务请求数据包括:预先指定的帧号、预先指定的连续帧号范围、预先指定的连续帧号范围中的固定间隔的帧号。
A2、根据与所述点播请求数据对应的bson结构数据,获取输出压缩文件,并将所述压缩文件发送至第二客户端。
其中,所述A2包括:
A21、将所述bson结构数据转成json格式的数据。
A22、针对所述json格式的数据进行gzip压缩,获取输出压缩文件,并将所述压缩文件发送至客户端。
本实施例中优选的,所述A1为:当接收用户的点播服务请求数据为预先指定的帧号时,则获取所述文档数据库中与所述预先指定的帧号相应的bson结构数据。
本实施例中优选的,所述A1为:当接收用户的点播服务请求数据为预先指定的连续帧号范围时,则获取所述文档数据库中与所述预先指定的连续帧号范围相应的bson结构数据。
本实施例中优选的,所述A1为:当接收用户的点播服务请求数据为预先指定的连续帧号范围中的固定间隔的帧时,则获取所述文档数据库中与所述预先指定的连续帧号范围中的固定间隔的帧相应的bson结构数据。
在本实施例的实际应用中,云端水利数据的点播方法以Rest方式提供服务,支持单帧、多帧、抽帧播放。
单帧:即按照指定的帧号返回内容。
多帧:即按照指定的连续帧号范围返回内容。常用于预加载和连续播放。
抽帧:即在指定的连续帧号范围,取出固定间隔的帧内容返回。常用于倍速播放。
Res地址例如:
getContent?beginFrame=1&endFrame=2&filter=dir,eta,u,v,h 。
点播服务从云端数据库,获取数据后,需要将bson转成json格式。bson可以存储二进制内容,而json不可以存储二进制。因此对bson中二进制的内容进行base64编码,转成字符串。点播服务将json返回客户端时,再进行一次gzip压缩(客户端的浏览器会自动解压)。
本实施例中的一种云端水利数据的点播方法,可以根据所接收的不同用户的点播服务请求数据,根据所述接收用户的点播服务请求数据,获取云端数据库中与所述点播请求数据相应的bson结构数据,进一步使可以使水利数据渲染达到秒播的程度,省去了原来需要等待文件下载的过程,同时可以跳帧查看结果。
第三方面,参见图7,本实施例中提供一种水利数据处理系统,所述系统包括分片服务模块、位于云端的文档数据库模块以及点播服务模块。
所述文档数据库模块分别与所述分片服务模块和点播服务模块通信连接;所述点播服务模块还与至少一个客户端通信连接。
所述分片服务模块用于采用如上述任一的水利数据分片存储方法将水利数据分片存储至文档数据库模块。
所述点播服务模块用于通过所述客户端接收的用户输入的点播服务请求数据,采用如上述任一所述的云端水利数据的点播方法进行点播,获取输出压缩文件,并将所述压缩文件发送至客户端。
本实施例中的水利数据处理系统中处理流程可为:
步骤1、分片服务模块提取水动力模型结果文件数据。
步骤2、分片服务模块进行转换、压缩操作形成bson结构数据。
步骤3、将bson数据存入云端数据库。
步骤4、客户端接收点播服务请求数据。
步骤5、点播服务模块从云端数据库获取相应的数据。
步骤6、点播服务模块将数据转换成json,并压缩。
步骤7、点播服务模块返回数据。
以一种针对水动力模型数据进行分片存储并点播的方案为例。这个方案主要面向二维水动力模型的云端计算的场景,支持在云端解析、传输并点播的服务。
本实施例中的水利数据处理系统克服的是水利数据体积大,不支持流水传输的问题。通过对水利数据解析、分片、转换、压缩,将数据处理到易于传输的大小。在通过类似流式传输的方式,分批进行数据交互。
通过本系统所使用的方案,可以使水动力模型的结果渲染达到秒播的程度,省去了原来需要等待文件下载的过程,甚至可以跳帧查看结果。
本实施例中的一种水利数据处理系统,由于采用本发明的水利数据分片存储方法和本发明的云端水利数据的点播方法,能够通过对水利数据解析、分片、转换、压缩,将数据处理到易于传输的大小。在通过流式传输的方式,分批进行数据交互。支持单帧、多帧及抽帧点播服务,增强了用户的体验效果。
由于本发明上述实施例所描述的系统,为实施本发明上述实施例的方法所采用的系统,故而基于本发明上述实施例所描述的方法,本领域所属技术人员能够了解该系统的具体结构及变形,因而在此不再赘述。凡是本发明上述实施例的方法所采用的系统都属于本发明所欲保护的范围。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例,或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。
应当注意的是,在权利要求中,不应将位于括号之间的任何附图标记理解成对权利要求的限制。词语“包含”不排除存在未列在权利要求中的部件或步骤。本发明可以借助于包括有若干不同部件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的权利要求中,这些装置中的若干个可以是通过同一个硬件来具体体现。词语第一、第二、第三等的使用,仅是为了表述方便,而不表示任何顺序。可将这些词语理解为部件名称的一部分。
尽管已描述了本发明的优选实施例,但本领域的技术人员在得知了基本创造性概念后,则可对这些实施例作出另外的变更和修改。所以,权利要求应该解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种修改和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也应该包含这些修改和变型在内。
Claims (10)
1.一种水利数据分片存储方法,所述水利数据包括:水动力模型的结果文件,其特征在于,用于分片存储的结果文件均为具有时序性的文件,所述方法包括:
S1、针对第一客户端接收的水动力模型的结果文件,以帧为单位进行提取处理获取所述水动力模型的结果文件的每一帧所对应的第一结构化数据;
所述水动力模型的结果文件的每一帧均具有帧号;
所述第一结构化数据包括:多个具有节点编号的节点数据和标识所述第一结构化数据所对应的水动力模型的结果文件的帧号的标签;
所述多个节点数据按照节点编号顺序依次纵向排列;
每一节点数据包括依次横向排列的节点编号、预先设定的节点地理坐标的x值、预先设定的节点地理坐标的y值、渲染水深数据值、流速横向坐标分量值、流速纵坐标分量值、水深值、流速值、流速方向和水位值;
S2、针对所述第一结构化数据进行重组处理,获取第二结构化数据;
S3、针对所述第二结构化数据进行压缩处理,获取bson结构数据;
所述bson结构数据包括标识所述bson结构数据所对应的水动力模型的结果文件的帧号的标签;
S4、将所述bson结构数据存入与所述第一客户端通信连接的文档数据库。
2.根据权利要求1所述的方法,其特征在于,
所述第二结构化数据包括:依次纵向排列的渲染水深数据数组、流速横向坐标分量数组、流速纵坐标分量数组、水深数组、流速大小数组、流速方向数组和水位数组;
所述渲染水深数据数组包括:按照节点编号顺序依次横向排列的节点的渲染水深数据值;
所述流速横向坐标分量数组包括:按照节点编号顺序依次横向排列的节点的流速横向坐标分量值;
所述流速纵坐标分量数组包括:按照节点编号顺序依次横向排列的节点的流速纵坐标分量值;
所述渲染水深数据包括:按照节点编号顺序依次横向排列的节点的水深值;
所述流速大小数组包括:按照节点编号顺序依次横向排列的节点的流速值;
所述流速方向数组包括:按照节点编号顺序依次横向排列的节点的流速方向;
所述水位数组包括:按照节点编号顺序依次横向排列的节点的水位值。
3.根据权利要求2所述的方法,其特征在于,所述S3包括:
S31、对所述第二结构化数据进行去零缩短处理,获取去零缩短处理后的数据结构;
所述去零缩短处理为:分别将第二结构化数据中所述渲染水深数据值、流速横向坐标分量值、流速纵坐标分量值、水深值、流速值、流速方向、水位值中重复多次的无效字符缩短并记录;
S32、针对所述去零缩短处理后的数据结构,将去零缩短处理后的数据结构中渲染水深数据数组、流速横向坐标分量数组、流速纵坐标分量数组、水深数组、流速大小数组、流速方向数组、水位数组拼接成一个字符串,并进行gzip压缩,组装成bson结构。
4.根据权利要求3所述的方法,其特征在于,所述S3具体包括:
在预先确定的空闲时间段内对所述第二结构化数据进行压缩处理,获取bson结构数据;
其中,所述空闲时间段由所述第一客户端依据所述第一客户端统计的所述第一客户端在预设时间段内的空闲的时间所得到的。
5.一种云端水利数据的点播方法,所述云端水利数据为采用如权利要求1-4中任一所述的方法存储在云端的数据,其特征在于,用于分片存储的水利数据均为具有时序性的数据,所述方法包括:
A1、接收用户在第二客户端输入的点播服务请求数据,根据所述点播服务请求数据,确定与所述第二客户端通信连接的云端数据库中与所述点播服务请求数据对应的bson结构数据;
所述云端数据库中包括通过分片存储方式存储的多个水利数据的bson结构数据;
所述bson结构数据包括标识所述bson结构数据所对应的水利数据中帧号的标签;
所述点播服务请求数据包括:预先指定的帧号、预先指定的连续帧号范围、预先指定的连续帧号范围中的固定间隔的帧号;
A2、根据与所述点播服务请求数据对应的bson结构数据,获取输出压缩文件,并将所述压缩文件发送至第二客户端。
6.根据权利要求5所述的方法,其特征在于,所述A2包括:
A21、将所述bson结构数据转成json格式的数据;
A22、针对所述json格式的数据进行gzip压缩,获取输出压缩文件,并将所述压缩文件发送至第二客户端。
7.根据权利要求6所述的方法,其特征在于,所述A1为:
当所述点播服务请求数据为预先指定的帧号时,则在所述云端数据库中确定与所述预先指定的帧号相应的bson结构数据。
8.根据权利要求6所述的方法,其特征在于,所述A1为:
当所述点播服务请求数据为预先指定的连续帧号范围时,则在所述云端数据库中确定与所述预先指定的连续帧号范围相应的bson结构数据。
9.根据权利要求6所述的方法,其特征在于,所述A1为:
当所述点播服务请求数据为预先指定的连续帧号范围中的固定间隔的帧号时,则在所述云端数据库中确定与所述预先指定的连续帧号范围中的固定间隔的帧号相应的bson结构数据。
10.一种水利数据处理系统,其特征在于,所述系统包括分片服务模块、位于云端的文档数据库模块以及点播服务模块;
所述文档数据库模块分别与所述分片服务模块和点播服务模块通信连接;所述点播服务模块还与至少一个第二客户端通信连接;
所述分片服务模块用于采用如权利要求1-4中任一所述的方法将水利数据分片存储至文档数据库模块;
所述点播服务模块用于接收用户通过所述第二客户端输入的点播服务请求数据,采用如权利要求5-9中任一所述的方法进行点播,获取输出压缩文件,并将所述压缩文件发送至第二客户端。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110273986.XA CN112653771B (zh) | 2021-03-15 | 2021-03-15 | 水利数据分片存储方法、点播方法、处理系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110273986.XA CN112653771B (zh) | 2021-03-15 | 2021-03-15 | 水利数据分片存储方法、点播方法、处理系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112653771A CN112653771A (zh) | 2021-04-13 |
CN112653771B true CN112653771B (zh) | 2021-06-01 |
Family
ID=75371188
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110273986.XA Active CN112653771B (zh) | 2021-03-15 | 2021-03-15 | 水利数据分片存储方法、点播方法、处理系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112653771B (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105069703A (zh) * | 2015-08-10 | 2015-11-18 | 国家电网公司 | 一种电网海量数据管理方法 |
CN105122243A (zh) * | 2013-03-15 | 2015-12-02 | 亚马逊科技公司 | 用于半结构化数据的可扩展分析平台 |
CN106776907A (zh) * | 2016-11-30 | 2017-05-31 | 江苏省邮电规划设计院有限责任公司 | 一种智慧城市海量数据采集优化方法 |
CN106951475A (zh) * | 2017-03-07 | 2017-07-14 | 郑州铁路职业技术学院 | 基于云计算的大数据分布式处理方法及系统 |
CN108268468A (zh) * | 2016-12-30 | 2018-07-10 | 北京京东尚科信息技术有限公司 | 一种大数据的分析方法及系统 |
CN110992653A (zh) * | 2019-12-13 | 2020-04-10 | 软通动力信息技术有限公司 | 城市内涝预警系统及方法 |
CN111400372A (zh) * | 2020-03-17 | 2020-07-10 | 浙江天禹信息科技有限公司 | 一种智慧水利的信息系统构建方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106547470B (zh) * | 2015-09-16 | 2020-01-03 | 伊姆西公司 | 日志存储优化方法和设备 |
US11164266B2 (en) * | 2017-10-27 | 2021-11-02 | International Business Machines Corporation | Protection of water providing entities from loss due to environmental events |
-
2021
- 2021-03-15 CN CN202110273986.XA patent/CN112653771B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105122243A (zh) * | 2013-03-15 | 2015-12-02 | 亚马逊科技公司 | 用于半结构化数据的可扩展分析平台 |
CN105069703A (zh) * | 2015-08-10 | 2015-11-18 | 国家电网公司 | 一种电网海量数据管理方法 |
CN106776907A (zh) * | 2016-11-30 | 2017-05-31 | 江苏省邮电规划设计院有限责任公司 | 一种智慧城市海量数据采集优化方法 |
CN108268468A (zh) * | 2016-12-30 | 2018-07-10 | 北京京东尚科信息技术有限公司 | 一种大数据的分析方法及系统 |
CN106951475A (zh) * | 2017-03-07 | 2017-07-14 | 郑州铁路职业技术学院 | 基于云计算的大数据分布式处理方法及系统 |
CN110992653A (zh) * | 2019-12-13 | 2020-04-10 | 软通动力信息技术有限公司 | 城市内涝预警系统及方法 |
CN111400372A (zh) * | 2020-03-17 | 2020-07-10 | 浙江天禹信息科技有限公司 | 一种智慧水利的信息系统构建方法 |
Non-Patent Citations (2)
Title |
---|
"面向共享交换的水利混合云存储平台";冯读庆 等;《计算机与现代化》;20141222;第27-31页 * |
"面向河湖空间大数据的混合架构存储与检索系统研究及应用";江穹峰;《中国优秀硕士学位论文全文数据库 工程科技II辑》;20200315;正文第20-57页 * |
Also Published As
Publication number | Publication date |
---|---|
CN112653771A (zh) | 2021-04-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11899681B2 (en) | Knowledge graph building method, electronic apparatus and non-transitory computer readable storage medium | |
CN105144141B (zh) | 用于使用距离关联性散列法对媒体数据库定址的系统和方法 | |
CN105786942B (zh) | 一种基于云平台的地理信息存储系统 | |
CN108848060B (zh) | 一种多媒体文件处理方法、处理系统及计算机可读存储介质 | |
CN109887098B (zh) | 一种基于分布式计算的web AR数据呈现方式 | |
US11758088B2 (en) | Method and apparatus for aligning paragraph and video | |
CN108628898B (zh) | 数据入库的方法、装置和设备 | |
US20170132267A1 (en) | Pushing system and method based on natural information recognition, and a client end | |
CN110830807A (zh) | 图像压缩方法、装置及存储介质 | |
CN112653771B (zh) | 水利数据分片存储方法、点播方法、处理系统 | |
CN112069950B (zh) | 提取热词的方法、系统、电子设备及介质 | |
CN103533353B (zh) | 一种近似视频编码系统 | |
CN111061806B (zh) | 面向分布式的海量地理瓦片的存储方法与网络化访问方法 | |
CN105488218A (zh) | 一种基于搜索的加载瀑布流的方法和装置 | |
CN105872731A (zh) | 数据处理的方法和装置 | |
CN107291870B (zh) | 一种分布式存储中文件批量读取方法 | |
CN110569417A (zh) | 文化云平台资源推送方法 | |
CN109803157A (zh) | 一种基于视频的序列帧动画传输方法、系统和电子设备 | |
CN105119955A (zh) | 一种分布式文件系统中读目录多页支持的方法及系统 | |
CN113450434A (zh) | 一种生成动态图像的方法和装置 | |
CN104391916A (zh) | 基于分布式计算平台的gpeh数据解析方法和装置 | |
CN104270454A (zh) | 一种基于数据传输优化系统的cdn动态应用加速方法 | |
CN112035828B (zh) | 针对大规模数据库集群的安全态势感知分析方法及系统 | |
CN115174578B (zh) | 一种基于Kubernetes的点播并行转码方法、装置及存储介质 | |
CN111177423A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |