CN111552737B - 一种基于zookeeper的多源数据广域访问系统及方法 - Google Patents
一种基于zookeeper的多源数据广域访问系统及方法 Download PDFInfo
- Publication number
- CN111552737B CN111552737B CN202010293157.3A CN202010293157A CN111552737B CN 111552737 B CN111552737 B CN 111552737B CN 202010293157 A CN202010293157 A CN 202010293157A CN 111552737 B CN111552737 B CN 111552737B
- Authority
- CN
- China
- Prior art keywords
- data
- service
- query
- model
- database
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/242—Query formulation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
-
- 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/50—Network services
- H04L67/51—Discovery or management thereof, e.g. service location protocol [SLP] or web services
-
- 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/50—Network services
- H04L67/56—Provisioning of proxy services
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种基于zookeeper的多源数据广域访问系统及方法,广域网络内,各数据源端是分布式数据库的子节点,同时也是分布式数据查询服务的提供方;子节点内数据库服务器,应用服务器,总线服务器,入口代理服务器协调运行对外提供完整的数据查询服务;数据调用客户端由第二应用服务器和出口代理服务器组成。本发明避免了在传统服务部署后,单一的查询服务故障时,所有数据都无法查询的情况,缩小故障的影响范围,具有良好的应用前景。
Description
技术领域
本发明涉及一种基于ZooKeeper的多源数据广域访问系统及方法,属于电力调度自动化技术领域。
背景技术
在泛在互联背景下,各类电力资源大数据整合汇集,传统的单节点存储系统无法接入电网内所有细节设备的运行状态及模型数据。一些非直接调度的设备运行数据信息无需统一存储,数据的分布式存储势在必行,而当设备的运行信息存放在设备所属调度机构的数据库中时,上层调度机构无法直接浏览数据,不能对全网运行情况有整体的把控。
除此之外,传统的单节点服务,在服务宕机之后,就无法浏览全部的数据信息,这样影响的将是全网范围内的调度控制。
发明内容
目的:为了缓解集中式数据存储带来的服务器压力,实现数据分布式存储与远程调阅,本发明提供一种基于ZooKeeper的多源数据广域访问系统及方法,缓解上层调度机构服务器的存储压力,缩小单节点数据查询服务故障的影响范围。在服务网络范围内,搭建分布式服务总线并注册发布各自的数据查询服务。在客户端查询数据时,根据被查询数据所属单位进行服务寻址,服务通过出口代理服务进行服务及请求数据进行出口代理,对端入口代理服务接收数据查询请求,进行数据的查询反馈,实现大数据背景下,数据的分布式存储与查询,具有良好的应用前景。
技术方案:为解决上述技术问题,本发明采用的技术方案为:
一种基于ZooKeeper的多源数据访问方法,包括以下步骤:
步骤1,在广域网络内,各数据源端作为分布式数据库子节点。
步骤2,数据源端定义数据模型,根据数据模型属性生成唯一ID,各数据源端以统一的表结构存储数据模型。
步骤3,数据源端以数据模型某一时刻的运行状态为条件,以统一的表结构存储数据模型的运行数据表。
步骤4,订阅需要查询的数据模型记录,接收查询条件并根据查询条件,以SELECT语句在数据源端中获取结果集。
步骤5,使用服务总线对查询服务进行管理。
步骤6,通过代理服务定位数据模型所在区域,从该区域服务总线获取查询服务,转发查询条件。
步骤7,运行数据源端查询服务,获取查询结果。
作为优选方案,所述分布式数据库服务由达梦数据库,kingbase数据库,informix数据库提供。
作为优选方案,表结构的各字段对应数据模型的各个特征,包括模型ID,模型名称,所属区域。
作为优选方案,运行数据表的主键为查询条件,其他字段为可查询数据,其中查询条件包括模型ID,数据时间,数据类型。
作为优选方案,所述步骤4具体包括如下步骤:
第一步:将数据源端所有数据模型记录导出离线文件提供给数据查询方,或者以http页面的形式给数据查询方动态展示数模型记录。
第二步:数据查询方订阅需要查询运行数据的数据模型。
第三步:根据时间,模型ID,数据类型属性生成查询条件。
作为优选方案,SELECT功能由阿里druid数据库连接池提供,服务总线由ZooKeeper提供,代理服务基于DUBBO服务ReferenceConfig.get()客户端接口进行实现。
一种基于zookeeper的多源数据广域访问系统,包括如下模块:广域网络内,各数据源端是分布式数据库的子节点,同时也是分布式数据查询服务的提供方;子节点内数据库服务器,应用服务器,总线服务器,入口代理服务器协调运行对外提供完整的数据查询服务;数据调用客户端由第二应用服务器和出口代理服务器组成。
作为优选方案,所述数据库服务器用于存储数据源端的数据模型信息,并以数据模型某一时刻的运行状态为条件存储运行数据表;所述应用服务器用于提供数据查询服务;所述总线服务器用于基于ZooKeeper服务端,实现对查询服务的注册管理;所述入口代理服务器用于接收客户端代理转发的查询请求,过滤非法查询信息,并在总线服务中定位和调用数据查询服务,提交数据查询请求,返回数据查询结果。
作为优选方案,所述第二应用服务器用于根据用户需求生成对特定模型数据查询请求,并将模型属性信息转发给出口代理服务;所述出口代理服务,根据区域和IP的映射关系对入口代理寻址,对入口代理服务进行echo回声测试,确认代理服务状态,转发查询请求。
有益效果:本发明提供的一种基于ZooKeeper的多源数据广域访问系统及方法,在大数据背景下,传统的单节点存储系统无法接入电网内各类细节设备的运行状态及设备信息数据,一些非直接调度的设备运行数据信息无需统一存储,存放在设备所属调度机构的数据库中,但相应的数据存储方也需要提供数据查询服务供上级调度机构进行数据查询,这样的分布式数据存储和查询服务减轻了上级节点数据存储的压力,也避免了在传统服务部署后,单一的查询服务故障时,所有数据都无法查询的情况,缩小故障的影响范围,具有良好的应用前景。
附图说明
图1是本发明的服务调用过程流程图。
图2是本发明的服务部署流程示意图。
图3是本发明的多源数据广域访问系统的拓扑示意图。
具体实施方式
下面结合附图对本发明作更进一步的说明。
本发明的一种基于ZooKeeper的多源数据访问方法,通过部署全电网范围内的分布式服务总线发布各区域数据查询服务,并安装出口和入口代理实现各调度机构之间数据的订阅查询,服务的安装部署历程如图1、2所示,具体包括以下步骤,
步骤101,在有数据查询需求的区域之间组建广域网络,并在各区域搭建相互通信的网络的ZooKeeper服务器,区域之间的网络通过ZooKeeper服务器的服务端口相互访问;区域内部署服务总线,服务总线接口是对ZooKeeper客户端的zkClient连接、服务注册及服务定位的相关接口的封装,用以提供服务的初始化(init),注册(registerService)以及定位(locateService)功能。
步骤102,服务调用方部署内部数据查询服务及出口代理服务。
步骤1021,调用方部署对druid数据库连接池接口和jdbcTmplate数据库处理接口进行封装的本地数据查询服务,支持高并发情况下特定数据的查询服务。
步骤1022,制定发布服务统一服务标识(Universal Service Identifier,USI)用以出口代理进行代理寻址,服务名称的统一管理标识采用路径变量来表达服务层次结构,具体格式如下:{Region}.{Compent}.{Version}.{Vendor}.{Service},依次具体含义表示区域(Region)名称、组件名称(Compent)、服务版本(Version)、厂商(Vendor)名称、服务(Service)名称,用以上区域等条件约束的服务名称信息将具有唯一性和可维护性,同时根据上述统一标识中的区域信息在数据库中创建数据源与区域映射表(datasource_usi_map),并在服务调用方出口代理服务上配置区域与服务提供方入口代理所在IP的对应关系。
步骤1023,调用方进行广域服务注册,对步骤1021中基础数据查询服务的封装,在支持查询功能的基础上,添加广域服务调用开关,同时使用步骤101中总线服务本地服务的注册(registerService)接口在ZooKeeper服务注册管理中心进行注册,同时本地查询服务根据数据源与区域映射表(datasource_usi_map)映射关系,将查询数据的数据源信息转为区域信息提交给步骤1024中的出口代理服务,同时还将提交数据查询请求和远程调用的查询服务接口信息。
步骤1024,调用方需要部署出口代理服务,代理服务对外提供数据提交接口,获取客户端需要的接口名称信息,接口服务所在区域(Region)信息和数据查询请求内容。
步骤1025,上述出口代理解析传入区域(Region)信息根据区域和IP的映射关系获取服务提供方的入口代理所在网络信息。
步骤1026,出口代理服务根据网络端口信息,使用DUBBO的回声(echo)测试接口,测试服务提供方入口代理服务的连通性,在测试通过后,将网络信息和接口信息组装成url,以DUBBO服务ReferenceConfig.get()客户端接口进行入口代理的调用,并转发需调用服务的统一管理标识信息(USI)和数据查询请求内容。
步骤103,服务提供方部署内部查询服务和入口代理服务。
步骤1031,在服务提供方部署入口代理服务,入口代理服务接收调用方出口代理转发的调用查询接口信息和数据查询请求信息。
步骤1032,入口代理对调用方出口代理传入的接口进行白名单过滤,判断该客户端是否有调用本地服务的权限。
步骤1033,在步骤1032中确认访问IP拥有调用服务权限后,以步骤101总线服务的服务定位(locateService)功能在提供方ZooKeeper服务总线上进行服务定位和调用,并提交出口服务同时转发过来的数据查询请求,完成对所属数据源数据的查询。
步骤1034,与步骤1023进行同样的广域服务注册。
步骤1035,部署与步骤1021同版本的本地数据查询服务。
下面根据本发明的方法,结合服务调用的整体流程介绍一具体实施例,某两个区域之间的数据查询服务架构,实例如图3所示。
一种基于ZooKeeper的多源数据访问系统,包括如下模块:
广域网络内,各数据源端是分布式数据库的子节点,同时也是分布式数据查询服务的提供方。子节点内数据库服务器,应用服务器,总线服务器,入口代理服务器协调运行对外提供完整的数据查询服务。
其中数据库服务器,存储源端模型信息,并以模型某一时刻的运行状态为条件存储运行数据。
应用服务器,提供数据查询服务。
总线服务器,基于ZooKeeper服务端,实现对查询服务的注册管理。
入口代理服务器,接收客户端代理转发的查询请求,过滤非法查询信息,并在总线服务中定位和调用数据查询服务,提交数据查询请求,返回数据查询结果。
数据调用客户端由第二应用服务器和出口代理服务器组成。
其中第二应用服务器,根据用户需求生成对特定模型数据查询请求,并将模型属性信息转发给出口代理服务。
出口代理服务,根据区域和IP的映射关系对入口代理寻址,对入口代理服务进行echo回声测试,确认代理服务状态,转发查询请求。
以上所述仅是本发明的优选实施方式,应当指出:对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (6)
1.一种基于zookeeper的多源数据广域访问系统的访问方法,其特征在于:所述多源数据广域访问系统,包括如下模块:广域网络内,各数据源端是分布式数据库的子节点,同时也是分布式数据查询服务的提供方;子节点内数据库服务器,应用服务器,总线服务器,入口代理服务器协调运行对外提供完整的数据查询服务;数据调用客户端由第二应用服务器和出口代理服务器组成;
所述多源数据广域访问系统的访问方法,包括如下步骤:
步骤1,在广域网络内,各数据源端作为分布式数据库子节点;
步骤2,数据源端定义数据模型,根据数据模型属性生成唯一ID,各数据源端以统一的表结构存储数据模型;
步骤3,数据源端以数据模型某一时刻的运行状态为条件,以统一的表结构存储数据模型的运行数据表;
步骤4,订阅需要查询的数据模型记录,接收查询条件并根据查询条件,以SELECT语句在数据源端数据库中获取结果集;
步骤5,使用服务总线对查询服务进行管理;
步骤6,通过代理服务定位数据模型所在区域,从该区域服务总线获取查询服务,转发查询条件;
步骤7,运行数据源端查询服务,获取查询结果。
2.根据权利要求1所述的访问方法,其特征在于:所述分布式数据库服务由达梦数据库,kingbase数据库,informix数据库提供。
3.根据权利要求1所述的访问方法,其特征在于:所述表结构的各字段对应数据模型的各个特征,包括模型ID,模型名称,所属区域。
4.根据权利要求1所述的访问方法,其特征在于:所述运行数据表的主键为查询条件,其他字段为可查询数据,其中查询条件包括模型ID,数据时间,数据类型。
5.根据权利要求1所述的访问方法,其特征在于:所述步骤4具体包括如下步骤:
第一步:将数据源端所有数据模型记录导出离线文件提供给数据查询方,或者以http页面的形式给数据查询方动态展示数模型记录;
第二步:数据查询方订阅需要查询运行数据的数据模型;
第三步:根据时间,模型ID,数据类型属性生成查询条件。
6.根据权利要求1所述的访问方法,其特征在于:所述SELECT功能由阿里druid数据库连接池提供,服务总线由ZooKeeper提供,代理服务基于DUBBO服务ReferenceConfig.get()客户端接口进行实现。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010293157.3A CN111552737B (zh) | 2020-04-15 | 2020-04-15 | 一种基于zookeeper的多源数据广域访问系统及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010293157.3A CN111552737B (zh) | 2020-04-15 | 2020-04-15 | 一种基于zookeeper的多源数据广域访问系统及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111552737A CN111552737A (zh) | 2020-08-18 |
CN111552737B true CN111552737B (zh) | 2022-11-04 |
Family
ID=72002951
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010293157.3A Active CN111552737B (zh) | 2020-04-15 | 2020-04-15 | 一种基于zookeeper的多源数据广域访问系统及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111552737B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113590213B (zh) * | 2021-06-24 | 2023-04-25 | 深圳开源互联网安全技术有限公司 | 组件维护方法、电子设备及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106027665A (zh) * | 2016-06-29 | 2016-10-12 | 国家电网公司 | 一种基于调度数据网的广域信息传输系统 |
CN106792825A (zh) * | 2016-12-29 | 2017-05-31 | 河北远东通信系统工程有限公司 | 一种分布式网络设备的管理方法 |
CN110309334A (zh) * | 2018-04-20 | 2019-10-08 | 腾讯科技(深圳)有限公司 | 图数据库的查询方法、系统、计算机设备和可读存储介质 |
-
2020
- 2020-04-15 CN CN202010293157.3A patent/CN111552737B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106027665A (zh) * | 2016-06-29 | 2016-10-12 | 国家电网公司 | 一种基于调度数据网的广域信息传输系统 |
CN106792825A (zh) * | 2016-12-29 | 2017-05-31 | 河北远东通信系统工程有限公司 | 一种分布式网络设备的管理方法 |
CN110309334A (zh) * | 2018-04-20 | 2019-10-08 | 腾讯科技(深圳)有限公司 | 图数据库的查询方法、系统、计算机设备和可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111552737A (zh) | 2020-08-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108234670B (zh) | 一种基于zookeeper和netty的分布式远程调用方法 | |
US5579384A (en) | Telecommunications network service central management system interfacing with protocol specific regional stations providing services to subscribers | |
US20020032769A1 (en) | Network management method and system | |
US20030033379A1 (en) | Intelligent central directory for soft configuration of IP services | |
CN101232626B (zh) | 一种基于企业业务开发平台的业务支撑系统和方法 | |
US20030036917A1 (en) | Service provision system and method | |
JP2000516406A (ja) | 遠隔通信サービス提供方法 | |
US20010047383A1 (en) | System and method for on-demand communications with legacy networked devices | |
AU2003237737B2 (en) | Management system and method for service subscription provisioning | |
JP4187785B2 (ja) | データ記憶装置 | |
JP2004194330A (ja) | 通信ネットワーク上の目標エンティティへのアクセス方法 | |
US20050125457A1 (en) | Integrated element management system for end-to-end network management in next generation network, and network management method thereof | |
US6631406B1 (en) | Common management information base (MIB) | |
US7191232B2 (en) | Extendable provisioning mechanism for a service gateway | |
CN110209719A (zh) | 一种基于微服务架构的多种数据库统一访问系统及方法 | |
CN102325186A (zh) | 远程服务调用方法及系统 | |
KR100601023B1 (ko) | 통합 통신 서버 및 방법 | |
CN111552737B (zh) | 一种基于zookeeper的多源数据广域访问系统及方法 | |
Leppinen et al. | Java-and CORBA-based network management | |
US7693972B2 (en) | Directory service in an automation system | |
CN116708266A (zh) | 一种云服务拓扑图实时更新方法、装置、设备及介质 | |
CN100466554C (zh) | 通信适配层系统及获取网元信息的方法 | |
US20020069257A1 (en) | Provisioning mechanism for a service gateway | |
KR100281554B1 (ko) | 전기통신관리망 관리대행자와 통합서비스/망 관리시스템과의 연동을 위한 게이트웨이 시스템 및 연동방법 | |
CN103684904A (zh) | 基于ip三网融合网络监控系统 |
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 |