CN110297597A - 地震数据的存储方法及读取方法 - Google Patents

地震数据的存储方法及读取方法 Download PDF

Info

Publication number
CN110297597A
CN110297597A CN201810243506.3A CN201810243506A CN110297597A CN 110297597 A CN110297597 A CN 110297597A CN 201810243506 A CN201810243506 A CN 201810243506A CN 110297597 A CN110297597 A CN 110297597A
Authority
CN
China
Prior art keywords
leaf block
file
memory node
data
node
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
Application number
CN201810243506.3A
Other languages
English (en)
Other versions
CN110297597B (zh
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.)
China Petroleum and Chemical Corp
Sinopec Exploration and Production Research Institute
Original Assignee
China Petroleum and Chemical Corp
Sinopec Exploration and Production Research Institute
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 China Petroleum and Chemical Corp, Sinopec Exploration and Production Research Institute filed Critical China Petroleum and Chemical Corp
Priority to CN201810243506.3A priority Critical patent/CN110297597B/zh
Publication of CN110297597A publication Critical patent/CN110297597A/zh
Application granted granted Critical
Publication of CN110297597B publication Critical patent/CN110297597B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/064Management of blocks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE 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/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Geophysics And Detection Of Objects (AREA)

Abstract

本发明提出了地震数据的存储方法及读取方法。本存储方法主要有以下步骤:分布式存储节点及八叉树切分参数配置,切块编码及存储节点的分配,切分地震数据生成子块,传输子块到存储节点,传输索引文件到存储节点,加载并使用分布式地震数据。这种存储方法能减少单机存储空间开销,通过备份降低数据丢失风险;实现了八叉树结构的分块存储,对于相近区域的属性计算和三维渲染在文件访问速度上具有优势。

Description

地震数据的存储方法及读取方法
技术领域
本发明涉及计算机技术的软件开发领域,特别一种数据存储方法。
背景技术
随着地震采集及电子扫描技术的发展,获取的地震资料的量级快速增长。尽管用来处理数据的计算机性能在不断提高,但数据规模爆炸式的增长仍然超越了内存的发展速度。从存储、加载到显示,需要重新审视现有的主流文件存储格式,并配套研发相适应的渲染、大数据挖掘等一系列支持大数据体的核心技术。随着三维地震数据采集、油气田开发等系列新技术带来的快速数据更新,大数据背景下三维数据体的高效存储与处理分析变得越来越复杂。
如果能够充分利用最新信息科学技术方便调取上游板块基础资料,如地震数据,并无缝地融合于油气资源评价参数获取与勘探部署决策过程中,对实现油气高效勘探具有重要的现实意义。
现有以SEGY格式存储的三维地震数据,一个文件就可以达到几百GB甚至TB级别,业内不断应用计算机存储新技术,设计、调整并形成系列网络文件存储技术与部署方案。如,以直连式存储(DAS,Direct Attached Storage)、网络附加存储(NAS,NetworkAttached Storage)、存储区域网络(SAN,Storage Area Network)为代表的网络数据存储文件技术,配套高性能计算集群来提高单位时间内执行的任务数,体现大吞吐量、低延迟数据读取的特点。
但是由于采用的是直接存储整个大数据文件的方式,面向集群的大文件存取存在着对存储和执行环境要求高、网络互连设备昂贵、地理上连接距离有限、需要配备专业人员维护、访问速度瓶颈等问题。特别是,单个大文件I/O节点不仅因大量数据交换而变得很慢,还存在单点故障、容易造成集群瘫痪等实际问题。
发明内容
为解决上述技术问题,本发明提出了一种地震数据的存储方法,其包括:
步骤S10:建立立方体模型,建立以立方体模型的顶点为原点且主测线号轴、联络线号轴和深度轴分别平行于立方体模型的长、宽、高三个方向的三维笛卡儿坐标系,立方体模型上离原点最远的顶点的在主测线号轴、联络线号轴和深度轴上的坐标依次为源地震数据中主测线号、联络线号和深度的最大值;
步骤S20:将立方体模型切分成预设层级的八叉树数据结构,对八叉树数据结构的每个叶子块的三维空间地址进行线性莫顿编码,将每个叶子块的莫顿码转换成自然数编码;
步骤S30:给每个叶子块将要生成的叶子块文件分配存储节点并生成保存路径,建立叶子块所对应的存储节点、保存路径以及自然数编码三者相对应的列表;
步骤S40:按叶子块的自然数编码的大小顺序依次生成存储在存储节点内的叶子块文件。
在一个具体的实施例中,在步骤S40中,生成单个叶子块文件的步骤为:将当前叶子块的自然数编码转换成莫顿码,根据莫顿码计算出叶子块在立方体模型中的位置和大小,再根据叶子块在立方体模型中的位置和大小换算出叶子块以主测线号范围、联络线号范围和深度范围来表征的空间地址,查找出源地震数据中对应于该叶子块的主测线号范围、联络线号范围和深度范围的地震道数据,存储节点中生成与该自然数编码相对应的保存路径相关联的叶子块文件,将该地震道数据按原有的深度顺序上传到叶子块文件中。
在一个具体的实施例中,步骤S30包括步骤31~33:步骤S31:采用一致性哈希算法为每个叶子块匹配存储节点;步骤S32:存储节点中规划出用于存储与其相匹配的叶子块文件的存储空间,同时建立叶子块文件的保存路径;步骤S33:建立每个叶子块的自然数编码、与该叶子块将生成的叶子块文件的保存路径以及该叶子块文件拟被存储的存储节点名称三者相对应的列表,建立分布式地震数据名与列表的关联关系。
在一个具体的实施例中,步骤S32包括步骤S321、S322、S323;步骤S321:新建一个分布式地震数据名;步骤S322:根据分布式地震数据名生成MD5值,在每个存储节点的文件目录下建立一个用于存储叶子块文件的文件夹,该文件夹用MD5值命名;步骤S323:将每个叶子块的哈希编码作为该叶子块将要生成的叶子块文件的文件名,建立叶子块文件在存储节点中的保存路径。
在一个具体的实施例中,步骤S31包括以下步骤:为每个存储节点随机生成一个64位无符号整型数据表示存储节点的哈希值,每个存储节点的哈希值不相同;将哈希值空间组织成一个虚拟圆环,虚拟圆环中哈希值地址顺时针方向增加;将各个哈希值插入到虚拟圆环对应哈希值地址处。为每个叶子块随机生成一个64位无符号整型数据表示存储节点的哈希编码;将当前叶子块的哈希编码插入到圆环内与其相等的哈希值地址中,按逆时针方向寻找与其最接近的哈希值,该哈希值对应的存储节点即是与该叶子块相匹配的存储节点。
在一个具体的实施例中,所述存储方法还包括步骤40后的步骤S50,步骤S50:将八叉树切分参数的配置信息、各个叶子块的编码信息及其对应的叶子块文件存储位置信息存放在服务器中,将索引文件存放在存储节点中。
在一个具体的实施例中,所述存储方法还包括步骤50后的步骤S60,步骤S60:将源地震数据中除地震道数据以外的属性类数据提取出来作为属性文件存储到存储节点中,并建立属性文件的索引。
本发明还提出了一种读取预定地震道剖面信息的方法,该方法用于读取基于上述的存储方法所获得的文件,包括以下步骤:
先在用户终端节点内根据剖面的主测线号、联络线号、深度范围以及八叉树切分参数的配置信息计算出该剖面对应的待下载地震道数据在立方体模型中的分布范围,根据待下载地震道数据在立方体模型中的分布范围计算出该分布范围所覆盖的叶子块;根据这些叶子块在立方体模型中的位置获得这些叶子块的莫顿码,然后将莫顿码转换成自然数编码;用户终端节点将这些自然数编码发送到服务器节点,服务器节点根据这些自然数编码查找到这些自然数编码对应的待下载叶子块文件的所在的存储节点以及待下载叶子块文件的保存路径,然后将这些信息发送给用户终端节点;用户终端根据每个待下载叶子块文件的所在的存储节点以及待下载叶子块文件的保存路径从存储节点中下载叶子块文件。将叶子块文件中的数据按自然数编码排列的顺序拼接起来即为预定地震道剖面信息。
采用该存储方法的好处在于:1、由于采用八叉树分布式存储方法,减少单机存储空间开销,还能通过备份降低数据丢失风险;2、实现了八叉树结构的分块存储,对于相近区域的属性计算和三维渲染在文件访问速度上具有优势。3、区别于集群方案中的纵向扩展(提升每个节点的服务器性能),能通过横向扩展(增加更多的廉价计算机)来提升分布式系统的整体性能;4、由成本低廉的PC服务器组成的集群,在性能方面能够达到或超越大型机的处理性能,但在成本上远低于大型机;5、PC服务器在硬件可靠性方面比大型机有差距,但是通过配套开发的分布式存储及分析技术来对硬件进行容错,保证整体系统的高可靠性;6、通过网络松散耦合的分布式系统,尽可能减少节点间通信,确保单个节点的性能高低对分布式系统整体性能影响不大。
附图说明
在下文中将基于实施例并参考附图来对本发明进行更详细的描述。其中:
图1为本发明一个实施例中的存储方法的流程图;
图2为本发明一实施例中的八叉树空间结构划分及线性莫顿编码的示意图;
图3为本发明一个实施例中的分布式哈希算法图的示意图;
图4为本发明一个实施例中叶子块文件中数据对应的三维空间数据体的示意图。
在附图中,相同的部件使用相同的附图标记。附图并未按照实际的比例绘制。
具体实施方式
下面将结合附图对本发明作进一步说明。
在本实施例中的地震数据的存储方法基于采用通讯网络相互连通的用户终端节点、服务器节点以及多个存储节点实施。该通讯网络的网络结构优选为分布式网络结构。该方法的逻辑运算主要在用户终端节点中完成。
通讯网络中的各个节点之间进行数据交换时,各个节点运行数据存取服务程序来实现不同节点之间的数据发送和接收功能。该服务程序基于RCF(Remote Call Framework,远程调用框架)的开源代码实现,此处不展开叙述。
在本实施例中,源地震数据为标准SEG-Y文件。标准SEG-Y文件包括多个道头信息以及与道头信息一一对应的地震道数据。道头数据中一般保存其多对应的地震道的主测线号、联络线号、道号、采样点数、大地坐标等信息。地震道数据是对地震信号的波形按一定时间间隔Δt进行取样,再把这一系列的离散振幅值以某种方式记录下来。地震道数据是一个一维的地震信号道,沿深度(即时间)方向记载。
该存储方法是用于将用户终端节点上的源地震数据进行分割后分别上传到多个存储节点中保存的方法。
如图1所示,地震数据的存储方法包括以下步骤:
步骤S10:建立立方体模型,建立以立方体模型的顶点为原点且主测线号轴、联络线号轴和深度轴分别平行于立方体模型的长、宽、高三个方向的三维笛卡儿坐标系,立方体模型上离原点最远的顶点的在主测线号轴、联络线号轴和深度轴上的坐标依次为源地震数据中主测线号、联络线号和深度的最大值。
该步骤在用户终端节点上完成。建立立方体模型,再建立一个三维笛卡儿坐标系。该坐标系的原点位于立方体模型的一个顶点上。坐标系的横轴为主测线号轴、纵轴为联络线号轴、竖轴为深度轴。主测线号轴、联络线号轴、深度轴依次分别与立方体模型的长、宽、高三个方向相互平行。需要说明的是,这里的长、宽、高指分别是与立方体模型上相交于同一顶点的三条边向外延伸的方向。
立方体模型上离原点最远的顶点的在主测线号轴、联络线号轴和深度轴上的坐标依次为源地震数据中主测线号、联络线号和深度的最大值。这样,就确定了主测线号轴、联络线号轴和深度轴的分度值,同时,将源地震数据转换成以主测线号、联络线号和深度为空间地址的三维数据体时,该立方体模型能容纳源地震数据中所有地震道数据。
步骤S20:将立方体模型切分成预设层级的八叉树数据结构,对八叉树数据结构的每个叶子块的三维空间地址进行线性莫顿编码,将每个叶子块的莫顿码转换成自然数编码。
该步骤在用户终端节点上完成。如图2所示。将立方体模型切分成预设层级的八叉树数据结构。即把一个立方体模型分割为八个小立方体,然后上次切分出的每个小立方体再切分为八个小立方体,每切分一次为一个层级,直到切分到用户所预设的层级。切分后,最小的每一个小立方体为叶子块。层级设置越大,叶子块的粒度小,一个叶子块所对应存储数据量也就越小。
对八叉树数据结构的每个叶子块的三维空间地址进行线性莫顿编码。八叉树空间结构的三维空间编码通常采用线性莫顿(Morton)编码来压缩地址数据量。莫顿码本质上是一种八进制码,如图所示,每一位八进制数位可以看成3位二进制数,由所在节点的空间位置编码而来(其中,n表示子体数据块所处的空间结构位置):Morton=[(x0,y0,z0),(x1,y1,z1),…,(xn-1,yn-1,zn-1)],其中,n为层级数。切分时的每个子块都会有其对应的莫顿码,从莫顿码也可以反推出子块对应的空间范围。莫顿码的位数等于切分的层级数,层级越小,莫顿码越短,切分的粒度越粗,层级越大,莫顿码越长,切分的粒度越细。这样就给每个叶子块赋予了一个对应且唯一的莫顿码。将每个叶子块的莫顿码换算成自然数编码(TileID)。自然数编码中采用的数学符号为0~7表示子块在父块中的方位。自然数编码从0起始,每增加一个层级则增加一位数,所增加的这位数即表示该子块在其父块中的位置。
优选地,通过设置叶子块的存储数据量来获得预设层级数。由于源地震数据可以看做一个三维的数据立方体,长宽高分别对应主测线,联络线和深度。用户配置时可以预先指定叶子块的长宽高方向上的存储数据量,通过叶子块的长宽高和源地震数据的长宽高比较,得到源地震数据在三个方向上与叶子块三个方向上长度的比值,取比值最大的一个方向并计算该方向上满足大于此比值的最小的2的次幂,这个次幂数为八叉树切分的预设层级数。
步骤S30:给每个叶子块将要生成的叶子块文件分配存储节点并生成保存路径,建立叶子块所对应的存储节点、保存路径以及自然数编码三者相对应的列表。
在本实施例中,步骤S30包括步骤31~33:
步骤S31:采用一致性哈希算法为每个叶子块匹配存储节点。
为每个存储节点随机生成一个64位无符号整型数据表示存储节点的哈希值,每个存储节点的哈希值不相同。将哈希值空间组织成一个虚拟圆环,虚拟圆环中哈希值地址顺时针方向增加。将各个哈希值插入到虚拟圆环对应哈希值地址处。为每个叶子块随机生成一个64位无符号整型数据表示存储节点的哈希编码。将当前叶子块的哈希编码插入到圆环内与其相等的哈希值地址中,按逆时针方向寻找与其最接近的哈希值,该哈希值对应的存储节点即是与该叶子块相匹配的存储节点。
如图3所示,四个存储节点A、B、C、D,每个叶子块也有一个哈希编码(uuid),根据哈希编码(uuid)落在虚拟圆环中的位置,例如在存储节点A、B之间那么这个叶子块就分配给存储节点A,在存储节点B、C之间就分配给存储节点B,在存储节点C、D之间就分配给C存储节点,在存储节点D、A之间就分配给存储节点D。
如果需要建立多个副本,只需在虚拟圆环上顺时针往后面找相应数量的存储节点进行分配,例如有两个副本,那么一个子块分配给A,则再顺时针往下找到B,最后叶子块会传输到A和B两个存储节点实现多副本。
步骤S32:存储节点中规划出用于存储与其相匹配的叶子块文件的存储空间,同时建立叶子块文件的保存路径。
步骤S32包括步骤S321、S322、S323。
步骤S321:新建一个分布式地震数据名(gfsname)。
分布式地震数据名表示分布存储以后的源地震数据的文件名。
步骤S322:根据分布式地震数据名生成MD5值(Message-Digest Algorithm5),在每个存储节点的文件目录下建立一个用于存储叶子块文件的文件夹,该文件夹用MD5值命名。
步骤S323:将每个叶子块的哈希编码作为该叶子块将要生成的叶子块文件的文件名,规划出该叶子块文件对应的存储空间并建立叶子块文件在存储节点中的保存路径。
步骤S33:建立每个叶子块的自然数编码、与该叶子块将生成的叶子块文件的保存路径以及该叶子块文件拟被存储的存储节点名称三者相对应的列表,建立分布式地震数据名与列表的关联关系。
存储节点名称可以是存储节点的网络地址。
步骤S40:按叶子块的自然数编码的大小顺序依次生成叶子块文件,生成单个叶子块文件的步骤为:
将当前叶子块的自然数编码转换成莫顿码,根据莫顿码计算出叶子块在立方体模型中的位置和大小,再根据叶子块在立方体模型中的位置和大小换算出叶子块以主测线号范围、联络线号范围和深度范围来表征的空间地址,查找出源地震数据中对应于该叶子块的主测线号范围、联络线号范围和深度范围的地震道数据,存储节点中生成与该自然数编码相对应的保存路径相关联的叶子块文件,将该地震道数据按原有的深度顺序上传到叶子块文件中。
步骤S50:将八叉树切分参数的配置信息、各个叶子块的编码信息及其对应的叶子块文件存储位置信息存放在服务器中,将索引文件存放在存储节点中。
各个叶子块的编码信息及其对应的叶子块文件存储位置信息是步骤S30中的列表。
八叉树切分参数的配置信息中记录叶子块在长、宽、高三个方向上的数据量,预设层级数。
索引文件中记录源地震数据在长、宽、高三个方向上的数据量以及八叉树的切分方式。通过这两个参数可以推导出地震数据和八叉树子块在空间位置上的对应关系,通过对应关系可以从空间位置得到叶子块的自然数编码,也可以通过叶自然数编码得到其对应的空间范围。
步骤S60:将源地震数据中除地震道数据以外的属性类数据提取出来作为属性文件存储到存储节点中,并建立属性文件的索引。
在使用分布式地震数据时,如果想从用户终端节点查看某一条主测线的地震道剖面则才如下的一种读取预定地震道剖面信息的方法,该方法包括以下步骤:
先在用户终端节点内根据剖面的主测线号、联络线号、深度范围以及八叉树切分参数的配置信息计算出该剖面对应的待下载地震道数据在立方体模型中的分布范围,根据待下载地震道数据在立方体模型中的分布范围计算出该分布范围所覆盖的叶子块。根据这些叶子块在立方体模型中的位置获得这些叶子块的莫顿码,然后将莫顿码转换成自然数编码。
用户终端节点将这些自然数编码发送到服务器节点,服务器节点根据这些自然数编码查找到这些自然数编码对应的待下载叶子块文件的所在的存储节点以及待下载叶子块文件的保存路径,然后将这些信息发送给用户终端节点。
用户终端根据每个待下载叶子块文件的所在的存储节点以及待下载叶子块文件的保存路径从存储节点中下载叶子块文件。将叶子块文件中的数据按自然数编码排列的顺序拼接起来即为预定地震道剖面信息。
虽然已经参考优选实施例对本发明进行了描述,但在不脱离本发明的范围的情况下,可以对其进行各种改进并且可以用等效物替换其中的步骤。尤其是,只要不存在逻辑冲突,各个实施例中所提到的各项技术特征均可以任意方式组合起来。本发明并不局限于文中公开的特定实施例,而是包括落入权利要求的范围内的所有技术方案。

Claims (8)

1.一种地震数据的存储方法,包括:
步骤S10:建立立方体模型,建立以立方体模型的顶点为原点且主测线号轴、联络线号轴和深度轴分别平行于立方体模型的长、宽、高三个方向的三维笛卡儿坐标系,立方体模型上离原点最远的顶点的在主测线号轴、联络线号轴和深度轴上的坐标依次为源地震数据中主测线号、联络线号和深度的最大值;
步骤S20:将立方体模型切分成预设层级的八叉树数据结构,对八叉树数据结构的每个叶子块的三维空间地址进行线性莫顿编码,将每个叶子块的莫顿码转换成自然数编码;
步骤S30:给与每个叶子块对应且将要生成的叶子块文件分配存储节点并生成保存路径,建立存储节点、保存路径以及自然数编码三者相对应的列表;
步骤S40:按叶子块的自然数编码的大小顺序依次生成存储在存储节点内的叶子块文件。
2.根据权利要求1所述的存储方法,其特征在于,在步骤S40中,生成单个叶子块文件的步骤为:
将当前叶子块的自然数编码转换成莫顿码,根据莫顿码计算出叶子块在立方体模型中的位置和大小,再根据叶子块在立方体模型中的位置和大小换算出叶子块以主测线号范围、联络线号范围和深度范围来表征的空间地址,查找出源地震数据中对应于该叶子块的主测线号范围、联络线号范围和深度范围的地震道数据,存储节点中生成与该自然数编码相对应的保存路径相关联的叶子块文件,将该地震道数据按原有的深度顺序上传到叶子块文件中。
3.根据权利要求1或2所述的存储方法,其特征在于,步骤S30包括步骤31~33:
步骤S31:采用一致性哈希算法为每个叶子块匹配存储节点;
步骤S32:存储节点中规划出用于存储与其相匹配的叶子块对应且将生成的叶子块文件的存储空间,同时建立叶子块文件的保存路径;
步骤S33:建立每个叶子块的自然数编码、与该叶子块对应将生成的叶子块文件的保存路径以及该叶子块文件拟被存储的存储节点名称三者相对应的列表,建立分布式地震数据名与列表的关联关系。
4.根据权利要求3所述的存储方法,其特征在于,步骤S32包括步骤S321、S322、S323,
步骤S321:新建一个分布式地震数据名;
步骤S322:根据分布式地震数据名生成MD5值,在每个存储节点的文件目录下建立一个用于存储叶子块文件的文件夹,该文件夹用MD5值命名;
步骤S323:将每个叶子块的哈希编码作为该叶子块将要生成的叶子块文件的文件名,建立叶子块文件在存储节点中的保存路径。
5.根据权利要求3所述的存储方法,其特征在于,步骤S31包括以下步骤:
为每个存储节点随机生成一个64位无符号整型数据表示存储节点的哈希值,每个存储节点的哈希值不相同;
将哈希值空间组织成一个虚拟圆环,虚拟圆环中哈希值地址顺时针方向增加;
将各个哈希值插入到虚拟圆环对应哈希值地址处,为每个叶子块随机生成一个64位无符号整型数据表示存储节点的哈希编码;
将当前叶子块的哈希编码插入到圆环内与其相等的哈希值地址中,按逆时针方向寻找与其最接近的哈希值,该哈希值对应的存储节点即是与该叶子块相匹配的存储节点。
6.根据权利要求3所述的存储方法,其特征在于,所述存储方法还包括步骤40后的步骤S50,
步骤S50:将八叉树切分参数的配置信息、各个叶子块的编码信息及其对应的叶子块文件存储位置信息存放在服务器中,将索引文件存放在存储节点中。
7.根据权利要求6所述的存储方法,其特征在于,所述存储方法还包括步骤50后的步骤S60,
步骤S60:将源地震数据中除地震道数据以外的属性类数据提取出来作为属性文件存储到存储节点中,并建立属性文件的索引。
8.一种读取预定地震道剖面信息的方法,该方法用于读取基于权利要求1-7中任一项所述的存储方法所获得的叶子块文件,包括以下步骤:
先在用户终端节点内根据剖面的主测线号、联络线号、深度范围以及八叉树切分参数的配置信息计算出剖面对应的待下载地震道数据在立方体模型中的分布范围,根据待下载地震道数据在立方体模型中的分布范围计算出该分布范围所覆盖的叶子块;
根据被覆盖的叶子块在立方体模型中的位置获得被覆盖的叶子块的莫顿码,然后将莫顿码转换成自然数编码;
用户终端节点将自然数编码发送到服务器节点,服务器节点根据自然数编码查找到自然数编码对应的待下载叶子块文件的所在的存储节点以及待下载叶子块文件的保存路径,然后将这些信息发送给用户终端节点;
用户终端根据每个待下载叶子块文件的所在的存储节点以及待下载叶子块文件的保存路径从存储节点中下载叶子块文件,将叶子块文件中的数据按自然数编码排列的顺序拼接起来即为预定地震道剖面信息。
CN201810243506.3A 2018-03-23 2018-03-23 地震数据的存储方法及读取方法 Active CN110297597B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810243506.3A CN110297597B (zh) 2018-03-23 2018-03-23 地震数据的存储方法及读取方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810243506.3A CN110297597B (zh) 2018-03-23 2018-03-23 地震数据的存储方法及读取方法

Publications (2)

Publication Number Publication Date
CN110297597A true CN110297597A (zh) 2019-10-01
CN110297597B CN110297597B (zh) 2023-06-13

Family

ID=68025717

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810243506.3A Active CN110297597B (zh) 2018-03-23 2018-03-23 地震数据的存储方法及读取方法

Country Status (1)

Country Link
CN (1) CN110297597B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112069135A (zh) * 2020-09-17 2020-12-11 北京中恒利华石油技术研究所 一种海量地震数据可视化存储方法
CN113534258A (zh) * 2020-04-21 2021-10-22 中国石油天然气股份有限公司 地震数据指纹特征处理方法及装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1321894A2 (en) * 2001-11-27 2003-06-25 Samsung Electronics Co., Ltd. Apparatus and method for representing 3-dimensional objects unsing depth images
CN103440350A (zh) * 2013-09-22 2013-12-11 吉林大学 一种基于八叉树的三维数据检索方法及装置
KR101424915B1 (ko) * 2013-02-27 2014-08-01 (주)웨이버스 Ccs를 위한 탄성파 탐사 정보 제공 방법 및 시스템
CN104199096A (zh) * 2014-09-12 2014-12-10 吉林大学 一种地震数据体层位面提取方法及装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1321894A2 (en) * 2001-11-27 2003-06-25 Samsung Electronics Co., Ltd. Apparatus and method for representing 3-dimensional objects unsing depth images
KR101424915B1 (ko) * 2013-02-27 2014-08-01 (주)웨이버스 Ccs를 위한 탄성파 탐사 정보 제공 방법 및 시스템
CN103440350A (zh) * 2013-09-22 2013-12-11 吉林大学 一种基于八叉树的三维数据检索方法及装置
CN104199096A (zh) * 2014-09-12 2014-12-10 吉林大学 一种地震数据体层位面提取方法及装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
盛秀杰等: "PetroV分布式数据存储与分析框架设计", 《石油地球物理勘探》 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113534258A (zh) * 2020-04-21 2021-10-22 中国石油天然气股份有限公司 地震数据指纹特征处理方法及装置
CN113534258B (zh) * 2020-04-21 2024-02-02 中国石油天然气股份有限公司 地震数据指纹特征处理方法及装置
CN112069135A (zh) * 2020-09-17 2020-12-11 北京中恒利华石油技术研究所 一种海量地震数据可视化存储方法

Also Published As

Publication number Publication date
CN110297597B (zh) 2023-06-13

Similar Documents

Publication Publication Date Title
CN105808672B (zh) 基于浏览器的海量三维点云数据的发布方法
CN106682077B (zh) 一种基于Hadoop技术的海量时序数据存储实现方法
CN101493528B (zh) 海量地震三维可视化显示方法
CN106383965A (zh) 一种三维数值大气可视化支撑系统
EP2811417A2 (en) Systems and methods for synchronizing geographic information system (GIS) network models
CN103425772A (zh) 一种具有多维信息的海量数据查询方法
CN104820714A (zh) 基于hadoop的海量瓦片小文件存储管理方法
CN102591910A (zh) 用于组合oltp数据库和olap数据库环境的计算机方法和系统
CN111782620B (zh) 一种信用链路自动跟踪平台及其方法
CN106934048A (zh) 数据在线迁移方法、代理节点
CN109739810A (zh) 文件同步方法、服务器、客户端及具有存储功能的装置
CN104035956A (zh) 一种基于分布式列存储的时间序列数据存储方法
CN110297597A (zh) 地震数据的存储方法及读取方法
CN111460043A (zh) 三维空间图像区块链存储方法及页面显示方法
CN112100197A (zh) 基于Elasticsearch的准实时日志数据分析与统计方法
CN105721520B (zh) 一种文件同步方法及装置
CN114240262B (zh) 基于一套单指标数据实现多种围岩质量分级的方法及系统
CN104866687B (zh) 支持stl数据源的动态空间索引构建方法
CN107679127A (zh) 基于地理位置的点云信息并行提取方法及其系统
CN111913951A (zh) 一种叠加电网数据的地图矢量数据切片方法
CN109451029A (zh) 一种分布式对象存储的数据缓存方法、装置、设备及介质
CN109635161B (zh) 一种海量数据环境下跨域异地协同设计方法
CN107590260A (zh) 点云数据实时检索方法及其系统
Goncalves et al. DottedDB: Anti-entropy without merkle trees, deletes without tombstones
CN105468733A (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