CN104268087A - 在建大坝混凝土实时测温海量数据的存储方法及装置 - Google Patents
在建大坝混凝土实时测温海量数据的存储方法及装置 Download PDFInfo
- Publication number
- CN104268087A CN104268087A CN201410466217.1A CN201410466217A CN104268087A CN 104268087 A CN104268087 A CN 104268087A CN 201410466217 A CN201410466217 A CN 201410466217A CN 104268087 A CN104268087 A CN 104268087A
- Authority
- CN
- China
- Prior art keywords
- data
- data block
- storage
- memory
- temperature measurement
- 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.)
- Pending
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种在建大坝混凝土实时测温海量数据的存储方法,包括以下步骤:将数据打包为多个数据块,并且根据多个数据块中每个数据块生成对应的数据块ID;检索每个数据块对应的存储调度节点掌握的资源池,以调度最低代价的存储目的地;根据最低代价的存储目的地发送存储请求以将每个数据块中数据存储至相应的存储位置,并更新存储位置映射表。本发明实施例通过将数据打包并且调度最低代价的存储目的地,实现根据最低代价的存储目的地发送存储请求以将数据进行存储的目的,充分利用现有低成本、大容量的存储设备,精细度和安全性高,提高存储效率,满足用户的使用要求。本发明还公开了一种在建大坝混凝土实时测温海量数据的存储装置。
Description
技术领域
本发明涉及计算机信息化技术领域,特别涉及一种在建大坝混凝土实时测温海量数据的存储方法及装置。
背景技术
相比较海量密集采集的数据而言,一个大型施工现场往往存在上万个以上的数据采集点,采集的频率从几秒到几分钟不等,而施工期又往往在10年以上,往往导致海量数据的累积,并且大型水利施工现场往往处于高山峡谷,导致上述单一存储点的风险大,而且核心数据的安全性尤为重要,因为这些数据随着施工期不能再次采集,并且后续施工也要以这些数据为基础,需要进行数据的异地灾难备份。
相关技术中,在大型水利施工现场中使用传感器网络采集的数据例如温度、湿度、压力和人员位置等存储在现场的数据采集终端中,有的用文件存储,有的用小型数据库系统存储,一些开发的上层应用直接调用文件IO函数或者数据库SQL(Structured QueryLanguage,结构化查询语言)语言对这些采集上来的数据进行存储和检索。然而,相关技术中并没有一个分布存储的完整方案,无法充分利用现有低成本、大容量的存储设备,且不能很好地实现一定冗余,精细度不高,存在数据的安全存储和检索的隐患问题。
发明内容
本发明旨在至少在一定程度上解决上述相关技术中的技术问题之一。
为此,本发明的一个目的在于提出一种存储高效、精细度高的在建大坝混凝土实时测温海量数据的存储方法。
本发明的另一个目的在于提出一种在建大坝混凝土实时测温海量数据的存储装置。
为达到上述目的,本发明一方面实施例提出了一种在建大坝混凝土实时测温海量数据的存储方法,包括以下步骤:将数据打包为固定大小的多个数据块,并且根据所述多个数据块中每个数据块生成对应的数据块身份识别号ID(Identity,身份识别号);检索所述每个数据块对应的存储调度节点掌握的资源池,以调度最低代价的存储目的地;以及根据所述最低代价的存储目的地发送存储请求以将所述每个数据块中数据存储至相应的存储位置,并更新存储位置映射表。
根据本发明实施例提出的在建大坝混凝土实时测温海量数据的存储方法,通过将数据打包为固定大小的数据块,并且检索数据块对应的存储调度节点掌握的资源池,从而调度最低代价的存储目的地,实现根据最低代价的存储目的地发送存储请求以将数据进行存储的目的,充分利用现有低成本、大容量的存储设备,精细度和安全性高,提高存储效率,满足用户的使用要求。
另外,根据本发明上述实施例的在建大坝混凝土实时测温海量数据的存储方法还可以具有如下附加的技术特征:
在本发明的一个实施例中,所述将数据打包为固定大小的多个数据块,并且根据所述多个数据块中每个数据块生成对应的数据块ID,进一步包括:将所述每个数据块的属性、数据采集点ID、数据采集块时间段、大小、内容归一化为唯一标记,以生成所述对应的数据块ID。
进一步地,在本发明的一个实施例中,上述方法还包括:将所述每个数据块中数据在预设周期备份至第一预设存储位置。
进一步地,在本发明的一个实施例中,上述方法还包括:获取数据块ID;根据所述数据块ID与所述检索映射表获取所述数据块的存储位置;检索所述数据块对应的存储调度节点掌握的资源池,以调度最低代价的存储目的地;以及根据所述最低代价的存储目的地发送检索请求以根据所述存储位置调用所述数据块中数据。
进一步地,在本发明的一个实施例中,上述方法还包括:将调用次数超过预设次数的数据块存储至第二预设存储位置。
本发明另一方面实施例提出了一种在建大坝混凝土实时测温海量数据的存储装置,包括:生成模块,用于将数据打包为固定大小的多个数据块,并且根据所述多个数据块中每个数据块生成对应的数据块ID;第一检索模块,用于检索所述每个数据块对应的存储调度节点掌握的资源池,以调度最低代价的存储目的地;以及存储请求模块,用于根据所述最低代价的存储目的地发送存储请求以将所述每个数据块中数据存储至相应的存储位置,并更新存储位置映射表。
根据本发明实施例提出的在建大坝混凝土实时测温海量数据的存储装置,通过将数据打包为固定大小的数据块,并且检索数据块对应的存储调度节点掌握的资源池,从而调度最低代价的存储目的地,实现根据最低代价的存储目的地发送存储请求以将数据进行存储的目的,充分利用现有低成本、大容量的存储设备,精细度和安全性高,提高存储效率,满足用户的使用要求。
另外,根据本发明上述实施例的在建大坝混凝土实时测温海量数据的存储装置还可以具有如下附加的技术特征:
在本发明的一个实施例中,所述生成模块还用于:将所述每个数据块的属性、数据采集点ID、数据采集块时间段、大小、内容归一化为唯一标记,以生成所述对应的数据块ID。
进一步地,在本发明的一个实施例中,上述装置还包括:备份模块,用于将所述数据块中数据在预设周期备份至第一预设存储位置。
进一步地,在本发明的一个实施例中,上述装置还包括:获取模块,用于获取数据块ID;第二检索模块,用于根据所述数据块ID与所述检索映射表获取所述数据块的存储位置,并且检索所述数据块对应的存储调度节点掌握的资源池,以调度最低代价的存储目的地;以及检索请求模块,用于根据所述最低代价的存储目的地发送检索请求以根据所述存储位置调用所述数据块中数据。
进一步地,在本发明的一个实施例中,上述装置还包括:存储模块,用于将调用次数超过预设次数的数据块存储至第二预设存储位置。
本发明附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
本发明的上述和/或附加的方面和优点从结合下面附图对实施例的描述中将变得明显和容易理解,其中:
图1为根据本发明一个实施例的在建大坝混凝土实时测温海量数据的存储方法的流程图;
图2为根据本发明一个实施例的多层架构示意图;
图3为根据本发明一个实施例的数据的检索方法的流程图;
图4为根据本发明一个实施例的网络拓扑图;
图5为根据本发明一个实施例的数据块的存储流程图;
图6为根据本发明一个实施例的数据块的检索流程图;
图7为根据本发明一个实施例的在建大坝混凝土实时测温海量数据的存储装置的结构示意图;
图8为根据本发明一个具体实施例的在建大坝混凝土实时测温海量数据的存储装置的结构示意图;以及
图9为根据本发明另一个实施例的在建大坝混凝土实时测温海量数据的存储装置的结构示意图。
具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本发明的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。
在本发明中,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”、“固定”等术语应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。
在本发明中,除非另有明确的规定和限定,第一特征在第二特征之“上”或之“下”可以包括第一和第二特征直接接触,也可以包括第一和第二特征不是直接接触而是通过它们之间的另外的特征接触。而且,第一特征在第二特征“之上”、“上方”和“上面”包括第一特征在第二特征正上方和斜上方,或仅仅表示第一特征水平高度高于第二特征。第一特征在第二特征“之下”、“下方”和“下面”包括第一特征在第二特征正上方和斜上方,或仅仅表示第一特征水平高度小于第二特征。
下面参照附图描述根据本发明实施例提出的在建大坝混凝土实时测温海量数据的存储方法及装置,首先将参照附图描述根据本发明实施例提出的在建大坝混凝土实时测温海量数据的存储方法。参照图1所示,该方法包括以下步骤:
S101,将数据块打包为固定大小的多个数据块,并且根据多个数据块中每个数据块生成对应的数据块身份识别号ID。
其中,在本发明的一个实施例中,例如在水利施工现场中进行大坝混凝土实时测温时,即运用埋设在混凝土内的温度传感器通过现场总线组成网络,向温度采集服务器上报温度报文,这些内容包括节点号,温度值,变化率,采集时间等,由于采集的数据是零散的,不定长的,且随着采集仪厂家,型号不同而变化,因此本发明实施例在存储请求之前统一整理成固定大小的数据块,以方便检索,减少碎片化。
进一步地,在本发明的一个实施例中,将数据块打包为固定大小的多个数据块,并且根据多个数据块中每个数据块生成对应的数据块ID,进一步包括:将每个数据块的属性、数据采集点ID、数据采集块时间段、大小、内容归一化为唯一标记,以生成对应的数据块ID。
具体地,在本发明的一个实施例中,参照图2所示,本发明实施例的多层架构可以分为四层:用户交互层L1、业务应用层L2、网络层L3和存储介质智能管理单元层L4,也可以称为存贮介质智能管理单元层L4。用户交互层L1、业务应用层L2、网络层L3和存储介质智能管理单元层L4通过合适的协议进行组网,共同完成目标计算,其采取“分而治之”的思想,即每个层相互独立,各层之间仅通过约定好的接口进行通讯和连接。具体地,在本发明的一个实施例中,本发明实施例从硬件上包括了各种计算机服务器和连接这些服务器的计算机网络,从软件上包括了各种特定目的的软件组件,硬件和软件共同作用可以用于在建大坝混凝土实时测温海量数据的高效分布存储和检索,其充分利用水利施工现场的计算机网络和服务器,并通过合适的协议进行组网,共同完成目标计算。本发明实施例充分利用水利施工现场的计算机网络和服务器,为海量测温数据提供分布存储和检索的高效和快速方法,其中,检索方法在下面进行详细赘述。
其中,用户交互层L1提供两方面的内容:一个是人机交互,提供GUI(Graphical UserInterface,简称GUI,又称图形用户接口)或者命令行两种方式供使用者使用;另外一个是机-机交互,提供API(Application Programming Interface,应用程序编程接口)的方式供服务需求方调用。用户交互层L1可以发起对两类服务:存储和检索的请求。业务应用层L2为上层提供服务,包含两个核心组件,一个是业务服务点,包含了存储和检索核心服务,另外还提供诸如运行日志,性能检测,测试及其他服务内容,另外一个是业务适配器,业务适配器动态维护最重要的一个数据表,存储位置映射表即数据块-存储地映射表。网络层L3为业务层提供通讯服务,包括智能路由和网络缓存。智能路由包含了一些规则定义,比如优选离客户物理位置近的存储地点,网络缓存单元可以将最近经常被调用的数据库存放在内存或者固态硬盘SSD(Solid State Drive,固态硬盘)中,从而存取快速,不用实际通过网络进行传送。存储介质智能管理单元层L4提供对实际物理存储介质的管理,由一个主控模块统一管理诸如光盘,HDD(Hard Disk Drive,硬盘驱动器),SDD等媒体介质。
具体地,在用户交互层L1发起存储服务时,首先利用数据块的属性,数据采集点ID,数据采集块时间段(开始时间,结束时间),大小,内容等归一化为唯一标记,即数据块ID。
S102,检索每个数据块对应的存储调度节点掌握的资源池,以调度最低代价的存储目的地。
在本发明的一个实施例中,其次利用当前数据块存储调度节点掌握的资源池,选取代价最低的存储目的地。需要说明的是,此处所指代价最低是指存储更高效的存储目的地。
S103,根据最低代价的存储目的地发送存储请求以将每个数据块中数据存储至相应的存储位置,并更新存储位置映射表。
在本发明的一个实施例中,网络层L3承担该数据块的有效传送工作,同时处理其中的发送失败,成功,重传情况。具体地,存储介质智能管理单元层L4接收网络层L3传来的存储请求,将具体数据块中数据根据资源配备发送到物理介质里,可能是HDD,也可能是SDD等,并且在存储任务成功之后,更新存储块-存储位置对应映射表即位置映射表,其中,核心信息存储块-存储位置对应映射表即位置映射表是动态维护的,其代价(存储,检索)信息是动态变化的。网络调度模块也定时发送保活心跳报文,用于维护各个网络节点失效状态,剔除一些已经损坏的存储节点。
进一步地,在本发明的一个实施例中,上述方法还包括:将数据块中每个数据在预设周期备份至第一预设存储位置。具体地,为了容错的目的,数据块存储是冗余的,不仅包含在本地的冗余备份,还要定期利用网络进行异地备份,异地备份优选在总部的机房里,即第一预设存储位置优选为总部的机房。本发明实施例充分利用现有低成本,大容量的存储设备,采用本地化分布式处理的方式实现一定冗余的存储系统,同时结合网络,实现了异地数据存储,以客户端/服务器的模式为在建大坝混凝土实时测温系统的海量数据提供高效存储和快速检索服务。
进一步地,在本发明的一个实施例中,参照图3所示,在此对检索方法进行赘述。其中,上述方法还包括以下步骤:
S301,获取数据块ID。
S302,根据数据块ID与检索映射表获取数据块的存储位置。
在本发明的一个实施例中,首先利用数据块ID在数据库ID和存储位置匹配表里快速进行查找,以获取数据块的存储位置。
S303,检索数据块对应的存储调度节点掌握的资源池,以调度最低代价的存储目的地。
进一步地,在本发明的一个实施例中,在获取数据块的存储位置之后,利用当前数据块存储调度节点掌握的资源池,选取代价最低的存储目的地。
S304,根据最低代价的存储目的地发送检索请求以根据存储位置调用数据块中数据。
进一步地,在本发明的一个实施例中,网络层L3承担该数据块的有效传送工作,同时处理其中的发送失败,成功,重传情况。具体地,存储介质智能管理单元层L4接收网络层L3传来的检索请求,将具体数据从物理介质里发送到网络层L3,根据资源配备,这些物理介质可能是硬盘HDD,也可能是固态硬盘SDD等。
在本发明的一个实施例中,上述方法还包括:将调用次数超过预设次数的数据块存储至第二预设存储位置。具体地,网络层L3引入网络缓存单元装置可以将最近经常被调用的数据块存放在内存中,即第二预设存储位置优选为内存中。本发明实施例通过将经常被调用的数据块存放在内存中,从而存取速度快,不用实际通过网络进行传送,提高用户的使用体验。
在具体应用中,例如在水利施工现场应用中,本发明实施例可以实现对于在建大坝混凝土实时测温海量数据的高效存储和快速检索,结构简单,易于实现,并且解决了目前水利施工现场中关键业务数据的安全存储和检索的隐患问题,对于其他行业也有很好的借鉴意义。下面参照附图作进一步赘述。
在本发明的一个实施例中,参照图4所示,图4所示为一个典型的现场实施网络图,其可以分为三个区域:中心设备机房,客户端应用场合和异地存储系统。具体地,其包含了如下网元:中心设备机房包括:路由器与防火墙,用于连接各个服务器单元;数据存储调度服务器:此服务器单元维护数据块-目的地映射信息表即位置映射表,决定当前请求的数据库存放在哪个实际服务器上,以及该服务器还周期性的将本地的数据块通过网络发往异地进行存储;数据存储数据服务器:此服务器单元维护实际存储各个数据块,其中,为了维护方便,统一采用商用数据库系统;数据存储应用服务器:此服务器单元为上层提供服务,包括基于API调用的服务实体和WEB方式为人机交互的服务实体。
就现有技术而言,在企业大型多单元分布系统中,一般通过网络套接字(Socket)协议作为应用单元之间进行数据交换的通常方法,基本上采取的是自定义报文格式,无论是定长或者分隔符的,但是,由于这些自定义的信息格式缺乏统一标准,随意性大,通用性,灵活性不足,不能满足企业IT建设周期长,新技术层出不穷的现实情况的需求,随着近年来可扩展标记语言(Extensible Markup Language,XML)的普及,现有或者将来企业开发的系统都推荐应用标准的XML作为相应的应用的数据交换标准。
具体地,在本发明的一个实施例中,本发明实施例的存储API定义如下:
进一步地,在本发明的一个实施例中,本发明实施例的检索存储API定义如下:
下面详细阐述两个服务即存储与检索的流程。
在本发明的一个实施例中,参照图5所示,数据块存储流程包括以下步骤:
S501,服务请求开始。
S502,接收数据块,生成数据块ID。
在本发明的实施例中,利用数据块的属性,数据采集点ID,数据采集块时间段(开始时间,结束时间),大小,内容等归一化为唯一标记,以生成数据块ID。
S503,检索资源池,选取代价最低的存储目的地。
在本发明的实施例中,利用当前数据块存储调度节点掌握的资源池,选取代价最低的存储目的地。
S504,网络层L3传送到目的地。
S505,判断是否成功。如果是,则进入步骤S506;如果否,则返回步骤S503。
需要说明的是,执行步骤S505的同时执行步骤S507。
在本发明的实施例中,如果成功,则存储介质智能管理单元层L4接收网络层L3传来的存储请求,将具体数据发送到物理介质里,根据资源配备,可能是HDD,也可能是SDD等。
S506,更新映射表。
在本发明的实施例中,存储任务成功后,更新存储块-存储位置对应映射表即位置映射表。
S507,判断传送次数是否大于N。如果是,则进入步骤S508;如果否,则进入步骤S505。
在本发明的实施例中,网络层L3承担该数据块的有效传送工作,同时处理其中的发送失败,成功,重传情况。优选的,可以尝试N次,如果N次失败,报告调度模块,重新调度,同时更新映射表,增加代价值,即不优选。如果此次失败,转到重新调度。
S508,此次任务失败。
S509,本次任务结束。
进一步地,在本发明的一个实施例中,参照图6所示,数据块检索流程包括以下步骤:
S601,服务请求开始。
在本发明的实施例中,利用数据块ID,在数据库ID和存储位置匹配表里快速进行查找。
S602,检索资源池,选取代价最低的存储目的地。
在本发明的实施例中,利用当前数据块存储调度节点掌握的资源池数据,选取代价最低的存储源地即存储目的地。一般的,这些资源往往可以选用物理链路较短的节点。
S603,网络层L3传送请求到目的地。
S604,判断是否成功。如果是,则进入步骤S605;如果否,则返回步骤S602。
S605,获取数据。
在本发明的实施例中,存储介质智能管理单元层L4接收网络层L3传来的检索请求,将具体数据从物理介质里发送到网络层L3,根据资源配备,可能是HDD,也可能是SDD等。
S606,判断传送次数是否大于N。如果是,则进入步骤S607;如果否,则进入步骤S604。
在本发明的实施例中,网络层L3承担该数据块的有效传送工作,同时处理其中的发送失败,成功,重传情况。优选的,可以尝试N次,如果N次失败,报告调度模块,重新调度,同时更新映射表,增加代价值,即不优选。如果此次失败,则重新调度。
S607,此次任务失败,重新选取存储单元,返回步骤S602。
S608,本次任务结束。
本发明实施例所述可以应用于在建大坝混凝土实时测温海量数据的高效存储和快速检索方法和系统,可以有效的保证了水利施工现场信息化水平的进一步提升,实现了对于在建大坝混凝土实时测温海量数据的高效存储和快速检索,结构简单,易于实现,且解决了目前水利施工现场中关键业务数据的安全存储和检索的隐患问题。
根据本发明实施例提出的在建大坝混凝土实时测温海量数据的存储方法,通过将数据打包为固定大小的数据块,并且检索数据块对应的存储调度节点掌握的资源池,从而调度最低代价的存储目的地,实现根据最低代价的存储目的地发送存储请求以将数据进行存储的目的,以及将数据进行备份,充分利用现有低成本、大容量的存储设备,很好地实现一定冗余,精细度和安全性高,提高存储效率,满足用户的使用要求。另外,本发明实施通过根据数据块生成的数据块ID进行检索,速度快、效率高,且消除了数据的安全存储和检索的隐患问题,满足用户的使用要求,提高用户的使用体验。
其次参照附图描述根据本发明实施例提出的在建大坝混凝土实时测温海量数据的存储装置。参照图7所示,该装置100包括:生成模块10、第一检索模块20与存储请求模块30。
其中,生成模块10用于将数据打包为固定大小的多个数据块,并且根据多个数据块中每个数据块生成对应的数据块ID。第一检索模块20用于检索每个数据块对应的存储调度节点掌握的资源池,以调度最低代价的存储目的地。存储请求模块30用于根据最低代价的存储目的地发送存储请求以将每个数据块中数据存储至相应的存储位置,并更新存储位置映射表。
在本发明的一个实施例中,例如在水利施工现场中进行大坝混凝土实时测温时,即运用埋设在混凝土内的温度传感器通过现场总线组成网络,向温度采集服务器上报温度报文,这些内容包括节点号,温度值,变化率,采集时间等,由于采集的数据是零散的,不定长的,且随着采集仪厂家,型号不同而变化,因此本发明实施例在存储请求之前统一整理成固定大小的数据块,以方便检索,减少碎片化。
进一步地,在本发明的一个实施例中,生成模块10还用于:将每个数据块的属性、数据采集点ID、数据采集块时间段、大小、内容归一化为唯一标记,以生成对应的数据块ID。
具体地,在本发明的一个实施例中,参照图2所示,本发明实施例的多层架构可以分为四层:用户交互层L1、业务应用层L2、网络层L3和存储介质智能管理单元层L4。用户交互层L1、业务应用层L2、网络层L3和存储介质智能管理单元层L4通过合适的协议进行组网,共同完成目标计算,其采取“分而治之”的思想,即每个层相互独立,各层之间仅通过约定好的接口进行通讯和连接。具体地,在本发明的一个实施例中,本发明实施例从硬件上包括了各种计算机服务器和连接这些服务器的计算机网络,从软件上包括了各种特定目的的软件组件,硬件和软件共同作用可以用于在建大坝混凝土实时测温海量数据的高效分布存储和检索,其充分利用水利施工现场的计算机网络和服务器,并通过合适的协议进行组网,共同完成目标计算。本发明实施例充分利用水利施工现场的计算机网络和服务器,为海量测温数据提供分布存储和检索的高效和快速方法,其中,检索方法在下面进行详细赘述。
其中,用户交互层L1提供两方面的内容:一个是人机交互,提供GUI(Graphical UserInterface,简称GUI,又称图形用户接口)或者命令行两种方式供使用者使用;另外一个是机-机交互,提供API(Application Programming Interface,应用程序编程接口)的方式供服务需求方调用。用户交互层L1可以发起对两类服务:存储和检索的请求。业务应用层L2为上层提供服务,包含两个核心组件,一个是业务服务点,包含了存储和检索核心服务,另外还提供诸如运行日志,性能检测,测试及其他服务内容,另外一个是业务适配器,业务适配器动态维护最重要的一个数据表,存储位置映射表即数据块-存储地映射表。网络层L3为业务层提供通讯服务,包括智能路由和网络缓存。智能路由包含了一些规则定义,比如优选离客户物理位置近的存储地点,网络缓存单元可以将最近经常被调用的数据库存放在内存或者固态硬盘SSD(Solid State Drive,固态硬盘)中,从而存取快速,不用实际通过网络进行传送。存储介质智能管理单元层L4提供对实际物理存储介质的管理,由一个主控模块统一管理诸如光盘,HDD(Hard Disk Drive,硬盘驱动器),SDD等媒体介质。
具体地,在用户交互层L1发起存储服务时,首先利用数据块的属性,数据采集点ID,数据采集块时间段(开始时间,结束时间),大小,内容等归一化为唯一标记,即数据块ID。
在本发明的一个实施例中,其次利用当前数据块存储调度节点掌握的资源池,选取代价最低的存储目的地。需要说明的是,此处所指代价最低是指存储更高效的存储目的地。
在本发明的一个实施例中,网络层L3承担该数据块的有效传送工作,同时处理其中的发送失败,成功,重传情况。具体地,存储介质智能管理单元层L4接收网络层L3传来的存储请求,将具体数据块中数据根据资源配备发送到物理介质里,可能是HDD,也可能是SDD等,并且在存储任务成功之后,更新存储块-存储位置对应映射表即位置映射表,其中,核心信息存储块-存储位置对应映射表即位置映射表是动态维护的,其代价(存储,检索)信息是动态变化的。网络调度模块也定时发送保活心跳报文,用于维护各个网络节点失效状态,剔除一些已经损坏的存储节点。
进一步地,在本发明的一个实施例中,参照图8所示,上述存储装置100还包括:备份模块40。其中,备份模块40用于将数据块中每个数据在预设周期备份至第一预设存储位置。具体地,为了容错的目的,数据块存储是冗余的,不仅包含在本地的冗余备份,还要定期利用网络进行异地备份,异地备份优选在总部的机房里,即第一预设存储位置优选为总部的机房。本发明实施例充分利用现有低成本,大容量的存储设备,采用本地化分布式处理的方式实现一定冗余的存储系统,同时结合网络,实现了异地数据存储,以客户端/服务器的模式为在建大坝混凝土实时测温系统的海量数据提供高效存储和快速检索服务。
进一步地,在本发明的一个实施例中,参照图9所示,在此对检索方法进行赘述。其中,上述存储装置100还包括:获取模块50、第二检索模块60与检索请求模块70。
其中,获取模块50用于获取数据块ID。第二检索模块60用于根据数据块ID与检索映射表获取数据块的存储位置,并且检索数据块对应的存储调度节点掌握的资源池,以调度最低代价的存储目的地。检索请求模块70用于根据最低代价的存储目的地发送检索请求以根据存储位置调用数据块中数据。
在本发明的一个实施例中,首先利用数据块ID在数据库ID和存储位置匹配表里快速进行查找,以获取数据块的存储位置。
进一步地,在本发明的一个实施例中,在获取数据块的存储位置之后,利用当前数据块存储调度节点掌握的资源池,选取代价最低的存储目的地。
进一步地,在本发明的一个实施例中,网络层L3承担该数据块的有效传送工作,同时处理其中的发送失败,成功,重传情况。具体地,存储介质智能管理单元层L4接收网络层L3传来的检索请求,将具体数据从物理介质里发送到网络层L3,根据资源配备,这些物理介质可能是硬盘HDD,也可能是固态硬盘SDD等。
在本发明的一个实施例中,参照图9所示,上述存储装置100还包括:存储模块80。其中,存储模块80用于将调用次数超过预设次数的数据块存储至第二预设存储位置。具体地,网络层L3引入网络缓存单元装置可以将最近经常被调用的数据块存放在内存中,即第二预设存储位置优选为内存中。本发明实施例通过将经常被调用的数据块存放在内存中,从而存取速度快,不用实际通过网络进行传送,提高用户的使用体验。
在具体应用中,例如在水利施工现场应用中,本发明实施例可以实现对于在建大坝混凝土实时测温海量数据的高效存储和快速检索,结构简单,易于实现,并且解决了目前水利施工现场中关键业务数据的安全存储和检索的隐患问题,对于其他行业也有很好的借鉴意义。下面参照附图作进一步赘述。
在本发明的一个实施例中,参照图4所示,图4所示为一个典型的现场实施网络图,其可以分为三个区域:中心设备机房,客户端应用场合和异地存储系统。具体地,其包含了如下网元:中心设备机房包括:路由器与防火墙,用于连接各个服务器单元;数据存储调度服务器:此服务器单元维护数据块-目的地映射信息表即位置映射表,决定当前请求的数据库存放在哪个实际服务器上,以及该服务器还周期性的将本地的数据块通过网络发往异地进行存储;数据存储数据服务器:此服务器单元维护实际存储各个数据块,其中,为了维护方便,统一采用商用数据库系统;数据存储应用服务器:此服务器单元为上层提供服务,包括基于API调用的服务实体和WEB方式为人机交互的服务实体。
就现有技术而言,在企业大型多单元分布系统中,一般通过网络套接字(Socket)协议作为应用单元之间进行数据交换的通常方法,基本上采取的是自定义报文格式,无论是定长或者分隔符的,但是,由于这些自定义的信息格式缺乏统一标准,随意性大,通用性,灵活性不足,不能满足企业IT建设周期长,新技术层出不穷的现实情况的需求,随着近年来可扩展标记语言(Extensible Markup Language,XML)的普及,现有或者将来企业开发的系统都推荐应用标准的XML作为相应的应用的数据交换标准。
具体地,在本发明的一个实施例中,本发明实施例的存储API定义如下:
进一步地,在本发明的一个实施例中,本发明实施例的检索存储API定义如下:
下面详细阐述两个服务即存储与检索的流程。
在本发明的一个实施例中,参照图5所示,数据块存储流程包括以下步骤:
S501,服务请求开始。
S502,接收数据块,生成数据块ID。
在本发明的实施例中,利用数据块的属性,数据采集点ID,数据采集块时间段(开始时间,结束时间),大小,内容等归一化为唯一标记,以生成数据块ID。
S503,检索资源池,选取代价最低的存储目的地。
在本发明的实施例中,利用当前数据块存储调度节点掌握的资源池,选取代价最低的存储目的地。
S504,网络层L3传送到目的地。
S505,判断是否成功。如果是,则进入步骤S506;如果否,则返回步骤S503。
需要说明的是,执行步骤S505的同时执行步骤S507。
在本发明的实施例中,如果成功,则存储介质智能管理单元层L4接收网络层L3传来的存储请求,将具体数据发送到物理介质里,根据资源配备,可能是HDD,也可能是SDD等。
S506,更新映射表。
在本发明的实施例中,存储任务成功后,更新存储块-存储位置对应映射表即位置映射表。
S507,判断传送次数是否大于N。如果是,则进入步骤S508;如果否,则进入步骤S505。
在本发明的实施例中,网络层L3承担该数据块的有效传送工作,同时处理其中的发送失败,成功,重传情况。优选的,可以尝试N次,如果N次失败,报告调度模块,重新调度,同时更新映射表,增加代价值,即不优选。如果此次失败,转到重新调度。
S508,此次任务失败。
S509,本次任务结束。
进一步地,在本发明的一个实施例中,参照图6所示,数据块检索流程包括以下步骤:
S601,服务请求开始。
在本发明的实施例中,利用数据块ID,在数据库ID和存储位置匹配表里快速进行查找。
S602,检索资源池,选取代价最低的存储目的地。
在本发明的实施例中,利用当前数据块存储调度节点掌握的资源池数据,选取代价最低的存储源地即存储目的地。一般的,这些资源往往可以选用物理链路较短的节点。
S603,网络层L3传送请求到目的地。
S604,判断是否成功。如果是,则进入步骤S605;如果否,则返回步骤S602。
S605,获取数据。
在本发明的实施例中,存储介质智能管理单元层L4接收网络层L3传来的检索请求,将具体数据从物理介质里发送到网络层L3,根据资源配备,可能是HDD,也可能是SDD等。
S606,判断传送次数是否大于N。如果是,则进入步骤S607;如果否,则进入步骤S604。
在本发明的实施例中,网络层L3承担该数据块的有效传送工作,同时处理其中的发送失败,成功,重传情况。优选的,可以尝试N次,如果N次失败,报告调度模块,重新调度,同时更新映射表,增加代价值,即不优选。如果此次失败,则重新调度。
S607,此次任务失败,重新选取存储单元,返回步骤S602。
S608,本次任务结束。
本发明实施例所述可以应用于在建大坝混凝土实时测温海量数据的高效存储和快速检索方法和系统,可以有效的保证了水利施工现场信息化水平的进一步提升,实现了对于在建大坝混凝土实时测温海量数据的高效存储和快速检索,结构简单,易于实现,且解决了目前水利施工现场中关键业务数据的安全存储和检索的隐患问题。
根据本发明实施例提出的在建大坝混凝土实时测温海量数据的存储装置,通过将数据打包为固定大小的数据块,并且检索数据块对应的存储调度节点掌握的资源池,从而调度最低代价的存储目的地,实现根据最低代价的存储目的地发送存储请求以将数据进行存储的目的,以及将数据进行备份,充分利用现有低成本、大容量的存储设备,很好地实现一定冗余,精细度和安全性高,提高存储效率,满足用户的使用要求。另外,本发明实施通过根据数据块生成的数据块ID进行检索,速度快、效率高,且消除了数据的安全存储和检索的隐患问题,满足用户的使用要求,提高用户的使用体验。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,"计算机可读介质"可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本发明各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
上述提到的存储介质可以是只读存储器,磁盘或光盘等。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在不脱离本发明的原理和宗旨的情况下在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。
Claims (10)
1.一种在建大坝混凝土实时测温海量数据的存储方法,其特征在于,包括以下步骤:
将数据打包为固定大小的多个数据块,并且根据所述多个数据块中每个数据块生成对应的数据块身份识别号ID;
检索所述每个数据块对应的存储调度节点掌握的资源池,以调度最低代价的存储目的地;以及
根据所述最低代价的存储目的地发送存储请求以将所述每个数据块中数据存储至相应的存储位置,并更新存储位置映射表。
2.如权利要求1所述的在建大坝混凝土实时测温海量数据的存储方法,其特征在于,所述将数据打包为固定大小的多个数据块,并且根据所述多个数据块中每个数据块生成对应的数据块ID,进一步包括:
将所述每个数据块的属性、数据采集点ID、数据采集块时间段、大小、内容归一化为唯一标记,以生成所述对应的数据块ID。
3.如权利要求1所述的在建大坝混凝土实时测温海量数据的存储方法,其特征在于,还包括:将所述每个数据块中数据在预设周期备份至第一预设存储位置。
4.如权利要求1所述的在建大坝混凝土实时测温海量数据的存储方法,其特征在于,还包括:
获取数据块ID;
根据所述数据块ID与所述检索映射表获取所述数据块的存储位置;
检索所述数据块对应的存储调度节点掌握的资源池,以调度最低代价的存储目的地;以及
根据所述最低代价的存储目的地发送检索请求以根据所述存储位置调用所述数据块中数据。
5.如权利要求4所述的在建大坝混凝土实时测温海量数据的存储方法,其特征在于,还包括:将调用次数超过预设次数的数据块存储至第二预设存储位置。
6.一种在建大坝混凝土实时测温海量数据的存储装置,特征在于,包括:
生成模块,用于将数据打包为固定大小的多个数据块,并且根据所述多个数据块中每个数据块生成对应的数据块ID;
第一检索模块,用于检索所述每个数据块对应的存储调度节点掌握的资源池,以调度最低代价的存储目的地;以及
存储请求模块,用于根据所述最低代价的存储目的地发送存储请求以将所述每个数据块中数据存储至相应的存储位置,并更新存储位置映射表。
7.如权利要求6所述的在建大坝混凝土实时测温海量数据的存储装置,其特征在于,所述生成模块还用于:将所述每个数据块的属性、数据采集点ID、数据采集块时间段、大小、内容归一化为唯一标记,以生成所述对应的数据块ID。
8.如权利要求6所述的在建大坝混凝土实时测温海量数据的存储装置,其特征在于,还包括:
备份模块,用于将所述数据块中数据在预设周期备份至第一预设存储位置。
9.如权利要求6所述的在建大坝混凝土实时测温海量数据的存储装置,其特征在于,还包括:
获取模块,用于获取数据块ID;
第二检索模块,用于根据所述数据块ID与所述检索映射表获取所述数据块的存储位置,并且检索所述数据块对应的存储调度节点掌握的资源池,以调度最低代价的存储目的地;以及
检索请求模块,用于根据所述最低代价的存储目的地发送检索请求以根据所述存储位置调用所述数据块中数据。
10.如权利要求9所述的在建大坝混凝土实时测温海量数据的存储装置,其特征在于,还包括:
存储模块,用于将调用次数超过预设次数的数据块存储至第二预设存储位置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410466217.1A CN104268087A (zh) | 2014-09-12 | 2014-09-12 | 在建大坝混凝土实时测温海量数据的存储方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410466217.1A CN104268087A (zh) | 2014-09-12 | 2014-09-12 | 在建大坝混凝土实时测温海量数据的存储方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN104268087A true CN104268087A (zh) | 2015-01-07 |
Family
ID=52159610
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410466217.1A Pending CN104268087A (zh) | 2014-09-12 | 2014-09-12 | 在建大坝混凝土实时测温海量数据的存储方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104268087A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106294644A (zh) * | 2016-08-02 | 2017-01-04 | 山东鲁能软件技术有限公司 | 一种基于大数据技术的海量时序数据收集处理装置及方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101710901A (zh) * | 2009-10-22 | 2010-05-19 | 乐视网信息技术(北京)股份有限公司 | 一种具有p2p功能的分布式存储系统和方法 |
US20130325813A1 (en) * | 2012-05-30 | 2013-12-05 | Spectra Logic Corporation | System and method for archive in a distributed file system |
CN103473365A (zh) * | 2013-09-25 | 2013-12-25 | 北京奇虎科技有限公司 | 一种基于hdfs的文件存储方法、装置及分布式文件系统 |
-
2014
- 2014-09-12 CN CN201410466217.1A patent/CN104268087A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101710901A (zh) * | 2009-10-22 | 2010-05-19 | 乐视网信息技术(北京)股份有限公司 | 一种具有p2p功能的分布式存储系统和方法 |
US20130325813A1 (en) * | 2012-05-30 | 2013-12-05 | Spectra Logic Corporation | System and method for archive in a distributed file system |
CN103473365A (zh) * | 2013-09-25 | 2013-12-25 | 北京奇虎科技有限公司 | 一种基于hdfs的文件存储方法、装置及分布式文件系统 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106294644A (zh) * | 2016-08-02 | 2017-01-04 | 山东鲁能软件技术有限公司 | 一种基于大数据技术的海量时序数据收集处理装置及方法 |
CN106294644B (zh) * | 2016-08-02 | 2019-06-14 | 山东鲁能软件技术有限公司 | 一种基于大数据技术的海量时序数据收集处理装置及方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1959717B (zh) | 订单驱动的海量遥感数据集群化预处理系统及其方法 | |
CN105843182B (zh) | 一种基于oms的电力调度事故预案系统及方法 | |
CN106357426A (zh) | 一种基于工业云的大规模分布式智能数据采集系统及方法 | |
CN104283959B (zh) | 一种适用于云平台的基于性能分级的存储机制 | |
CN103581339A (zh) | 基于云计算的存储资源分配监控处理方法 | |
CN102609808A (zh) | 一种用于对数据中心进行能耗管理的方法与设备 | |
CN102763083B (zh) | 计算机系统及其更改方法 | |
CN108848132B (zh) | 一种基于云的配电调度主站系统 | |
CN103955510A (zh) | 基于etl云平台上传的海量电力营销数据整合方法 | |
CN102223651A (zh) | 一种协助基站自启动的方法及rnc/dhcp服务器 | |
CN102262758A (zh) | 基于cime文件的时空多维电网模型统一建模和管理方法 | |
CN104683164A (zh) | 简化的配置项关联模型生成监控拓扑图的方法 | |
CN107609987A (zh) | 一种面向设备主人的智能变电运维系统 | |
CN103595815A (zh) | 基于云计算的存储资源分配方法 | |
CN110377590A (zh) | 基于物联网的数据采集系统、方法及计算机可读存储介质 | |
CN103441861A (zh) | 一种数据记录生成方法及装置 | |
CN103399781A (zh) | 云服务器及其虚拟机管理方法 | |
CN102480489A (zh) | 一种用于分布式环境下的日志记录方法和设备 | |
CN104951889A (zh) | 用于数据中心的监控管理系统 | |
CN103581317B (zh) | 一种网络资源共享的方法 | |
CN103036952B (zh) | 一种企业级异构融合存储管理系统 | |
CN109284294A (zh) | 采集数据的方法及装置、存储介质、处理器 | |
CN106961440B (zh) | 基于企业级资源运行监控管理的云平台 | |
CN108415355A (zh) | 一种大数据的高效识别系统 | |
CN103226501B (zh) | 一种数据库的逻辑备份方法以及逻辑备份系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20150107 |