一种用于海量海洋环境数据管理的三维数据编码及存储方法与流程

文档序号:17926138发布日期:2019-06-15 00:25阅读:212来源:国知局
本发明属于海洋空间信息组织、空间数据管理、空间索引
技术领域
:,具体涉及一种用于海量海洋环境数据管理的三维数据编码及存储方法。
背景技术
::全球高分辨率时空多尺度海洋再分析产品集是包括海水温度、盐度、密度、声速、海流等海洋环境要素,海域范围为全球海域,从海表面0米至海表面下方9000米,水平分辨率为9千米,垂向分为50层,时间分辨率为每天8个时次即每3小时输出一次,不少于30年且逐年更新的一个海量数据集。由于数据集繁复庞大,数据的格式和种类差异较大,针对海洋空间海量信息的简单存储方法已经不能满足发展的需求,如何从海量信息中快速精准的获取需要的数据进行分析处理,是空间信息科学未来的发展方向之一。为了更好地实现这一点,高效的空间信息组织、管理与表达方法是重要的研究内容。目前,国家海洋信息中心针对数字海洋空间信息仓库,构建了以数据仓库为框架的国家“数字海洋”集成平台;大连海事大学的数字海洋空间数据库以及中国海洋大学的magis平台在海洋空间数据管理方面也同样取得了重大的突破;苏奋振等发展了针对海洋数据多重特性的数据模型,解决了动态变化的海洋实体的组织与表达。但是目前的研究工作主要集中在解决数据管理的通用问题上,针对长时间序列海洋再分析产品的海量数据集,现有方法不利于数据的有效存储且定位提取效率较慢,不能满足对全球高分辨再分析产品的海量数据集实现有效地统一存储和快速准确定位的要求。由此可见,针对全球高分辨率再分析数据集设计一种具有全球尺度、不同分辨率并支持真三维的空间信息表达模型,从而为解决上述问题提供一种简洁方便的途径,成为本发明的应用背景与出发点。技术实现要素:本发明的目的在于提供一种用于海量海洋环境数据管理的三维数据编码及存储方法,其能够准确快速的定位到海洋空间的任何一个区域。一种用于海量海洋环境数据管理的三维数据编码及存储方法,具体包括如下步骤:步骤1、获取待处理的海洋环境数据的经度、纬度、深度范围;步骤2、设定对待处理数据进行剖分所要求的分辨率;步骤3、根据分辨率对温度、盐度、密度、声速、海流环境要素数据进行剖分处理组成数据集合,每个数据集合包含最小单位的各种环境要素信息;步骤4、使用编码方案对每个数据集合进行编码,作为空间索引号;步骤5、将索引号和包含环境要素信息的数据集合对应存入数据库中。所述一种用于海量海洋环境数据管理的三维数据编码及存储方法,根据数据集的信息描述,将步骤2中分辨率定义为i,其中i以度为单位,可表示范围在1/32°至1°。所述一种用于海量海洋环境数据管理的三维数据编码及存储方法,步骤3中具体的环境数据包括温度、盐度、密度、声速、海流水平分量、海流竖直分量这6种基本海洋要素的值。所述一种用于海量海洋环境数据管理的三维数据编码及存储方法,步骤4中三维编码方案是由经纬度二维编码及深度维的编码构成的,其中经纬度二维编码部分8位,深度维2位,共同组成10位数字编码,编码格式为d0d1d2d3d4d5d6d7d8d9,其中d位表示十进制数值,d位根据设定的分辨率可为十进制、十六进制、三十二进制等数值。所述一种用于海量海洋环境数据管理的三维数据编码及存储方法,步骤4具体包括如下步骤:步骤4.1、基于经纬度坐标空间及分辨率对经纬度二维编码部分进行定义,具体计算过程如下:将地理空间位置投影到单象限直角坐标系,设变换后横坐标值为x,变换后的纵坐标值为y,其中x=lat1+90=132.125,y=lon1+180=280.25;d0代表经度第一级:取y的百位数d0=[y÷100]=2;d1代表经度第二级:取y的十位数d1=[y-100×d0]=8;d2代表经度第三级:取y的个位数d2=[y-100×d0-10×d1]=0;d3代表经度分辨率:根据分辨率i计算d3=[(y-100×d0-10×d1-d2)÷i]=2,同理,当分辨率取其他值时同上式,当i<1/10°时,d3采用十六进制或三十二进制数表示;d4代表纬度第一级:取x的百位数d0=[x÷100]=1;d5代表纬度第二级:取x的十位数d5=[x-100×d4]=3;d6代表纬度第三级:取x的个位数d6=[x-100×d4-10×d5]=2;d7代表纬度分辨率:d7=[(x-100×d4-10×d5-d6)÷i]=1,同理,当分辨率取其他值时同上式,i<1/10°时,d7采用十六进制或三十二进制数表示;步骤4.2、基于深度对深度维编码部分进行定义,不同于普通的三维均匀网格分布,海洋空间数据在水平方向上分布不均,近海面空间海洋环境要素的变化较大,而在深海空间海洋环境要素的变化较小;且相对于经纬度距离而言海洋深度很小,所以深度维编码根据层数划分,d8d9为两位十进制数,代表数据层级,表示0~99层。所述一种用于海量海洋环境数据管理的三维数据编码及存储方法,步骤5具体包括如下步骤:步骤5.1、根据数据的来源建立海洋再分析产品数据库;步骤5.2、在每个数据库中,分别建立两种类型的表,一种类型为元数据表,另一种为具体数据表,以时间为单位组织划分若干数据表。步骤5.3、在每个具体数据表中,将通过三维编码计算得到的编码值作为索引号,将与之一一对应的数据集合中温度、盐度、密度、声速、海流水平分量、海流竖直分量要素作为各属性值,建立二维表格,并将id值设置为主键索引。本发明的有益效果在于:本发明所提供的海洋空间数据的三维编码方法,能够对全球海洋环境数据基于其所属的空间位置进行统一划分,并对划分出的数据集合建立索引表,该方法统一了全球海洋环境数据的存储方式,而且可根据用户需求提供不同分辨率的数据集,减少了数据冗余,提高了数据的利用率。在上述三维编码方法的基础上,使用本发明所提供的数据管理方法对海洋环境数据进行存储,由于索引号与数据集合直接对应,因此通过索引可快速检索数据,精准定位到指定的空间范围,从而有利于对指定区域的数据高效提取。附图说明图1为海洋空间剖分体元示意图;图2为本发明的基于三维数据编码的数据剖分预处理流程图;图3为本发明建立的数据库元数据表图;图4为本发明建立的数据库具体数据表图。具体实施方式下面结合附图对本发明做进一步描述。本发明所提出的用于海洋空间数据提取的三维数据编码及存储方法主要思想是:使用设定的分辨率对待处理的原始数据进行剖分,得到一系列包含所有海洋环境信息的数据集合;使用设计的三维数据编码方案对数据集合进行编码,记为索引号;将索引号与数据集合一一对应,设计存储结构保存在数据库中,利用索引号对指定区域的指定海洋环境信息进行提取。本发明所举实例使用的原始数据集是分布在经度范围e99°至e150°、纬度范围n-10°至n52°、深度范围0层至49层、时间范围为1988年1月1日0时至2017年12月31日21时时空范围的,包含温度、盐度、密度、声速、海流水平分量、海流竖直分量要素的,分辨率为1/8°的这样一个原始数据集。如附图1所示,为海洋空间剖分体元示意图;附图2为本发明的基于三维数据编码的数据剖分预处理流程图;附图3为本发明建立的数据库元数据表图;附图4为本发明建立的数据库具体数据表图。一、下面结合图2对本发明的三维编码方案及数据预处理的步骤进行详细描述:步骤1、获取待处理的海洋环境数据的经度、纬度、深度范围;对于海洋环境数据,其包含一定的空间范围信息,根据原始数据的属性文件或信息描述,获得其时空范围。设经度范围变量为lon1和lon2,纬度范围变量为lat1和lat2,深度范围变量为h1和h2,时间范围变量为time1和time2;步骤2、设定对待处理数据进行剖分所要求的分辨率;根据数据集的信息描述,将分辨率定义为i,其中i以度为单位,可表示范围在1/32°至1°。在实际的应用中可将其他单位的描述转换为度。本例中i=1/8°;步骤3、根据分辨率对温度、盐度、密度、声速、海流环境要素数据进行剖分处理组成数据集合,每个数据集合包含最小单位的各种环境要素信息;具体的环境数据包括温度、盐度、密度、声速、海流水平分量、海流竖直分量这6种基本海洋要素的值,设温度变量为temperature,盐度变量为salinity,密度变量为density,声速变量为soundvelocity,海流水平分量为u,海流竖直分量为v。选取海洋空间某一点为例进行详细的说明。例如采用原始数据集中的点a为例,a点的空间位置是经度e100.25°、纬度n42.125°、深度第0层,时间为2016年9月27日03时,温度值为20.0417,盐度值为34.0927,密度值为1021.6816,声速值为1520.9167,海流水平分量为9999.0000、海流竖直分量为9999.0000。则按照上述定义,lon1=100.25,lat1=42.125,h1=0,time1=2016092703,temperature=20.0417,salinity=34.0927,density=1520.9167,soundvelocity=1021.6816,u=9999.0000,v=9999.0000;同理可对数据集中的其他空间位置点进行剖分和整合处理;步骤4、使用编码方案对每个数据集合进行编码,作为空间索引号;本发明的三维编码方案是由经纬度二维编码及深度维的编码构成的;其中经纬度二维编码部分8位,深度维2位,共同组成10位数字编码。设编码格式为d0d1d2d3d4d5d6d7d8d9,编码值设为dm,计算公式为:dm=1000000000×d0+100000000×d1+10000000×d2+1000000×d3+100000×d4+10000×d5+1000×d6+100×d7+10d8+d9其中d表示十进制数值,d根据设定的分辨率可为十进制、十六进制、三十二进制数值。当时,分辨率位d采用十进制整数表示;如i=1/8°时,d可选值0、1、2、3、4、5、6、7、8、9;当时,分辨率位d采用十六进制整数表示;如i=1/12°时,d可选值0、1、2、3、4、5、6、7、8、9、a、b;当时,分辨率位d采用十六进制整数表示;如i=1/20°时,d可选值0、1、2、3、4、5、6、7、8、9、a、b、c、d、e、f、g、h、j、k;经纬度二维编码部分基于经纬度坐标空间及分辨率进行定义;以采样点a为例,具体计算过程如下:将地理空间位置投影到单象限直角坐标系,设变换后横坐标值为x,变换后的纵坐标值为y,其中x=lat1+90=132.125,y=lon1+180=280.25;d0代表经度第一级:取y的百位数d0=[y÷100]=2;d1代表经度第二级:取y的十位数d1=[y-100×d0]=8;d2代表经度第三级:取y的个位数d2=[y-100×d0-10×d1]=0;d3代表经度分辨率:根据分辨率i计算d3=[(y-100×d0-10×d1-d2)÷i]=2,同理,当分辨率取其他值时同上式,当i<1/10°时,d3采用十六进制或三十二进制数表示;d4代表纬度第一级:取x的百位数d0=[x÷100]=1;d5代表纬度第二级:取x的十位数d5=[x-100×d4]=3;d6代表纬度第三级:取x的个位数d6=[x-100×d4-10×d5]=2;d7代表纬度分辨率:d7=[(x-100×d4-10×d5-d6)÷i]=1,同理,当分辨率取其他值时同上式,i<1/10°时,d7采用十六进制或三十二进制数表示。深度维编码部分基于深度进行定义。不同于普通的三维均匀网格分布,海洋空间数据在水平方向上分布不均,近海面空间海洋环境要素的变化较大,而在深海空间海洋环境要素的变化较小;且相对于经纬度距离而言海洋深度很小。综合以上考虑,深度维编码根据层数划分,d8d9为两位十进制数,代表数据层级,可表示0~99层。本例中d8=0,d9=0。则采样点a的dm=2802132100;如上例所示,通过三维数据编码方案对每一个数据集合进行唯一标记,将编码作为每个集合的索引号。以上步骤实现了对海洋环境原始数据的预处理及三位编码,为全球海洋空间数据的统一组织和管理奠定了基础。二、数据的统一存储管理。上述步骤确定了剖分数据集合的索引号,针对每个剖分数据集,将其与索引号一一对应,构成存储海洋空间数据文件的一条信息,将得到的索引号和包含环境要素信息的数据集合对应存入数据库中进行管理。本发明设计了一种数据文件统一存储方案,具体步骤如下:步骤1、根据数据的来源建立海洋再分析产品数据库。以mysql数据库为例,利用sql语言创建数据库如下:createdatabasereanalysisdata;步骤2、在每个数据库中,分别建立两种类型的表。一种类型为元数据表,用于说明本库中的数据类型、存储格式等一些描述信息,便于用户对数据库整体信息的理解;另一种为具体数据表,以时间为单位组织划分若干数据表,表命名为medyyyymmddhh,其中med为海洋环境数据marineenvironmentaldata的英文缩写,yyyy表示年,mm表示月,dd表示日,hh表示时,如将2016年05月17日03时的所有海洋环境数据存储在一张数据表中,表命名为med2016051703。根据原始数据集可创建30年的每3小时一次的具体数据表共87600(30*365*8)张。创建元数据表例子如下:其中cust_id为自增序号,cust_range为时空单位信息,cust_element为环境要素信息,cust_i为分辨率,表内容如图3所示;步骤3、在每个具体数据表中,将通过三维编码计算得到的dm值作为索引号,将与之一一对应的数据集合中温度、盐度、密度、声速、海流水平分量、海流竖直分量要素作为各属性值,建立二维表格,并将id值设置为主键索引,从而加快数据的搜索速度;创建具体数据表例子med2016051703如下:其中dm为三维数据编码,temperature为温度值,salinity为盐度值,density为密度值,soundvelocity为声速值,u和v为海流水平、竖直方向分量;将要素数据导入表如下:loaddatainfile'e:/dmfile/zuobiaodmt.txt'intotablemed2016051703fieldsterminatedby','linesterminatedby'\r\n'(dm,temperature,salinity,density,soundvelocity,u,v);基于上述方案,根据用户需要即可提取指定位置的海洋环境要素数据。本发明提出了一种海洋空间数据的三维编码方法,并以此编码方法为基础对数据进行统一的组织管理,设计了数据存储方案。一方面能够对全球海洋环境数据基于其所属的空间位置进行统一划分,便于海洋环境信息的准确定位;另一方面统一了全球海洋环境数据的存储方式,能够减少数据冗余、避免索引重复,提高了查询效率。综上所述,以上仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1