CN112637268B - 射电天文数据存储一致性保障方法、装置、系统及存储介质 - Google Patents
射电天文数据存储一致性保障方法、装置、系统及存储介质 Download PDFInfo
- Publication number
- CN112637268B CN112637268B CN202011368619.XA CN202011368619A CN112637268B CN 112637268 B CN112637268 B CN 112637268B CN 202011368619 A CN202011368619 A CN 202011368619A CN 112637268 B CN112637268 B CN 112637268B
- Authority
- CN
- China
- Prior art keywords
- data
- server
- metadata
- uvfits
- state configuration
- 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/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]
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0614—Improving the reliability of storage systems
- G06F3/0619—Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/067—Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种射电天文数据存储一致性保障方法、装置、系统及存储介质,所述方法包括:接收数字接收机的射电天文数据,并连接Zookeeper服务器;通过负载均衡模块获取可用的元数据服务器和数据服务器;根据填入的UVFITS头信息,通过Zookeeper获取全局唯一ID;将ID连同UVFITS头信息发送给元数据服务器和数据服务器;根据元数据服务器的状态配置节点以及数据服务器的状态配置节点的ID值,判断是否为统一数据的UVFITS头信息和数据段,并进行标记;若判断不是统一数据的UVFITS头信息和数据段,则根据标记结果进行相应的处理。本发明可以解决射电天文数据元数据、原始数据以及处理后数据的一致性问题,为各种射电观测应用系统的上层应用服务提供基础性支撑。
Description
技术领域
本发明涉及一种射电天文数据存储一致性保障方法、装置、系统及存储介质,属于天文技术和计算机应用技术领域。
背景技术
射电天文是天文学的一个重要研究领域,国内外一开始建立了大型的射电望远镜,例如我国贵州的“天眼”500米口径射电望远镜(FAST)以及内蒙古明安图厘米-分米波射电日像仪(MUSER)等,国外的射电望远镜如加拿大氢强度映射实验(CHIME)柱状面天线;美国的央斯基甚大阵列(VLA)。这些射电望远镜可以测量天体射电的强度、频谱及偏振等物理量。近年来随着信息技术的发展,很多高时、空分辨率的观测设备投入使用,采集了海量的观测数据。这些数据中可以分为两类,一类是观测的原始数据,另一类的描述观测数据的元数据。这两类数据都是目前各个天文观测台站用得最多的类型,其中,元数据可以用来描述数据的基本属性信息,从应用上来看,可以使用来作为各个数据库的检索信息;而原始数据大多是图像和星表文件,是最珍贵的时序数据,因此在存储方面都会尽可能保证多点存储以提高安全性。这两类数据在存储方式上通常会使用分布式的方式。
另外,除了这两类数据之外,还存在其他类型的数据,如处理后可供共享的最终图像数据,由于数据量的庞大、多样等特征,这些图像数据的存储也具有分布式的特点。因此,综合来看,元数据、原始数据以及处理后的数据在存储形式上根据不同的需要会存在分布式存储的特点,如何保证这三类数据之间的一致性是保障后续数据服务的基础,例如,在数据公布后,使用者,如何根据元数据信息,找到对应的原始数据以及最终的发布数据这个问题是目前该领域关注的重要问题,尤其在存储速率要求高、数据量大的情况下,这种需求更加明显。
目前,对于这种处理方式,该领域主要还是采取一种“假设一致”的处理,即,存储在数据库中的元数据中对于数据的引用“假设”是一致的,不会出现数据库中的元数据和存储在文件系统上、甚至是远程系统上的数据的不匹配问题。缺乏一套完整的一致性保障方法。
此外,计算机领域虽然有成熟的一致性算法,但是这些算法在实施到具体领域特别是射天天文领域的时候存在技术难,实施复杂,应用效果不好等不足,如何实现简单、易管理的一致性保障方法是本发明的重要贡献。
发明内容
有鉴于此,本发明提供了一种射电天文数据存储一致性保障方法、装置、系统及存储介质,其使用计算机领域的技术来保障射电天文领域中各数据存储服务器在存储各自类型数据的一致性方法,具有领域特殊性,同时也具有普遍性,可以解决射电天文数据元数据、原始数据以及处理后数据的一致性问题,为各种射电观测应用系统的上层应用服务提供基础性支撑。
本发明的第一个目的在于提供一种射电天文数据存储一致性保障方法。
本发明的第二个目的在于提供一种射电天文数据存储一致性保障装置。
本发明的第三个目的在于提供一种射电天文数据存储一致性保障系统。
本发明的第四个目的在于提供一种采集服务器。
本发明的第五个目的在于提供一种存储介质。
本发明的第一个目的可以通过采取如下技术方案达到:
一种射电天文数据存储一致性保障方法,所述方法包括:
当元数据服务器、数据服务器、发布数据服务器连接Zookeeper服务器后,接收数字接收机的射电天文数据,并连接Zookeeper服务器;
通过负载均衡模块获取可用的元数据服务器和数据服务器;
根据填入的UVFITS头信息,通过Zookeeper获取全局唯一ID;
将ID连同UVFITS头信息发送给元数据服务器和数据服务器,以使元数据服务器根据采集服务器的元数据存储请求,接收并存储元数据,使数据服务器根据采集服务器的数据存储请求,接收并存储数据;
根据元数据服务器的状态配置节点以及数据服务器的状态配置节点的ID值,判断是否为统一数据的UVFITS头信息和数据段,并进行标记;
若判断不是统一数据的UVFITS头信息和数据段,则根据标记结果进行相应的处理。
进一步的,所述根据元数据服务器的状态配置节点以及数据服务器的状态配置节点的ID值,确认是否为统一数据的UVFITS头信息和数据段,并进行标记之前,还包括:
通过Watcher机制得到Zookeeper下的元数据服务器的状态配置节点状态变化通知;
通过Watcher机制得到Zookeeper下的数据服务器的状态配置节点状态变化通知。
进一步的,所述根据元数据服务器的状态配置节点以及数据服务器的状态配置节点的ID值,确认是否为统一数据的UVFITS头信息和数据段,并进行标记,具体包括:
根据元数据服务器的状态配置节点以及数据服务器的状态配置节点的ID值,得到元数据服务器的状态配置节点以及数据服务器的状态配置节点的状态;
若元数据服务器的状态配置节点的状态和数据服务器的状态配置节点的状态均为存储成功,则判断是统一数据的UVFITS头信息和数据段,并标记为确认;
若元数据服务器的状态配置节点的状态为存储成功,数据服务器的状态配置节点的状态为存储失败,则判断不是统一数据的UVFITS头信息和数据段,并标记为重试;
若元数据服务器的状态配置节点的状态为存储失败,数据服务器的状态配置节点的状态为存储成功,则判断不是统一数据的UVFITS头信息和数据段,并标记为待处理;
若元数据服务器的状态配置节点的状态和数据服务器的状态配置节点的状态均为存储失败,则判断不是统一数据的UVFITS头信息和数据段,并标记为重试。
进一步的,所述根据标记结果进行相应的处理,具体包括:
若标记结果为重试,在预设超时时间内,返回根据填入的UVFITS头信息,通过Zookeeper获取全局唯一ID,并执行后续操作;
若标记结果为待处理,通过计算服务器重新提取UVFITS头信息,返回根据填入的UVFITS头信息,通过Zookeeper获取全局唯一ID,并执行后续操作。
进一步的,在连接Zookeeper服务器时,查看是否存在射电天文数据存储服务节点,若存在,则在该射电天文数据存储服务节点下创建采集节点,若不存在,则创建射电天文数据存储服务节点,并在该射电天文数据存储服务节点下创建采集节点;同时,查看是否存在状态配置节点,若存在,则更新状态配置节点,若不存在,则创建状态配置节点。
本发明的第二个目的可以通过采取如下技术方案达到:
一种射电天文数据存储一致性保障装置,所述装置包括:
接收单元,用于当元数据服务器、数据服务器、发布数据服务器连接Zookeeper服务器后,接收数字接收机的射电天文数据,并连接Zookeeper服务器;
第一获取单元,用于通过负载均衡模块获取可用的元数据服务器和数据服务器;
第二获取单元,用于根据填入的UVFITS头信息,通过Zookeeper服务器获取全局唯一ID;
发送单元,用于将ID连同UVFITS头信息发送给元数据服务器和数据服务器,以使元数据服务器根据采集服务器的元数据存储请求,接收并存储元数据,使数据服务器根据采集服务器的数据存储请求,接收并存储数据;
判断单元,用于根据元数据服务器的状态配置节点以及数据服务器的状态配置节点的ID值,判断是否为统一数据的UVFITS头信息和数据段,并进行标记;
处理单元,用于若判断不是统一数据的UVFITS头信息和数据段,则根据标记结果进行相应的处理。
本发明的第三个目的可以通过采取如下技术方案达到:
一种射电天文数据存储一致性保障系统,所述系统包括采集服务器、元数据服务器、数据服务器、发布数据服务器、Zookeeper服务器和计算服务器,所述采集服务器、元数据服务器、数据服务器、发布数据服务器、Zookeeper服务器和计算服务器通过网络互连,采集服务器通过数字接收机与射电望远镜的天线阵列相连;
所述采集服务器,用于上述的射电天文数据存储一致性保障方法。
进一步的,在元数据服务器、数据服务器和发布数据服务器连接Zookeeper服务器时,查看是否存在射电天文数据存储服务节点,若存在,则在该射电天文数据存储服务节点下创建采集节点,若不存在,则创建射电天文数据存储服务节点,并在该射电天文数据存储服务节点下创建采集节点;同时,查看是否存在状态配置节点,若存在,则更新状态配置节点,若不存在,则创建状态配置节点。
本发明的第四个目的可以通过采取如下技术方案达到:
一种采集服务器,包括处理器以及用于存储处理器可执行程序的存储器,所述处理器执行存储器存储的程序时,实现上述的射电天文数据存储一致性保障方法。
本发明的第五个目的可以通过采取如下技术方案达到:
一种存储介质,存储有程序,所述程序被处理器执行时,实现上述的射电天文数据存储一致性保障方法。
本发明相对于现有技术具有如下的有益效果:
本发明利用Zookeeper结合天文领域实际需要来实现射电天文领域内分布式数据存储的难题,解决了海量、高速射电天文数据存储是多类数据分布式存储的一致性保障问题,处理方法实现简单、安全、可靠,具有很好的扩展性,不仅可以完成射电电文领域内的采集服务器、元数据服务器、数据服务器以及发布数据服务器一致性保障问题,还可以应对更多其他数据类型的处理。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图示出的结构获得其他的附图。
图1为本发明实施例1的射电天文数据存储一致性保障系统的基本架构图。
图2为本发明实施例1的一致性服务子系统中各模块关系图。
图3为本发明实施例1的射电天文数据存储一致性保障方法的流程图。
图4为本发明实施例1的射电天文数据存储一致性保障系统中采集服务器、元数据服务器、数据服务器以及发布数据服务器连接Zookeeper服务器时的示意图。
图5为本发明实施例2的射电天文数据存储一致性保障装置的结构框图。
图6为本发明实施例3的采集服务器的结构框图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明的一部分实施例,而不是全部的实施例,基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例1:
如图1所示,本实施例提供了一种射电天文数据存储一致性保障系统,该系统包括采集服务器101、元数据服务器102、数据服务器103、发布数据服务器104、Zookeeper服务器105和计算服务器106,采集服务器101、元数据服务器102、数据服务器103、发布数据服务器104、Zookeeper服务器105和计算服务器106通过网络互连。
其中,采集服务器101通过数字接收机107与射电望远镜的天线阵列108相连,通过射电望远镜的天线阵列107观测到的数据被数字接收机108接收,接收后的射电天文数据存储到采集服务器101上,元数据服务器102用于存储UVFITS文件头的元数据信息,数据服务器103用于存储UVFITS原始数据文件。
采集服务器101包括五个组件:1)射电天文数据采集软件,2)Zookeeper的客户端;3)一致性服务子系统;4)元数据存储客户端;5)数据存储客户端。
元数据服务器102包括四个组件:1)元数据存储服务端,2)Zookeeper的客户端;3)一致性服务子系统;4)数据存储服务端。
数据服务器103包括四个组件:1)数据存储服务端,2)Zookeeper的客户端;3)一致性服务子系统;4)元数据存储服务端。
发布数据服务器104又称处理后数据服务器,包括四个组件:1)处理后数据存储服务端,2)Zookeeper的客户端;3)一致性服务子系统;4)发布数据存储服务端;
计算服务器106包括四个组件:1)射电天文数据处理软件,2)Zookeeper的客户端;3)一致性服务子系统;4)处理后数据客户端。
如图2所示,本实施例的一致性服务子系统包括发布订阅模块201、负载均衡模块202、分布式协调模块203、分布式锁管理模块204、服务器管理模块205和分布式屏障管理模块206。
如图3和图4所示,本实施例提供了一种射电天文数据存储一致性保障方法,所述方法基于上述采集服务器实现,其包括以下步骤:
S301、接收数字接收机的射电天文数据,并连接Zookeeper服务器。
该步骤S301在元数据服务器、数据服务器、发布数据服务器连接Zookeeper服务器后执行,元数据服务器、数据服务器、发布数据服务器和采集服务器连接Zookeeper服务器时的具体说明如下:
1)启动Zookeeper服务器,可使用单机或者分布式安装形式,为了保证可靠性,通常使用三台以上物理服务器,本实施例采用三台物理服务器,即部署有三个节点。
2)元数据服务器启动元数据存储服务端,通过Zookeeper的客户端连接Zookeeper服务器,查看是否存在射电天文数据存储服务(ObservingService)节点,若存在,则在该射电天文数据存储服务节点下创建采集节点,若不存在,则创建射电天文数据存储服务节点,路径为/ObservingService/MetaClient1,存入注册服务器的相关信息,包括服务的地址、IP和端口,通过图2的发布订阅模块注册为订阅者;同时,查看是否存在状态配置(StatusConfig)节点,若存在,则更新状态配置节点,若不存在,则创建状态配置节点,路径为/StatusConfig/MetaClient1,其值包括IP、端口、数据类型和存储状态,通过订阅机制监听“状态配置”节点的变化。
3)数据服务器启动数据存储服务端,通过Zookeeper的客户端连接Zookeeper服务器,查看是否存在射电天文数据存储服务(ObservingService)节点,若存在,则在该射电天文数据存储服务节点下创建采集节点,若不存在,则创建射电天文数据存储服务节点,路径为/ObservingService/DataClient1,存入注册服务器的相关信息,包括服务的地址、IP和端口,通过图2的发布订阅模块注册为订阅者;同时,查看是否存在状态配置(StatusConfig)节点,若存在,则更新状态配置节点,若不存在,则创建状态配置节点,路径为/StatusConfig/DataClient1,其值包括IP、端口、数据类型和存储状态,通过订阅机制监听“状态配置”节点的变化。
4)发布数据服务器启动发布数据存储服务端,通过Zookeeper的客户端连接Zookeeper服务器,查看是否存在射电天文数据存储服务(ObservingService)节点,若存在,则在该射电天文数据存储服务节点下创建采集节点,若不存在,则创建射电天文数据存储服务节点,路径为/ObservingService/PubClient1,存入注册服务器的相关信息,包括服务的地址、IP和端口,通过图2的发布订阅模块注册为订阅者;同时,查看是否存在状态配置(StatusConfig)节点,若存在,则更新状态配置节点,若不存在,则创建状态配置节点,路径为/StatusConfig/PubClient1,其值包括IP、端口、数据类型和存储状态,通过订阅机制监听“状态配置”节点的变化。
5)采集服务器启动射电天文数据采集软件,接收数字接收机的射电天文数据,并存储到本地缓存中,此时通过Zookeeper的客户端连接Zookeeper服务器,查看是否存在射电天文数据存储服务(ObservingService)节点,若存在,则在该射电天文数据存储服务节点下创建采集节点,若不存在,则创建射电天文数据存储服务节点,路径为/ObservingService/ColClient1,存入注册服务器的相关信息,包括服务的地址、IP和端口,通过图2的发布订阅模块注册为订阅者;同时,查看是否存在状态配置(StatusConfig)节点,若存在,则更新状态配置节点,若不存在,则创建状态配置节点,路径为/StatusConfig/ColClient1,其值包括IP、端口、数据类型和存储状态,通过订阅机制监听“状态配置”节点的变化。
上述实施例中的射电天文数据存储服务节点和状态配置节点均为Znode节点。
S302、通过负载均衡模块获取可用的元数据服务器和数据服务器。
具体地,通过一致性服务子系统中的负载均衡模块,负载均衡模块如图2所示,利用负载均衡算法,例如Hash算法,获取可用的元数据服务器和数据服务器。
S303、根据填入的UVFITS头信息,通过Zookeeper获取全局唯一ID。
具体地,采集服务器的采集软件根据填入的UVFITS头信息,通过Zookeeper获取全局唯一ID,例如UVFITS-00000001。
S304、将ID连同UVFITS头信息发送给元数据服务器和数据服务器。
具体地,将ID连同UVFITS头信息,发送给元数据服务器的元数据存储服务端,同时把ID连同数据发送给数据服务器的数据存储服务端。
元数据服务器的元数据存储服务端接收采集服务器的数据存储请求,根据采集服务器的元数据存储请求,接收元数据后,存储到元数据服务器上,存储服务可以是分布式文件系统或者关系型/非关系型数据库等,元数据存储完成后,更新/StatusConfig/MetaClient1的状态,状态包括ID值以及存储是否成功和失败。
数据服务器的数据存储服务端接收采集服务器的数据存储请求,根据采集服务器的数据存储请求,接收数据后,存储到数据服务器上,存储服务可以是分布式文件系统或者关系型/非关系型数据库等,数据存储完成后,更新/StatusConfig/DataClient1的状态,状态包括ID值以及存储是否成功和失败。
S305、根据元数据服务器的状态配置节点以及数据服务器的状态配置节点的ID值,判断是否为统一数据的UVFITS头信息和数据段,并进行标记。
在执行该步骤S305之前,采集服务器通过Watcher机制得到Zookeeper下的元数据服务器的状态配置节点状态变化通知,记录到本地临时存储中,等待元数据服务器的存储结果通知,采集服务器通过Watcher机制得到Zookeeper下的数据服务器的状态配置节点状态变化通知,等待数据服务器的存储结果通知。
该步骤S305具体包括:
1)根据元数据服务器的状态配置节点(/StatusConfig/MetaClient1)以及数据服务器的状态配置节点(/StatusConfig/DataClient1)的ID值,得到元数据服务器的状态配置节点以及数据服务器的状态配置节点的状态。
2)若元数据服务器的状态配置节点的状态和数据服务器的状态配置节点的状态均为存储成功,则判断是统一数据的UVFITS头信息和数据段,并标记为确认。
3)若元数据服务器的状态配置节点的状态为存储成功,数据服务器的状态配置节点的状态为存储失败,则判断不是统一数据的UVFITS头信息和数据段,并标记为重试,进入步骤S306。
4)若元数据服务器的状态配置节点的状态为存储失败,数据服务器的状态配置节点的状态为存储成功,则判断不是统一数据的UVFITS头信息和数据段,并标记为待处理,进入步骤S306。
5)若元数据服务器的状态配置节点的状态和数据服务器的状态配置节点的状态均为存储失败,则判断不是统一数据的UVFITS头信息和数据段,并标记为重试,进入步骤S306。
S306、根据标记结果进行相应的处理。
采集服务器检查本地标记结果数据库查看标记结果,若标记结果为重试,返回步骤S303,在预设超时时间T内,重新开始元数据和数据重传;若标记结果为待处理,通过计算服务器重新提取UVFITS头信息,返回步骤S303,重新进行元数据和数据存储;其中,预设超时时间T=500ms。
可以保证元数据服务器和数据服务器之间的数据一致性,即通过任意的元数据可以通过引用得到数据服务器上的原始数据,接下来只需要保证原始数据和处理后数据的一致性,即可解决这三类数据之间的一致性保障问题,重点在于处理后的数据如何保持与原始数据一致性的问题,这种场景在于观测现场的实时数据处理或在线系统上,因此一致性保障可选,具体保障方法步骤可参考采集服务器向元数据服务器和数据服务器的一致性数据保障方法,参见上述步骤S302~S306,区别在于采集服务器不需要将数据写入到数据服务器,只需要写入到处理后数据服务器。
应当注意,尽管在附图中以特定顺序描述了上述实施例的方法操作,但是这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期望的结果。相反,描绘的步骤可以改变执行顺序。附加地或备选地,可以省略某些步骤,将多个步骤合并为一个步骤执行,和/或将一个步骤分解为多个步骤执行。
实施例2:
如图5所示,本实施例提供了一种射电天文数据存储一致性保障装置,该装置应用于采集服务器,其包括接收单元501、第一获取单元502、第二获取单元503、发送单元504、发送单元505、判断单元506和处理单元507,各个单元的具体功能如下:
接收单元501,用于当元数据服务器、数据服务器、发布数据服务器连接Zookeeper服务器后,接收数字接收机的射电天文数据,并连接Zookeeper服务器。
第一获取单元502,用于通过负载均衡模块获取可用的元数据服务器和数据服务器。
第二获取单元503,用于根据填入的UVFITS头信息,通过Zookeeper服务器获取全局唯一ID。
发送单元504,用于将ID连同UVFITS头信息发送给元数据服务器和数据服务器,以使元数据服务器根据采集服务器的元数据存储请求,接收并存储元数据,使数据服务器根据采集服务器的数据存储请求,接收并存储数据。
判断单元505,用于根据元数据服务器的状态配置节点以及数据服务器的状态配置节点的ID值,判断是否为统一数据的UVFITS头信息和数据段,并进行标记。
处理单元506,用于若判断不是统一数据的UVFITS头信息和数据段,则根据标记结果进行相应的处理。
本实施例中各个单元的具体实现可以参见上述实施例1,在此不再一一赘述;需要说明的是,本实施例提供的系统仅以上述各功能单元的划分进行举例说明,在实际应用中,可以根据需要而将上述功能分配由不同的功能单元完成,即将内部结构划分成不同的功能单元,以完成以上描述的全部或者部分功能。
可以理解,上述装置所使用的术语“第一”、“第二”等可用于描述各种单元,但这些单元不受这些术语限制。这些术语仅用于将第一个单元与另一个单元区分。举例来说,在不脱离本发明的范围的情况下,可以将第一获取单元称为第二获取单元,且类似地,可将第二获取单元称为第一获取单元,第一获取单元和第二获取单元两者都是获取单元,但不是同一获取单元。
实施例3:
如图6所示,本实施例提供了一种采集服务器,该采集服务器包括通过系统总线601连接的处理器602、存储器和网络接口603,该处理器用于提供计算和控制能力,该存储器包括非易失性存储介质604和内存储器605,该非易失性存储介质604存储有计算机程序和数据库,该内存储器605为非易失性存储介质中的计算机程序的运行提供环境,处理器602执行存储器存储的计算机程序时,实现上述实施例1的射电天文数据存储一致性保障方法,如下:
当元数据服务器、数据服务器、发布数据服务器连接Zookeeper服务器后,接收数字接收机的射电天文数据,并连接Zookeeper服务器;
通过负载均衡模块获取可用的元数据服务器和数据服务器;
根据填入的UVFITS头信息,通过Zookeeper获取全局唯一ID;
将ID连同UVFITS头信息发送给元数据服务器和数据服务器,以使元数据服务器根据采集服务器的元数据存储请求,接收并存储元数据,使数据服务器根据采集服务器的数据存储请求,接收并存储数据;
根据元数据服务器的状态配置节点以及数据服务器的状态配置节点的ID值,判断是否为统一数据的UVFITS头信息和数据段,并进行标记;
若判断不是统一数据的UVFITS头信息和数据段,则根据标记结果进行相应的处理。
实施例4:
本实施例提供了一种存储介质,该存储介质为计算机可读存储介质,其存储有计算机程序,所述计算机程序被处理器执行时,实现上述实施例1的射电天文数据存储一致性保障方法,如下:
当元数据服务器、数据服务器、发布数据服务器连接Zookeeper服务器后,接收数字接收机的射电天文数据,并连接Zookeeper服务器;
通过负载均衡模块获取可用的元数据服务器和数据服务器;
根据填入的UVFITS头信息,通过Zookeeper获取全局唯一ID;
将ID连同UVFITS头信息发送给元数据服务器和数据服务器,以使元数据服务器根据采集服务器的元数据存储请求,接收并存储元数据,使数据服务器根据采集服务器的数据存储请求,接收并存储数据;
根据元数据服务器的状态配置节点以及数据服务器的状态配置节点的ID值,判断是否为统一数据的UVFITS头信息和数据段,并进行标记;
若判断不是统一数据的UVFITS头信息和数据段,则根据标记结果进行相应的处理。
需要说明的是,本实施例的计算机可读存储介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
在本实施例中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本实施例中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读存储介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读存储介质上包含的计算机程序可以用任何适当的介质传输,包括但不限于:电线、光缆、RF(射频)等等,或者上述的任意合适的组合。
上述计算机可读存储介质可以以一种或多种程序设计语言或其组合来编写用于执行本实施例的计算机程序,上述程序设计语言包括面向对象的程序设计语言—诸如Java、Python、C++,还包括常规的过程式程序设计语言—诸如C语言或类似的程序设计语言。程序可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN)连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
综上所述,本发明利用Zookeeper结合天文领域实际需要来实现射电天文领域内分布式数据存储的难题,解决了海量、高速射电天文数据存储是多类数据分布式存储的一致性保障问题,处理方法实现简单、安全、可靠,具有很好的扩展性,不仅可以完成射电电文领域内的采集服务器、元数据服务器、数据服务器以及发布数据服务器一致性保障问题,还可以应对更多其他数据类型的处理。
以上所述,仅为本发明专利较佳的实施例,但本发明专利的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明专利所公开的范围内,根据本发明专利的技术方案及其发明构思加以等同替换或改变,都属于本发明专利的保护范围。
Claims (10)
1.一种射电天文数据存储一致性保障方法,其特征在于,所述方法包括:
当元数据服务器、数据服务器、发布数据服务器连接Zookeeper服务器后,接收数字接收机的射电天文数据,并连接Zookeeper服务器;
通过负载均衡模块获取可用的元数据服务器和数据服务器;
根据填入的UVFITS头信息,通过Zookeeper获取全局唯一ID;
将ID连同UVFITS头信息发送给元数据服务器和数据服务器,以使元数据服务器根据采集服务器的元数据存储请求,接收并存储元数据,使数据服务器根据采集服务器的数据存储请求,接收并存储数据;
根据元数据服务器的状态配置节点以及数据服务器的状态配置节点的ID值,判断是否为统一数据的UVFITS头信息和数据段,并进行标记;
若判断不是统一数据的UVFITS头信息和数据段,则根据标记结果进行相应的处理。
2.根据权利要求1所述的射电天文数据存储一致性保障方法,其特征在于,所述根据元数据服务器的状态配置节点以及数据服务器的状态配置节点的ID值,确认是否为统一数据的UVFITS头信息和数据段,并进行标记之前,还包括:
通过Watcher机制得到Zookeeper下的元数据服务器的状态配置节点状态变化通知;
通过Watcher机制得到Zookeeper下的数据服务器的状态配置节点状态变化通知。
3.根据权利要求1所述的射电天文数据存储一致性保障方法,其特征在于,所述根据元数据服务器的状态配置节点以及数据服务器的状态配置节点的ID值,确认是否为统一数据的UVFITS头信息和数据段,并进行标记,具体包括:
根据元数据服务器的状态配置节点以及数据服务器的状态配置节点的ID值,得到元数据服务器的状态配置节点以及数据服务器的状态配置节点的状态;
若元数据服务器的状态配置节点的状态和数据服务器的状态配置节点的状态均为存储成功,则判断是统一数据的UVFITS头信息和数据段,并标记为确认;
若元数据服务器的状态配置节点的状态为存储成功,数据服务器的状态配置节点的状态为存储失败,则判断不是统一数据的UVFITS头信息和数据段,并标记为重试;
若元数据服务器的状态配置节点的状态为存储失败,数据服务器的状态配置节点的状态为存储成功,则判断不是统一数据的UVFITS头信息和数据段,并标记为待处理;
若元数据服务器的状态配置节点的状态和数据服务器的状态配置节点的状态均为存储失败,则判断不是统一数据的UVFITS头信息和数据段,并标记为重试。
4.根据权利要求3所述的射电天文数据存储一致性保障方法,其特征在于,所述根据标记结果进行相应的处理,具体包括:
若标记结果为重试,在预设超时时间内,返回根据填入的UVFITS头信息,通过Zookeeper获取全局唯一ID,并执行后续操作;
若标记结果为待处理,通过计算服务器重新提取UVFITS头信息,返回根据填入的UVFITS头信息,通过Zookeeper获取全局唯一ID,并执行后续操作。
5.根据权利要求1-4任一项所述的射电天文数据存储一致性保障方法,其特征在于,在连接Zookeeper服务器时,查看是否存在射电天文数据存储服务节点,若存在,则在该射电天文数据存储服务节点下创建采集节点,若不存在,则创建射电天文数据存储服务节点,并在该射电天文数据存储服务节点下创建采集节点;同时,查看是否存在状态配置节点,若存在,则更新状态配置节点,若不存在,则创建状态配置节点。
6.一种射电天文数据存储一致性保障装置,其特征在于,所述装置包括:
接收单元,用于当元数据服务器、数据服务器、发布数据服务器连接Zookeeper服务器后,接收数字接收机的射电天文数据,并连接Zookeeper服务器;
第一获取单元,用于通过负载均衡模块获取可用的元数据服务器和数据服务器;
第二获取单元,用于根据填入的UVFITS头信息,通过Zookeeper服务器获取全局唯一ID;
发送单元,用于将ID连同UVFITS头信息发送给元数据服务器和数据服务器,以使元数据服务器根据采集服务器的元数据存储请求,接收并存储元数据,使数据服务器根据采集服务器的数据存储请求,接收并存储数据;
判断单元,用于根据元数据服务器的状态配置节点以及数据服务器的状态配置节点的ID值,判断是否为统一数据的UVFITS头信息和数据段,并进行标记;
处理单元,用于若判断不是统一数据的UVFITS头信息和数据段,则根据标记结果进行相应的处理。
7.一种射电天文数据存储一致性保障系统,其特征在于,所述系统包括采集服务器、元数据服务器、数据服务器、发布数据服务器、Zookeeper服务器和计算服务器,所述采集服务器、元数据服务器、数据服务器、发布数据服务器、Zookeeper服务器和计算服务器通过网络互连,采集服务器通过数字接收机与射电望远镜的天线阵列相连;
所述采集服务器,用于执行权利要求1-5任一项所述的射电天文数据存储一致性保障方法。
8.根据权利要求7所述的射电天文数据存储一致性保障系统,其特征在于,在元数据服务器、数据服务器和发布数据服务器连接Zookeeper服务器时,查看是否存在射电天文数据存储服务节点,若存在,则在该射电天文数据存储服务节点下创建采集节点,若不存在,则创建射电天文数据存储服务节点,并在该射电天文数据存储服务节点下创建采集节点;同时,查看是否存在状态配置节点,若存在,则更新状态配置节点,若不存在,则创建状态配置节点。
9.一种采集服务器,包括处理器以及用于存储处理器可执行程序的存储器,其特征在于,所述处理器执行存储器存储的程序时,实现权利要求1-5任一项所述的射电天文数据存储一致性保障方法。
10.一种存储介质,存储有程序,其特征在于,所述程序被处理器执行时,实现权利要求1-5任一项所述的射电天文数据存储一致性保障方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011368619.XA CN112637268B (zh) | 2020-11-30 | 2020-11-30 | 射电天文数据存储一致性保障方法、装置、系统及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011368619.XA CN112637268B (zh) | 2020-11-30 | 2020-11-30 | 射电天文数据存储一致性保障方法、装置、系统及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112637268A CN112637268A (zh) | 2021-04-09 |
CN112637268B true CN112637268B (zh) | 2022-03-18 |
Family
ID=75306586
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011368619.XA Active CN112637268B (zh) | 2020-11-30 | 2020-11-30 | 射电天文数据存储一致性保障方法、装置、系统及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112637268B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101252603A (zh) * | 2008-04-11 | 2008-08-27 | 清华大学 | 基于存储区域网络san的集群分布式锁管理方法 |
CN102929696A (zh) * | 2012-09-28 | 2013-02-13 | 北京搜狐新媒体信息技术有限公司 | 一种分布式系统中心节点构建、提交、监控方法及装置 |
CN105610947A (zh) * | 2015-12-30 | 2016-05-25 | 青岛海尔智能家电科技有限公司 | 一种高可用分布式队列服务实现方法、装置和系统 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109120678B (zh) * | 2018-07-26 | 2021-05-14 | 北京百度网讯科技有限公司 | 用于分布式存储系统的服务托管的方法和装置 |
-
2020
- 2020-11-30 CN CN202011368619.XA patent/CN112637268B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101252603A (zh) * | 2008-04-11 | 2008-08-27 | 清华大学 | 基于存储区域网络san的集群分布式锁管理方法 |
CN102929696A (zh) * | 2012-09-28 | 2013-02-13 | 北京搜狐新媒体信息技术有限公司 | 一种分布式系统中心节点构建、提交、监控方法及装置 |
CN105610947A (zh) * | 2015-12-30 | 2016-05-25 | 青岛海尔智能家电科技有限公司 | 一种高可用分布式队列服务实现方法、装置和系统 |
Non-Patent Citations (1)
Title |
---|
基于HBase的遥感数据分布式存储与查询方法研究;景维鹏等;《计算机工程与科学》;20180615(第06期);第992-998页 * |
Also Published As
Publication number | Publication date |
---|---|
CN112637268A (zh) | 2021-04-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110147398B (zh) | 一种数据处理方法、装置、介质和电子设备 | |
US9787671B1 (en) | Highly available web-based database interface system | |
CN111800458B (zh) | 一种Kubernetes容器云平台的动态负载均衡方法及系统 | |
CN108718347B (zh) | 一种域名解析方法、系统、装置及存储介质 | |
US11741075B2 (en) | Methods and system of tracking transactions for distributed ledger | |
AU2011323987A1 (en) | Methods and systems for providing access to data and measurements in a management system | |
CN110413676A (zh) | 数据库的访问方法及其装置、电子设备和介质 | |
CN104219235A (zh) | 一种分布式交易请求方法及装置 | |
CN110765484A (zh) | 一种征信数据处理方法及电子设备 | |
CN110851290A (zh) | 一种数据同步方法、装置、电子设备及存储介质 | |
CN111212135A (zh) | 消息订阅方法、装置、系统、电子设备及存储介质 | |
AU2011323986A1 (en) | Methods and systems for establishing secure authenticated bidirectional server communication using automated credential reservation | |
CN112069169A (zh) | 区块数据存储方法、装置、电子设备及可读存储介质 | |
CN112579696B (zh) | 射电天文数据多点同步复制方法、装置、服务器及存储介质 | |
CN112637268B (zh) | 射电天文数据存储一致性保障方法、装置、系统及存储介质 | |
CN113285825B (zh) | 一种设备接入系统及接入方法 | |
CN110019536B (zh) | 一种基于医疗区块链技术的数据库系统 | |
CN115098528B (zh) | 业务处理方法、装置、电子设备及计算机可读存储介质 | |
CN115086347B (zh) | 数据同步方法、装置、电子设备及存储介质 | |
CN113553206B (zh) | 数据事件执行方法、装置、电子设备和计算机可读介质 | |
CN108805741B (zh) | 一种电能质量数据的融合方法、装置及系统 | |
CN112650597B (zh) | 高并发采集数据的处理系统及方法 | |
CN116132250A (zh) | 运维系统、方法、存储介质、电子设备 | |
US11258860B2 (en) | System and method for bot detection and classification | |
US20200099788A1 (en) | Context data management interface for contact center |
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 |