CN114398334A - 基于ZNBase集群的Prometheus远程存储方法及系统 - Google Patents
基于ZNBase集群的Prometheus远程存储方法及系统 Download PDFInfo
- Publication number
- CN114398334A CN114398334A CN202210019993.1A CN202210019993A CN114398334A CN 114398334 A CN114398334 A CN 114398334A CN 202210019993 A CN202210019993 A CN 202210019993A CN 114398334 A CN114398334 A CN 114398334A
- Authority
- CN
- China
- Prior art keywords
- znbase
- prometheus
- cluster
- remote
- data
- 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
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/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
- 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/22—Indexing; Data structures therefor; Storage structures
- G06F16/2282—Tablespace storage structures; Management thereof
-
- 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
- G06F16/2433—Query languages
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Software Systems (AREA)
- Mathematical Physics (AREA)
- Computational Linguistics (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Computation (AREA)
- Medical Informatics (AREA)
- Computing Systems (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明公开了基于ZNBase集群的Prometheus远程存储方法及系统,属于运维监控相关技术领域,本发明要解决的技术问题为Prometheus本地存储空间有限无法大量持久化数据,采用的技术方案为:该方法是在Prometheus和ZNBase集群之间部署并运行单体服务适配器;具体如下:对接Prometheus:单体服务适配器对接Prometheus,实现Prometheus的远程写请求和远程读请求;对接ZNBase集群:单体服务适配器对接ZNBase集群,使用JDBC驱动进行连接;远程写请求数据存储:单体服务适配器解析Prometheus远程写请求内容,将解析后的数据按照指定格式存储到ZNBase集群中;远程读请求数据获取:单体服务适配器解析Prometheus远程读请求内容,按照要求的查询、统计及聚合请求,从ZNBase集群中查询出数据,以指定格式返回给Prometheus。
Description
技术领域
本发明涉及运维监控相关技术领域,具体地说是一种基于ZNBase集群的Prometheus远程存储方法及系统。
背景技术
Prometheus是一个开源的监控框架,它通过不同的组件完成数据的采集、数据的存储以及告警。其中Prometheus server只提供了数据存储(time series data)及数据的处理(提供了丰富的查询语法[查询,统计,聚合等等]),数据则通过众多的插件(prometheus称之为exporters)来暴露一个http服务的接口给Prometheus定时抓取,告警则通过AlterManger发送告警数据。Prometheus本身只支持本地存储,可通过配置远程存储的API来进行远端的存储,但是官方并没有提供远程存储方案,目前社区已经实现的远程存储方案如下:
·AppOptics:write
·Chronix:write
·Cortex:read and write
·CrateDB:read and write
·Elasticsearch:write
·Gnocchi:write
·Graphite:write
·InfluxDB:read and write
·OpenTSDB:write
·PostgreSQL/TimescaleDB:read and write
·SignalFx:write
·clickhouse:read and write
由此可见,社区提供的远程存储或者是个系统,或者是非关系型数据库。
ZNBase分布式数据库是一款具有银行基因的金融级分布式数据库,提供传统关系型数据库OLTP的所有特性,并且改变了传统数据库集中存储的限制,采用分布式架构、无共享存储,从而实现了从计算层、存储层的可扩展性。ZNBase分布式数据库可以多地多机房部署,可跨域全球多个区域,多个数据中心之间进行数据分发复制,并可以根据地理分区定制数据放置策略、容灾备份。每个数据节点都可对外提供服务,并提供数据的就近访问。当一个数据中心发生异常时,数据会由其他数据中心自动恢复,并接管数据访问,从而保障系统的高可靠性。数据中心间进行数据实时同步,并在接管时保证数据的全局一致性。ZNBase提供兼容PostgreSQL协议访问,具备分布式事务、高性能、强一致高可用、线性扩容和弹性伸缩、企业级安全等特性,能够同时提供智能运维、自动化运营、监控告警等配套设施。ZNBase既支持分布式ACID事务,具备高并发、高可用、弹性伸缩特性,并可同时处理交易类业务和分析类业务。
因此,Prometheus采集的被监控系统的数据,作为衡量系统状况的重要指标,进行长期的持久化存储,并且运用于数据分析、机器学习及问题预测是很有必要的。
故如何解决Prometheus本地存储空间有限无法大量持久化数据是目前亟待解决的技术问题。
发明内容
本发明的技术任务是提供一种基于ZNBase集群的Prometheus远程存储方法及系统,来解决Prometheus本地存储空间有限无法大量持久化数据的问题。
本发明的技术任务是按以下方式实现的,一种基于ZNBase集群的Prometheus远程存储方法,该方法是在Prometheus和ZNBase集群之间部署并运行单体服务适配器(Adaptor);具体如下:
对接Prometheus:单体服务适配器(Adaptor)对接Prometheus,实现Prometheus的远程写请求(Write API)和远程读请求(Read API);
对接ZNBase集群:单体服务适配器对接ZNBase集群,使用JDBC驱动进行连接;
远程写请求数据存储:单体服务适配器解析Prometheus远程写请求内容,将解析后的数据按照指定格式存储到ZNBase集群中;
远程读请求数据获取:单体服务适配器解析Prometheus远程读请求内容,按照要求的查询、统计及聚合请求,从ZNBase集群中查询出数据,以指定格式返回给Prometheus。
作为优选,远程写请求数据存储具体如下:
在Prometheus的配置中设定远程读写接口为该单体服务适配器;
单体服务适配器接收Prometheus发送过来的写请求;
单体服务适配器对写请求内容进行API解析;
单体服务适配器生成插入数据sql语句;
通过JDBC驱动将指标数据写入ZNBase集群中;
更优地,远程读请求数据获取具体如下:
在Prometheus的配置中设定远程读写接口为该单体服务适配器;
单体服务适配器接收Prometheus发送过来的读请求
单体服务适配器对请求内容进行API解析;
根据读请求内容的查询统计及聚合命令生成对应的查询sql语句;
完成从ZNBase集群的获取数据操作,并按照接口要求的数据格式进行返回。
更优地,所述单体服务适配器定义的参数包括ZNBase集群的地址、用户名及密码。
更优地,所述ZNBase集群采用ZNBase数据存储表存储数据,ZNBase数据存储表的名称为被监控的指标名称。
一种基于ZNBase集群的Prometheus远程存储系统,该系统包括,
单体服务适配器,用于对接Prometheus,实现Prometheus的远程写请求和远程读请求以及对接ZNBase集群,使用JDBC驱动进行连接;
Prometheus,用于发送远程写请求和远程读请求到ZNBase集群;
ZNBase集群,用于存储解析后的Prometheus的远程写请求数据以及返回根据Prometheus的读请求内容查询出的数据到Prometheus。
作为优选,该系统还包括,
生成模块一,用于根据远程写请求内容生成插入ZNBase的sql语句;
生成模块二,用于根据请求读内容生成查询sql语句;
存储模块,用于使用ZNBase集群进行Prometheus远程存储。
更优地,所述单体服务适配器定义的参数包括ZNBase集群的地址、用户名及密码;
所述ZNBase集群采用ZNBase数据存储表存储数据,ZNBase数据存储表的名称为被监控的指标名称。
一种电子设备,包括:存储器和至少一个处理器;
其中,所述存储器上存储有计算机程序;
所述至少一个处理器执行所述存储器存储的计算机程序,使得所述至少一个处理器执行如上述的基于ZNBase集群的Prometheus远程存储方法。
一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序,所述计算机程序可被处理器执行以实现如上述的基于ZNBase集群的Prometheus远程存储方法。
本发明的基于ZNBase集群的Prometheus远程存储方法及系统具有以下优点:
(一)本发明解决了Prometheus本地存储空间有限无法大量持久化数据的问题,做到利用ZNBase集群的分布式存储特性能够将Prometheus数据可以近乎无限持久化的功能;
(二)本发明将Prometheus采集的数据存储到ZNBase集群,提供了Prometheus的远程写、远程读、数据的处理(Prometheus查询、统计、聚合等)功能;
(三)本发明通过将Prometheus的指标数据通过Adaptor写到ZNBase集群中,可以解除Prometheus本地存储空间的限制,实现大量数据的持久化,并且将数据库存储到ZNBase集群后,可以方便的进行其他方面的分析工作,比如用于数据分析、结合采集的日志信息进行机器学习、模型训练和问题预测等,能更好全面的对被监控系统进行统一全面分析。
附图说明
下面结合附图对本发明进一步说明。
附图1为基于ZNBase集群的Prometheus远程存储方法的流程框图;
附图2为远程写请求数据存储及远程读请求数据获取的流程框图。
具体实施方式
参照说明书附图和具体实施例对本发明的基于ZNBase集群的Prometheus远程存储方法及系统作以下详细地说明。
实施例1:
如附图1所示,本发明的基于ZNBase集群的Prometheus远程存储方法,该方法是在Prometheus和ZNBase集群之间部署并运行单体服务适配器(Adaptor);具体如下:
S1、对接Prometheus:单体服务适配器(Adaptor)对接Prometheus,实现Prometheus的远程写请求(Write API)和远程读请求(Read API);
S2、对接ZNBase集群:单体服务适配器对接ZNBase集群,使用JDBC驱动进行连接;
S3、远程写请求数据存储:单体服务适配器解析Prometheus远程写请求内容,将解析后的数据按照指定格式存储到ZNBase集群中;
S4、远程读请求数据获取:单体服务适配器解析Prometheus远程读请求内容,按照要求的查询、统计及聚合请求,从ZNBase集群中查询出数据,以指定格式返回给Prometheus。
本实施例步骤S3中的远程写请求数据存储具体如下:
S301、在Prometheus的配置中设定远程读写接口为该单体服务适配器;
S302、单体服务适配器接收Prometheus发送过来的写请求;
S303、单体服务适配器对写请求内容进行API解析;
S304、单体服务适配器生成插入数据sql语句;
S305、通过JDBC驱动将指标数据写入ZNBase集群中;
本实施例步骤S4中的远程读请求数据获取具体如下:
S401、在Prometheus的配置中设定远程读写接口为该单体服务适配器;
S402、单体服务适配器接收Prometheus发送过来的读请求
S403、单体服务适配器对请求内容进行API解析;
S404、根据读请求内容的查询统计及聚合命令生成对应的查询sql语句;
S405、完成从ZNBase集群的获取数据操作,并按照接口要求的数据格式进行返回。
本实施例中的单体服务适配器定义的参数包括ZNBase集群的地址、用户名及密码。
本实施例中的ZNBase集群采用ZNBase数据存储表存储数据,ZNBase数据存储表的名称为被监控的指标名称,如下表所示:
timestamp | label_name1 | label_name2 | label_name3 | …… | label_namen |
1640xxxxxx | label_values1 | label_values2 | label_values3 | …… | label_valuesn |
…… | …… | …… | …… | …… | …… |
1640xxxxxx | label_values1 | label_values2 | label_values3 | …… | label_valuesn |
实施例2:
本发明的基于ZNBase集群的Prometheus远程存储系统,该系统包括,
单体服务适配器,用于对接Prometheus,实现Prometheus的远程写请求和远程读请求以及对接ZNBase集群,使用JDBC驱动进行连接;
Prometheus,用于发送远程写请求和远程读请求到ZNBase集群;
ZNBase集群,用于存储解析后的Prometheus的远程写请求数据以及返回根据Prometheus的读请求内容查询出的数据到Prometheus。
本实施例中的系统还包括,
生成模块一,用于根据远程写请求内容生成插入ZNBase的sql语句;
生成模块二,用于根据请求读内容生成查询sql语句;
存储模块,用于使用ZNBase集群进行Prometheus远程存储。
本实施例中的单体服务适配器定义的参数包括ZNBase集群的地址、用户名及密码;
本实施例中的ZNBase集群采用ZNBase数据存储表存储数据,ZNBase数据存储表的名称为被监控的指标名称。
实施例3:
本发明实施例还提供了一种电子设备,包括:存储器和处理器;
其中,存储器存储计算机执行指令;
处理器执行所述存储器存储的计算机执行指令,使得处理器执行本发明任一实施例中的基于ZNBase集群的Prometheus远程存储方法。
实施例4:
本发明实施例还提供了一种计算机可读存储介质,其中存储有多条指令,指令由处理器加载,使处理器执行本发明任一实施例中的基于ZNBase集群的Prometheus远程存储方法。具体地,可以提供配有存储介质的系统或者装置,在该存储介质上存储着实现上述实施例中任一实施例的功能的软件程序代码,且使该系统或者装置的计算机(或CPU或MPU)读出并执行存储在存储介质中的程序代码。
在这种情况下,从存储介质读取的程序代码本身可实现上述实施例中任何一项实施例的功能,因此程序代码和存储程序代码的存储介质构成了本发明的一部分。
用于提供程序代码的存储介质实施例包括软盘、硬盘、磁光盘、光盘(如CD-ROM、CD-R、CD-RW、DVD-ROM、DVD-RYM、DVD-RW、DVD+RW)、磁带、非易失性存储卡和ROM。可选择地,可以由通信网络从服务器计算机上下载程序代码。
此外,应该清楚的是,不仅可以通过执行计算机所读出的程序代码,而且可以通过基于程序代码的指令使计算机上操作的操作系统等来完成部分或者全部的实际操作,从而实现上述实施例中任意一项实施例的功能。
此外,可以理解的是,将由存储介质读出的程序代码写到插入计算机内的扩展板中所设置的存储器中或者写到与计算机相连接的扩展单元中设置的存储器中,随后基于程序代码的指令使安装在扩展板或者扩展单元上的CPU等来执行部分和全部实际操作,从而实现上述实施例中任一实施例的功能。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
Claims (10)
1.一种基于ZNBase集群的Prometheus远程存储方法,其特征在于,该方法是在Prometheus和ZNBase集群之间部署并运行单体服务适配器;具体如下:
对接Prometheus:单体服务适配器对接Prometheus,实现Prometheus的远程写请求和远程读请求;
对接ZNBase集群:单体服务适配器对接ZNBase集群,使用JDBC驱动进行连接;
远程写请求数据存储:单体服务适配器解析Prometheus远程写请求内容,将解析后的数据按照指定格式存储到ZNBase集群中;
远程读请求数据获取:单体服务适配器解析Prometheus远程读请求内容,按照要求的查询、统计及聚合请求,从ZNBase集群中查询出数据,以指定格式返回给Prometheus。
2.根据权利要求1所述的基于ZNBase集群的Prometheus远程存储方法,其特征在于,远程写请求数据存储具体如下:
在Prometheus的配置中设定远程读写接口为该单体服务适配器;
单体服务适配器接收Prometheus发送过来的写请求;
单体服务适配器对写请求内容进行API解析;
单体服务适配器生成插入数据sql语句;
通过JDBC驱动将指标数据写入ZNBase集群中。
3.根据权利要求1或2所述的基于ZNBase集群的Prometheus远程存储方法,其特征在于,远程读请求数据获取具体如下:
在Prometheus的配置中设定远程读写接口为该单体服务适配器;
单体服务适配器接收Prometheus发送过来的读请求
单体服务适配器对请求内容进行API解析;
根据读请求内容的查询统计及聚合命令生成对应的查询sql语句;
完成从ZNBase集群的获取数据操作,并按照接口要求的数据格式进行返回。
4.根据权利要求3所述的基于ZNBase集群的Prometheus远程存储方法,其特征在于,所述单体服务适配器定义的参数包括ZNBase集群的地址、用户名及密码。
5.根据权利要求4所述的基于ZNBase集群的Prometheus远程存储方法,其特征在于,所述ZNBase集群采用ZNBase数据存储表存储数据,ZNBase数据存储表的名称为被监控的指标名称。
6.一种基于ZNBase集群的Prometheus远程存储系统,其特征在于,该系统包括,
单体服务适配器,用于对接Prometheus,实现Prometheus的远程写请求和远程读请求以及对接ZNBase集群,使用JDBC驱动进行连接;
Prometheus,用于发送远程写请求和远程读请求到ZNBase集群;
ZNBase集群,用于存储解析后的Prometheus的远程写请求数据以及返回根据Prometheus的读请求内容查询出的数据到Prometheus。
7.根据权利要求6所述的基于ZNBase集群的Prometheus远程存储系统,其特征在于,该系统还包括,
生成模块一,用于根据远程写请求内容生成插入ZNBase的sql语句;
生成模块二,用于根据请求读内容生成查询sql语句;
存储模块,用于使用ZNBase集群进行Prometheus远程存储。
8.根据权利要求6或7所述的基于ZNBase集群的Prometheus远程存储系统,其特征在于,所述单体服务适配器定义的参数包括ZNBase集群的地址、用户名及密码;
所述ZNBase集群采用ZNBase数据存储表存储数据,ZNBase数据存储表的名称为被监控的指标名称。
9.一种电子设备,其特征在于,包括:存储器和至少一个处理器;
其中,所述存储器上存储有计算机程序;
所述至少一个处理器执行所述存储器存储的计算机程序,使得所述至少一个处理器执行如权利要求1至5任一项所述的基于ZNBase集群的Prometheus远程存储方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序,所述计算机程序可被处理器执行以实现如权利要求1至5中任一项所述的基于ZNBase集群的Prometheus远程存储方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210019993.1A CN114398334A (zh) | 2022-01-10 | 2022-01-10 | 基于ZNBase集群的Prometheus远程存储方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210019993.1A CN114398334A (zh) | 2022-01-10 | 2022-01-10 | 基于ZNBase集群的Prometheus远程存储方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114398334A true CN114398334A (zh) | 2022-04-26 |
Family
ID=81228958
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210019993.1A Pending CN114398334A (zh) | 2022-01-10 | 2022-01-10 | 基于ZNBase集群的Prometheus远程存储方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114398334A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115904879A (zh) * | 2023-01-06 | 2023-04-04 | 天津卓朗昆仑云软件技术有限公司 | 用于Prometheus集群的实例分配系统、方法及设备 |
-
2022
- 2022-01-10 CN CN202210019993.1A patent/CN114398334A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115904879A (zh) * | 2023-01-06 | 2023-04-04 | 天津卓朗昆仑云软件技术有限公司 | 用于Prometheus集群的实例分配系统、方法及设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9779128B2 (en) | System and method for massively parallel processing database | |
US8626765B2 (en) | Processing database operation requests | |
CN110019469B (zh) | 分布式数据库数据处理方法、装置、存储介质及电子装置 | |
US8412674B2 (en) | Replication resynchronization | |
US20110106767A1 (en) | Storage performance optimization | |
CN110532123B (zh) | HBase系统的故障转移方法及装置 | |
EP3985515A1 (en) | Transaction monitoring method, apparatus and system for distributed database, and storage medium | |
CN111930788B (zh) | 操作请求的处理方法、装置、设备、可读存储介质及系统 | |
US11960506B2 (en) | Data processing method and system for cloud platform, and electronic apparatus and storage medium | |
US9612921B2 (en) | Method and system for load balancing a distributed database providing object-level management and recovery | |
US11995099B2 (en) | System and method for switching from consistent database to an eventual consistent database replica in real time while preventing reads of past versions of the data | |
CN114398334A (zh) | 基于ZNBase集群的Prometheus远程存储方法及系统 | |
CN116521796A (zh) | 分布式数据库系统及数据读取方法、装置 | |
CN116775646A (zh) | 数据库的数据管理方法、装置、计算机设备及存储介质 | |
CN115510024A (zh) | 一种实现大规模并行数据库高可用的方法及系统 | |
CN110928945A (zh) | 一种针对数据库的数据处理方法及装置,数据处理系统 | |
CN112256489A (zh) | 云端开发平台的数据获取方法和装置、数据存储架构 | |
CN117349384B (zh) | 一种数据库同步的方法、系统及设备 | |
CN116225822A (zh) | 数据处理方法、计算设备及计算机存储介质 | |
CN118550972A (zh) | 一种微批数据采集处理方法、装置及可读存储介质 | |
CN115700489A (zh) | 应急切换方法、装置、电子设备及存储介质 | |
CN114817245A (zh) | 数据库日志的存储方法、数据库日志的分析方法及装置 | |
CN115190015A (zh) | 软负载系统配置方法、装置、计算机设备和存储介质 | |
CN112965956A (zh) | 数据库水平扩容方法、装置、设备和存储介质 | |
CN117785908A (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 | ||
TA01 | Transfer of patent application right | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20221213 Address after: Room 305-22, Building 2, No. 1158 Zhangdong Road and No. 1059 Dangui Road, China (Shanghai) Pilot Free Trade Zone, Pudong New Area, Shanghai, 200120 Applicant after: Shanghai Yunxi Technology Co.,Ltd. Address before: Building S02, 1036 Gaoxin Langchao Road, Jinan, Shandong 250100 Applicant before: Shandong Inspur Scientific Research Institute Co.,Ltd. |