基于消息中间件的井场数据远程传输系统转让专利

申请号 : CN201010264573.7

文献号 : CN101976210B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 戴勇李香华吴大奎邢会民唐家琼罗利韩永刚张辉

申请人 : 中国石油集团川庆钻探工程有限公司

摘要 :

本发明公开了一种基于消息中间件的井场数据远程传输系统,涉及石油井场数据传输技术领域,包括井场实时数据采集模块、井场业务数据上报模块、井场端的消息中间件子节点、传输通道、基地端的消息中间件父节点和数据读写模块,井场实时数据采集模块和井场业务数据上报模块分别将采集到的井场实时数据和井场业务数据主动发送到所述井场端的消息中间件子节点,经消息中间件子节点处理后的数据包通过传输通道传输到基地端的消息中间件父节点,然后,经所述数据读写模块主动从消息中间件父节点中读取数据包,并存储到基地中心的实时数据库和业务关系数据库中。采用本发明,能更加稳定、及时、准确、可靠、安全的实现井场数据的远程传输。

权利要求 :

1.一种基于消息中间件的井场数据远程传输系统,其特征在于:该系统包括井场实时数据采集模块、井场业务数据上报模块、井场端的消息中间件子节点、传输通道、基地端的消息中间件父节点和数据读写模块,其中,井场实时数据采集模块和井场业务数据上报模块分别将采集到的井场实时数据和井场业务数据主动发送到所述井场端的消息中间件子节点,经消息中间件子节点处理后的数据包通过传输通道传输到基地端的消息中间件父节点,然后,经所述数据读写模块主动从消息中间件父节点中读取数据包,并存储到基地中心的实时数据库和业务关系数据库中;同时,井场业务数据沿着数据读写模块、基地端的消息中间件父节点、传输通道、井场端的消息中间件子节点和井场业务数据上报模块这样的顺序,从基地中心传输到井场方向;

所述井场实时数据采集模块,安装运行在井场端的工控机或单片机上,用于不同型号录井仪采集数据的实时捕获,将数据处理成统一标准格式,最后主动将捕获数据包发送到所述消息中间件子节点;

所述井场业务数据上报模块,安装运行在井场端的工控机上,用于日常井场业务数据的补录或迁移,然后主动将获得的数据包一块发送到所述消息中间件子节点;

所述井场端的消息中间件子节点,安装运行在井场端的工控机或单片机上,用于将人工录入或迁移导入的各类井场业务数据及实时采集的井场实时数据主动发送;井场端的消息中间件子节点包括系统设置模块、用于数据断点进行续传的断点续传模块、用于数据加密处理的数据加密模块、用于传输数据的数据传输模块和消息队列设置模块,所述系统设置模块包括IP地址设置模块、传输通道设置模块、缓冲池设置模块,分别实现井场端IP地址、传输通道和缓冲池大小的设置或选择,所述消息队列设置模块配置了3个消息队列:实时数据传输队列、业务数据传输队列和业务数据接收队列;

所述基地端的消息中间件父节点,安装运行在基地中心的服务器上,包括子节点管理模块、数据包设置模块、数据解密模块、消息队列设置模块;子节点管理模块负责消息中间件子节点的配置管理,数据包设置模块负责数据包大小、优先级的设置,数据解密模块负责数据包的解密功能;所述消息队列设置模块配置了3个消息队列:实时数据接收队列、业务数据接收队列、业务数据发送队列。

2.根据权利要求1所述的基于消息中间件的井场数据远程传输系统,其特征在于:所述传输通道是数据通信传输的通道,分有线和无线方式,其中有线方式为ADSL方式,无线方式包括GPRS、CDMA、3G或卫星通信方式。

3.根据权利要求1所述的基于消息中间件的井场数据远程传输系统,其特征在于:所述数据读写模块,采用服务程序的方式,用于录井实时数据和业务数据从消息中间件接受数据写库及读库,所述服务程序是指在系统后台运行的软件程序,服务程序有3类:实时数据写库服务、业务数据写库服务和实时数据读库服务。

4.根据权利要求3所述的基于消息中间件的井场数据远程传输系统,其特征在于:所述实时数据写库服务,用于基地端消息中间件父节点中的实时数据的接收,并写入到实时数据库对应的位置。

5.根据权利要求3所述的基于消息中间件的井场数据远程传输系统,其特征在于:

所述业务数据写库服务,用于基地端消息中间件父节点中的业务数据的接收,并写入到ORACLE数据库对应的表中。

6.根据权利要求3所述的基于消息中间件的井场数据远程传输系统,其特征在于:所述实时数据读库服务,用于实时数据库对应的位置数据读出,并将数据发布出去。

说明书 :

基于消息中间件的井场数据远程传输系统

技术领域

[0001] 本发明涉及石油井场数据传输技术领域,确切地说涉及一种基于消息中间件技术,能够确保大量实时数据稳定可靠、及时、安全的远程传输系统。

背景技术

[0002] 石油井场分布在野外,且较零散,环境恶劣,网络通信和交通条件较差。在石油钻井的过程中,有大量的宝贵数据产生,一种以录井数据为主的实时数据,另一种以井场业务相关的各类报表所需的非实时数据。石油钻井的地质预报和工程预报、地质分析、单井评价,区域评价等都依赖这两类数据,如果将它们实时远程传输到基地中心,那么基地端的各类专家和高性能的设备等优越条件将对井场各类问题诊断、解决方案制定、风险控制,以及科学研究都有很重要的作用。其中,实时数据的采集周期为1秒/次,采集参数100个左右,若300个井场同时传输数据,那么每天数据量为25GB左右,可见实时数据量为海量,而且要求数据准确可靠,数据不失真,因为在事故分析和预警报警时要求苛刻。关于非实时数据,其实时性要求低,每天传输数次,数据量较大,数据要求准确无误。
[0003] 目前,现有的井场数据远程传输通道有ADSL有线方式,以及GPRS、CDMA、3G、卫星通信等无线通道。现有的井场数据远程传输方式均采用这些通道自身的传输模式,未采用第三方软件确保数据传输的准确性、可靠性和安全性等。从而出现数据传输时断时续,接收的数据不完整、不准确,数据传输延时长等现象,因此这类传输方式很难满足基地中心对井场数据,特别是实时性数据的应用要求。
[0004] 消息中间件技术是将信息以消息的形式,从一个应用程序传送到另一个或多个应用程序的。主要功能是在应用程序之间提供可靠的消息传送,这些消息可以在不同的网络协议、不同的计算机系统和不同的应用软件之间传递;实现消息异步接受,类似手机短信的行为,消息发送者不需要等待消息接受者的响应,减少软件多系统集成的耦合度;实现消息可靠接收,确保消息在中间件可靠保存,只有接收方收到后才删除消息,多个消息也可以组成原子事务。其应用领域涉及金融、电信、交通、能源、电子政务等高端客户,也包括大量中小企业客户。
[0005] 在现有技术中,作者为“校景中、陈德栋、王忠仁、罗涛和蔡利平”,文献来源为“石油工业计算机应用”,出版日期为2003年3月的期刊文件中公开了一篇题名为“消息型中间件传输机制分析及在石油行业的应用”的期刊文件,该期刊文件内容涉及“中间件作为一种位于应用系统和操作系统之间的基础软件,为应用系统屏蔽系统平台的差异,并且为应用提供一致的API接口,从而使分布式应用具有很好的可移植性和可靠性。中间件在石油行业的应用也越来越广泛。本文详细阐述了TongLink/Q所提供的可靠消息传输机制。”[0006] 但上述期刊文件没有解决消息中间件技术应用到石油井场数据传输中存在的多种困难,例如如何建立井场端的消息中间件子节点,如何建立基地端的消息中间件父节点,以及如何利用该子节点和父节点来进行数据的传输等等,而采用现有的井场数据远程传输模式,数据传输的准确性、可靠性和安全性都无法得到有效保障,从而出现数据传输时断时续,接收的数据不完整、不准确,数据传输延时长等现象,因此现有传输方式很难满足基地中心对井场数据,特别是实时性数据的应用要求。

发明内容

[0007] 为解决上述技术问题,本发明提出了一种基于消息中间件的井场数据远程传输系统,采用本发明,能更加稳定、及时、准确、可靠、安全的实现井场数据的远程传输,将消息中间件技术运用到井场数据远程传输中,提高了井场数据远程传输的质量、效率和安全性,满足了基地中心对井场数据实时需要的要求。
[0008] 本发明是通过采用下述技术方案实现的:
[0009] 一种基于消息中间件的井场数据远程传输系统,其特征在于:包括井场实时数据采集模块、井场业务数据上报模块、井场端的消息中间件子节点、传输通道、基地端的消息中间件父节点和数据读写模块,其中,井场实时数据采集模块和井场业务数据上报模块分别将采集到的井场实时数据和井场业务数据主动发送到所述井场端的消息中间件子节点,经消息中间件子节点处理后的数据包通过传输通道传输到基地端的消息中间件父节点,然后,经所述数据读写模块主动从消息中间件父节点中读取数据包,并存储到基地中心的实时数据库和业务关系数据库中;同时,井场业务数据沿着数据读写模块、基地端的消息中间件父节点、传输通道、井场端的消息中间件子节点、井场实时数据采集模块或井场业务数据上报模块这样的顺序,从基地中心传输到井场方向。
[0010] 所述井场实时数据采集模块,安装运行在井场端的工控机或单片机上,用于不同型号录井仪采集数据的实时捕获,将数据处理成统一标准格式,最后主动将捕获数据包发送到所述消息中间件子节点。
[0011] 所述井场业务数据上报模块,安装运行在井场端的工控机上,用于日常井场业务数据的补录或迁移,然后主动将获得的数据包一块发送到所述消息中间件子节点。
[0012] 所述井场端的消息中间件子节点,安装运行在井场端的工控机或单片机上,用于将人工录入或迁移导入的各类井场业务数据及实时采集的井场实时数据主动发送,包括系统设置模块、用于数据断点进行续传的断点续传模块、用于数据加密处理的数据加密模块、用于传输数据的数据传输模块和消息队列设置模块,所述系统设置模块包括IP地址设置模块、传输通道设置模块、缓冲池设置模块,分别实现井场端IP地址、传输通道和缓冲池大小的设置或选择,所述消息队列设置模块配置了3个消息队列:实时数据传输队列、业务数据传输队列和业务数据接收队列。
[0013] 所述井场业务数据括结构化数据和以文档、图片为主的非结构化数据。
[0014] 所述传输通道是数据通信传输的通道,分有线和无线方式,其中有线方式为ADSL方式,无线方式包括GPRS、CDMA、3G或卫星通信方式。
[0015] 所述基地端的消息中间件父节点,安装运行在基地中心的服务器上,包括子节点管理模块、数据包设置模块、数据解密模块、消息队列设置模块;子节点管理模块负责消息中间件子节点的配置管理,数据包设置模块负责数据包大小、优先级的设置,数据解密模块负责数据包的解密功能;所述消息队列设置模块配置了3个消息队列:实时数据接收队列、业务数据接收队列、业务数据发送队列。
[0016] 所述数据读写模块,采用服务程序的方式,用于录井实时数据和业务数据从消息中间件接受数据写库及读库,所述服务程序是指在系统后台运行的软件程序,服务程序有3类:实时数据写库服务、业务数据写库服务和实时数据读库服务。
[0017] 所述实时数据写库服务,用于基地端消息中间件父节点中的实时数据的接收,并写入到实时数据库对应的位置。
[0018] 所述业务数据写库服务,用于基地端消息中间件父节点中的业务数据的接收,并写入到ORACLE数据库对应的表中。
[0019] 所述实时数据读库服务,用于实时数据库对应的位置数据读出,并将数据发布出去供其它软件接口使用。
[0020] 本发明的有益效果表现在:
[0021] 1、与现有技术相比,本发明采用“井场实时数据采集模块和井场业务数据上报模块分别将采集到的井场实时数据和井场业务数据主动发送到所述井场端的消息中间件子节点,经消息中间件子节点处理后的数据包通过传输通道传输到基地端的消息中间件父节点,然后,经所述数据读写模块主动从消息中间件父节点中读取数据包,并存储到基地中心的实时数据库和业务关系数据库中”这样的技术方案,可为海量的井场实时数据和业务数据提供更加稳定、及时、准确、可靠、安全的远程传输功能,将消息中间件技术运用到井场数据远程传输中,提高了井场数据远程传输的质量、效率和安全性,满足了基地中心对井场数据实时需要的要求。
[0022] 2、同时,井场业务数据沿着数据读写模块、基地端的消息中间件父节点、传输通道、井场端的消息中间件子节点、井场实时数据采集模块或井场业务数据上报模块这样的顺序,从基地中心传输到井场方向,从而实现了井场端与基地中心的双向数据可靠、稳定、及时、安全的传输。
[0023] 3、消息中间件子节点包括用于数据断点进行续传的断点续传模块,从而具有断点续传的功能,能够满足基地中心对井场实时数据和井场业务数据的多方位需求。
[0024] 4、采用本发明中所述的井场端的消息中间件子节点和与其匹配设置的基地端的消息中间件父节点,能更加稳定、及时、准确、可靠、安全的实现井场数据的远程传输,将消息中间件技术运用到井场数据远程传输中,提高了井场数据远程传输的质量、效率和安全性,满足了基地中心对井场数据实时需要的要求。

附图说明

[0025] 下面将结合说明书附图和具体实施方式对本发明作进一步的详细说明,其中:
[0026] 图1为本发明的系统逻辑构成图
[0027] 图2为本发明的系统流程图

具体实施方式

[0028] 实施例1
[0029] 如图1所示,本发明由井场实时数据采集模块、井场业务数据上报模块、井场端的消息中间件子节点、传输通道、基地端的消息中间件父节点、数据读写模块6部分组成。井场实时数据采集模块单向连接消息中间件子节点,井场业务数据上报模块双向连接消息中间件子节点,传输通道双向连接消息中间件子节点和父节点,实现数据通信,最后数据读写模块双向连接消息中间件父节点。
[0030] 实施例2
[0031] 如图2所示,井场实时数据采集模块和井场业务数据上报模块分别将采集的到井场实时数据和井场业务数据主动发送到井场端的消息中间件子节点,然后将数据包通过传输通道传输到基地端的消息中间件父节点,如果传输通道正常,实现数据传输,若不正常,将待传输的数据在本地缓存,待传输通道正常后断点续传,消息中间件父节点接收数据,数据读写模块主动从消息中间件父节点中读取数据包,然后经过处理存储到实时数据库和业务关系数据库中;同时也可实现将数据从基地中心传输到井场方向的数据传输,从而实现井场端与基地中心的双向数据可靠、稳定、及时、安全的传输。
[0032] 实施例3
[0033] 参照说明书附图1和2,本发明一最佳实施方式:包括井场实时数据采集模块、井场业务数据上报模块、井场端的消息中间件子节点、传输通道、基地端的消息中间件父节点、数据读写模块,共计6部分组成。井场实时数据采集模块和井场业务数据上报模块分别将采集到的井场实时数据和井场业务数据主动发送到井场端的消息中间件子节点,然后将数据包通过传输通道传输到基地端的消息中间件父节点,数据读写模块主动从消息中间件父节点中读取数据包,然后经过处理存储到实时数据库和业务关系数据库中;同时也可实现将井场业务数据从基地中心传输到井场方向的远程数据传输,从而实现井场端与基地中心的双向数据可靠、稳定、及时、安全的传输。所述井场实时数据采集模块,安装运行在井场端的工控机或单片机上,实现不同型号录井仪采集数据的实时捕获,将数据处理成统一标准格式,最后主动将捕获数据包发送到消息中间件子节点。所述井场业务数据上报模块,安装运行在井场端的工控机上,实现将日常井场业务数据补录或迁移到本程序中,然后主动将获得的数据包一块发送到消息中间件子节点。所述井场端的消息中间件子节点,安装运行在井场端的工控机或单片机上,实现将人工录入或迁移导入的各类井场业务数据及实时采集的井场实时数据主动发送到消息中间件子节点,其中井场业务数据括结构化数据和以文档、图片为主的非结构化数据。其特征在于:包括系统设置模块、断点续传模块、数据加密模块、数据传输模块、消息队列设置模块。其中系统设置模块包括IP地址设置模块、传输通道设置模块、缓冲池设置模块,分别实现井场端IP地址、传输通道和缓冲池大小的设置或选择;配置3个消息队列:实时数据传输队列、业务数据传输队列、业务数据接收队列。所述传输通道是数据通信传输的通道,分有线和无线方式,其中有线方式为ADSL等方式,网络较稳定,但录井井场大多在野外,很难采用有线方式;无线方式包括GPRS、CDMA、3G、卫星通信等无线通道,但由于通信基站不一定覆盖井场所在区域,一般情况下选用卫星通道能够满足通信需求,需要添加卫星信息接收设备,通信费用较高。所述基地端的消息中间件父节点,安装运行在基地中心的服务器上,包括配置模块、子节点管理模块、数据包设置模块、数据解密模块、消息队列设置模块。配置3个消息队列:实时数据接收队列、业务数据接收队列、业务数据发送队列。所述数据读写模块,采用服务的方式,实现录井实时和业务数据从消息中间件接受数据写库及读库功能。服务是指在系统后台运行的软件程序,无用户界面,不需用户干预。为此编写的服务程序有3类:实时数据写库服务、业务数据写库服务、实时数据读库服务。实时数据写库服务,实现将基地端消息中间件父节点中的实时数据接受下来,并写入到实时数据库对应的位置;业务数据写库服务,实现将基地端消息中间件父节点中的业务数据接受下来,并写入到ORACLE数据库对应的表中,ORACLE数据库为现有关系数据库技术,实现结构化数据的存储和管理功能;实时数据读库服务,实现将实时数据库对应的位置数据读出,并将其发布出去供其它软件接口使用。