CN116155689A - 一种基于ClickHouse的高可用Kong网关日志分析方法及系统 - Google Patents
一种基于ClickHouse的高可用Kong网关日志分析方法及系统 Download PDFInfo
- Publication number
- CN116155689A CN116155689A CN202211669558.XA CN202211669558A CN116155689A CN 116155689 A CN116155689 A CN 116155689A CN 202211669558 A CN202211669558 A CN 202211669558A CN 116155689 A CN116155689 A CN 116155689A
- Authority
- CN
- China
- Prior art keywords
- theme
- clickhouse
- data
- kafka
- distributed
- 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
- 238000004458 analytical method Methods 0.000 title claims abstract description 23
- 238000013515 script Methods 0.000 claims abstract description 19
- 238000000034 method Methods 0.000 claims description 24
- 230000006870 function Effects 0.000 claims description 22
- 238000012545 processing Methods 0.000 claims description 15
- 230000004931 aggregating effect Effects 0.000 claims description 3
- 238000007405 data analysis Methods 0.000 abstract description 12
- 238000010586 diagram Methods 0.000 description 9
- 238000004590 computer program Methods 0.000 description 7
- 238000011161 development Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 238000012423 maintenance Methods 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000008676 import Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
- 238000012800 visualization Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
- H04L41/0631—Management of faults, events, alarms or notifications using root cause analysis; using analysis of correlation between notifications, alarms or events based on decision criteria, e.g. hierarchy, tree or time analysis
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
- H04L41/069—Management of faults, events, alarms or notifications using logs of notifications; Post-processing of notifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0813—Configuration setting characterised by the conditions triggering a change of settings
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0823—Configuration setting characterised by the purposes of a change of settings, e.g. optimising configuration for enhancing reliability
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种基于ClickHouse的高可用Kong网关日志分析方法及系统,包括:Kong网关利用Kafka组件确定获取的原始日志信息对应的第一主题,并将原始日志信息传入对应的第一主题中;基于Flume的source组件实时消费所述第一主题,以确定第二主题;编写ClickHouse的config.xml,进行ClickHouse的Kafka引擎表的创建,进行所述第二主题的配置,以实时消费所述第二主题中的数据,并在ClickHouse集群中各个节点创建本地表、每个本地表对应的分布式表和对应Kafka引擎表的物化视图;在ClickHouse中使用SQL脚本语句,对存储在分布式表的数据按实际需求进行聚合和分析。本发明在ClickHouse的基础上,将Kafka、Flume、Zookeeper等组件进行合理地搭配组合,使Kong网关实时产生的数据能够在第一时间完成采集、存储与分析,帮助使用者及时看到数据分析结果。
Description
技术领域
本发明涉及日志分析技术领域,并且更具体地,涉及一种基于ClickHouse的高可用Kong网关日志分析方法及系统。
背景技术
ClickHouse是俄罗斯的Yandex于2016年开源的列式存储数据库(DBMS),使用C++语言编写,主要用于在线分析处理查询(OLAP),能够使用SQL查询实时生成分析数据报告。表现方面,ClickHouse拥有业界极佳的查询性能,通过对列式存储和压缩算法的创新应用显着降低了对存储的需求;可扩展性方面,ClickHouse在生产环境中经过实际检验,具有从单服务器部署扩展到数千个节点集群的线性水平可扩展性;可靠性方面,ClickHouse部署具有一流的可用性,不存在单点故障,同时架构支持多主节点之间相互复制,能够在多种区域配置中有效执行;安全性方面,ClickHouse具有企业级安全功能和故障安全机制,可防止数据因应用程序错误或者人为因素遭到破坏而导致丢失。
Kong网关拥有久经考验的开源技术,目前在github上已有3万多star,同时具备企业级解决方案和支持。Kong网关是现今技术栈中值得信赖且具备高性能的云原生API管理平台。由于Kong网关与云、协议和语言无关,因此它可与新兴或者传统技术无缝协作。Kong网关拥有丰富的插件市场,可大幅度降低开发成本。在可扩展性方面,Kong网关可以编写Lua脚本来定制参数校验、权限验证等功能,而基于OpenResty则保障了强劲的性能,同时Kong网关具备便捷地性能扩容能力,只需水平增加服务器资源就可完成性能提升。
Flume是一个高可用、高可靠、分布式的海量日志采集、聚合和传输的系统,能够有效的收集、聚合、移动大量的日志数据。
Kafka是一个高吞吐量、持久性、分布式的发布订阅消息系统。
ZooKeeper主要服务于分布式系统,可以用来实现统一配置管理、统一命名服务、分布式锁、集群管理等功能。
对于如何将Kong网关每时每刻产生的大量日志信息进行采集分析,是继续解决的问题。
发明内容
本发明提出一种基于ClickHouse的高可用Kong网关日志分析方法及系统,以解决如何高效地对Kong网关日志进行分析的问题。
为了解决上述问题,根据本发明的一个方面,提供了一种基于ClickHouse的高可用Kong网关日志分析方法,所述方法包括:
Kong网关利用Kafka组件确定获取的原始日志信息对应的第一主题,并将所述原始日志信息传入对应的第一主题中;
基于Flume的source组件实时消费所述第一主题,以确定第二主题;
编写ClickHouse的config.xml,进行ClickHouse的Kafka引擎表的创建,进行所述第二主题的配置,以实时消费所述第二主题中的数据,并在ClickHouse集群中各个节点创建本地表、每个本地表对应的分布式表和对应Kafka引擎表的物化视图;
在ClickHouse中使用SQL脚本语句,对存储在分布式表的数据按实际需求进行聚合和分析。
优选地,其中所述基于Flume的source组件实时消费所述第一主题,以确定第二主题,包括:
基于Flume的source组件实时消费拥有所述原始日志信息的第一主题,利用interceptor拦截器对原始数据进行清洗和格式转换,再基于内存类型的channel组件和sink组件输出至另一个拥有处理后数据的第二主题。
优选地,其中所述方法还包括:
在所述物化视图中使用JSONExtract、arrayMap、JSONExtractArrayRaw和JSONExtractRaw函数搭配Tuple数据类型解析Json格式的kafka数据。
优选地,其中所述方法还包括:
在启用物化视图后,ClickHouse集群Kafka引擎表数据更新后,实时将更新的数据写入分布式表进行存储。
优选地,其中所述方法还包括:
利用Zookeeper进行各分布式集群服务的统一协调、配置与管理。
根据本发明的另一个方面,提供了一种基于ClickHouse的高可用Kong网关日志分析系统,所述系统包括:
日志信息传入单元,用于使Kong网关利用Kafka组件确定获取的原始日志信息对应的第一主题,并将所述原始日志信息传入对应的第一主题中;
第二主题确定单元,用于基于Flume的source组件实时消费所述第一主题,以确定第二主题;
消费单元,用于编写ClickHouse的config.xml,进行ClickHouse的Kafka引擎表的创建,进行所述第二主题的配置,以实时消费所述第二主题中的数据,并在ClickHouse集群中各个节点创建本地表、每个本地表对应的分布式表和对应Kafka引擎表的物化视图;
脚本处理单元,用于在ClickHouse中使用SQL脚本语句,对存储在分布式表的数据按实际需求进行聚合和分析。
优选地,其中所述第二主题确定单元,基于Flume的source组件实时消费所述第一主题,以确定第二主题,包括:
基于Flume的source组件实时消费拥有所述原始日志信息的第一主题,利用interceptor拦截器对原始数据进行清洗和格式转换,再基于内存类型的channel组件和sink组件输出至另一个拥有处理后数据的第二主题。
优选地,其中所述系统还包括:
在所述物化视图中使用JSONExtract、arrayMap、JSONExtractArrayRaw和JSONExtractRaw函数搭配Tuple数据类型解析Json格式的kafka数据。
优选地,其中所述系统还包括:
更新单元,用于在启用物化视图后,ClickHouse集群Kafka引擎表数据更新后,实时将更新的数据写入分布式表进行存储。
优选地,其中所述系统还包括:
统一处理单元,用于利用Zookeeper进行各分布式集群服务的统一协调、配置与管理。
本发明提供了一种基于ClickHouse的高可用Kong网关日志分析方法及系统,包括:Kong网关利用Kafka组件确定获取的原始日志信息对应的第一主题,并将所述原始日志信息传入对应的第一主题中;基于Flume的source组件实时消费所述第一主题,以确定第二主题;编写ClickHouse的config.xml,进行ClickHouse的Kafka引擎表的创建,进行所述第二主题的配置,以实时消费所述第二主题中的数据,并在ClickHouse集群中各个节点创建本地表、每个本地表对应的分布式表和对应Kafka引擎表的物化视图;在ClickHouse中使用SQL脚本语句,对存储在分布式表的数据按实际需求进行聚合和分析。本发明对Kong网关每时每刻产生的大量日志信息进行实时采集、存储和分析,且对保障整套方案的高可用和高可靠性,进行了专门的设计和实现。在ClickHouse的基础上,将Kafka、Flume、Zookeeper等组件进行合理地搭配组合,使Kong网关实时产生的数据能够在第一时间完成采集、存储与分析,具备相当出色的实时处理性能,帮助使用者及时看到数据分析结果,提高决策效率。同时,整套方案各个组件通过分布式集群部署方式,搭配Zookeeper对分布式系统的统一协调、配置和管理,保障了各个组件以及数据实时流动等各个环节的高可用和高可靠性,提高稳定性。整套方案只需根据实际需求编写数据分析、ClickHouse建表等部分的相关SQL脚本,其余功能皆可通过配置完成,大大降低了方案落地的技术门槛,以及相关开发、实施和运维等人员的技术要求。
附图说明
通过参考下面的附图,可以更为完整地理解本发明的示例性实施方式:
图1为根据本发明实施方式的基于ClickHouse的高可用Kong网关日志分析方法100的流程图;
图2为根据本发明实施方式的数据流转图;
图3为根据本发明实施方式的基于ClickHouse的高可用Kong网关日志分析系统300的结构示意图。
具体实施方式
现在参考附图介绍本发明的示例性实施方式,然而,本发明可以用许多不同的形式来实施,并且不局限于此处描述的实施例,提供这些实施例是为了详尽地且完全地公开本发明,并且向所属技术领域的技术人员充分传达本发明的范围。对于表示在附图中的示例性实施方式中的术语并不是对本发明的限定。在附图中,相同的单元/元件使用相同的附图标记。
除非另有说明,此处使用的术语(包括科技术语)对所属技术领域的技术人员具有通常的理解含义。另外,可以理解的是,以通常使用的词典限定的术语,应当被理解为与其相关领域的语境具有一致的含义,而不应该被理解为理想化的或过于正式的意义。
本发明主要解决以下几个问题:
1.通过ClickHouse、Kafka、Flume等组件,实现Kong网关日志的实时采集、存储和分析。帮助使用者及时看到数据分析结果,提高决策效率。
2.利用Zookeeper对各个组件的分布式集群部署进行统一协调、配置与管理,实现数据采集、存储和分析的高可用和高可靠。
3.整个流程无需编写代码,只有数据分析、ClickHouse建表等环节需要根据实际需求编写SQL脚本,其余功能均通过配置完成,因此降低了方案落地的技术门槛。
图1为根据本发明实施方式的基于ClickHouse的高可用Kong网关日志分析方法100的流程图。如图1所示,本发明实施方式提供的基于Cli ckHouse的高可用Kong网关日志分析方法,对Kong网关每时每刻产生的大量日志信息进行实时采集、存储和分析,且对保障整套方案的高可用和高可靠性,进行了专门的设计和实现。在Cli ckHouse的基础上,将Kafka、Flume、Zookeeper等组件进行合理地搭配组合,使Kong网关实时产生的数据能够在第一时间完成采集、存储与分析,具备相当出色的实时处理性能,帮助使用者及时看到数据分析结果,提高决策效率。同时,整套方案各个组件通过分布式集群部署方式,搭配Zookeeper对分布式系统的统一协调、配置和管理,保障了各个组件以及数据实时流动等各个环节的高可用和高可靠性,提高稳定性。整套方案只需根据实际需求编写数据分析、ClickHouse建表等部分的相关SQL脚本,其余功能皆可通过配置完成,大大降低了方案落地的技术门槛,以及相关开发、实施和运维等人员的技术要求。本发明实施方式提供的基于ClickHouse的高可用Kong网关日志分析方法100,从步骤101处开始,在步骤101,Kong网关利用Kafka组件确定获取的原始日志信息对应的第一主题,并将所述原始日志信息传入对应的第一主题中。
在本发明中,前置条件是:完成Kong网关、Kafka、Flume、ClickHouse等环境的分布式集群部署。完成部署后,配置Kong网关利用其自带的Kafka插件,将产生的原始日志信息实时传入对应的原始日志专属Topic(主题),待其他消费端消费使用。
在步骤102,基于Flume的source组件实时消费所述第一主题,以确定第二主题。
优选地,其中所述基于Flume的source组件实时消费所述第一主题,以确定第二主题,包括:
基于Flume的source组件实时消费拥有所述原始日志信息的第一主题,利用interceptor拦截器对原始数据进行清洗和格式转换,再基于内存类型的channel组件和sink组件输出至另一个拥有处理后数据的第二主题。
结合图2所示,在本发明中,通过Flume的source组件实时消费拥有Kong网关原始日志信息的KafkaTopic,利用interceptor拦截器将原始数据进行清洗和格式转换,经过内存类型的channel组件,从sink组件输出到另一个处理后数据的KafkaTopic。
在步骤103,编写ClickHouse的config.xml,进行ClickHouse的Kafka引擎表的创建,进行所述第二主题的配置,以实时消费所述第二主题中的数据,并在ClickHouse集群中各个节点创建本地表、每个本地表对应的分布式表和对应Kafka引擎表的物化视图。
优选地,其中所述方法还包括:
在所述物化视图中使用JSONExtract、arrayMap、JSONExtractArrayRaw和JSONExtractRaw函数搭配Tup le数据类型解析Json格式的kafka数据。
优选地,其中所述方法还包括:
在启用物化视图后,ClickHouse集群Kafka引擎表数据更新后,实时将更新的数据写入分布式表进行存储。
结合图2所示,在本发明中,编写ClickHouse的config.xml,实现集群的分片、副本等功能。之后创建Cli ckHouse的Kafka引擎表,配置上Flumesink组件输出的处理后数据KafkaTopic,用以实时消费该Topic中的数据。同时,在ClickHouse集群中各个节点创建本地表、对应到各个本地表的分布式表,以及对应到Kafka引擎表的物化视图。在启用物化视图后,ClickHouse集群Kafka引擎表数据更新后,实时将更新的数据写入分布式表进行存储。由于Kafka的数据格式为复杂嵌套结构的Json格式,则物化视图中需要使用JSONExtract、arrayMap、JSONExtractArrayRaw、JSONExtractRaw等函数搭配Tuple数据类型解析该Json数据格式。然后,在ClickHouse中使用SQL脚本语句,对存储在分布式表的数据按实际需求进行聚合、分析等操作,实现相关数据分析。后续还可以将分析后的数据输出到可视化工具中,进行饼状图、柱状图、曲线图等更直观的展示,以达到更好的数据展示效果。
在步骤104,在ClickHouse中使用SQL脚本语句,对存储在分布式表的数据按实际需求进行聚合和分析。
优选地,其中所述方法还包括:
利用Zookeeper进行各分布式集群服务的统一协调、配置与管理。
在本发明中,由于Kong网关、Kafka、Flume、ClickHouse等组件都是分布式集群部署方式,因此利用Zookeeper实现各分布式集群服务的统一协调、配置与管理。整个过程除了数据分析、ClickHouse建表等功能需要编写一定量的SQL脚本语句,其余功能皆为配置实现。
本发明的关键点在于:
1.通过将ClickHouse、Kafka、Flume等组件的合理搭配与串联,实现Kong网关日志数据的实时采集、存储和分析。
2.由于各个组件都是分布式集群部署,因此利用Zookeeper对各个分布式集群进行统一协调、配置与管理,以实现整套方案各个环节的高可用和高可靠性。
3.全部过程无需编写代码,只有数据分析、Cli ckHouse建表等环节需要按照实际需求编写相关SQL语句,其他功能均通过配置完成,降低了方案落地的技术门槛。
本发明对Kong网关每时每刻产生的大量日志信息进行实时采集、存储和分析,且对保障整套方案的高可用和高可靠性,进行了专门的设计和实现。在ClickHouse的基础上,将Kafka、Flume、Zookeeper等组件进行合理地搭配组合,使Kong网关实时产生的数据能够在第一时间完成采集、存储与分析,具备相当出色的实时处理性能,帮助使用者及时看到数据分析结果,提高决策效率。同时,整套方案各个组件通过分布式集群部署方式,搭配Zookeeper对分布式系统的统一协调、配置和管理,保障了各个组件以及数据实时流动等各个环节的高可用和高可靠性,提高稳定性。整套方案只需根据实际需求编写数据分析、ClickHouse建表等部分的相关SQL脚本,其余功能皆可通过配置完成,大大降低了方案落地的技术门槛,以及相关开发、实施和运维等人员的技术要求。
图3为根据本发明实施方式的基于ClickHouse的高可用Kong网关日志分析系统300的结构示意图。如图3所示,本发明实施方式提供的基于ClickHouse的高可用Kong网关日志分析系统300,包括:日志信息传入单元301、第二主题确定单元302、消费单元303和脚本处理单元304。
优选地,所述日志信息传入单元301,用于使Kong网关利用Kafka组件确定获取的原始日志信息对应的第一主题,并将所述原始日志信息传入对应的第一主题中。
优选地,所述第二主题确定单元302,用于基于Flume的source组件实时消费所述第一主题,以确定第二主题。
优选地,其中所述第二主题确定单元302,基于Flume的source组件实时消费所述第一主题,以确定第二主题,包括:
基于Flume的source组件实时消费拥有所述原始日志信息的第一主题,利用interceptor拦截器对原始数据进行清洗和格式转换,再基于内存类型的channel组件和sink组件输出至另一个拥有处理后数据的第二主题。
优选地,所述消费单元303,用于编写ClickHouse的config.xml,进行ClickHouse的Kafka引擎表的创建,进行所述第二主题的配置,以实时消费所述第二主题中的数据,并在C lickHouse集群中各个节点创建本地表、每个本地表对应的分布式表和对应Kafka引擎表的物化视图。
优选地,其中所述系统还包括:
在所述物化视图中使用JSONExtract、arrayMap、JSONExtractArrayRaw和JSONExtractRaw函数搭配Tuple数据类型解析Json格式的kafka数据。
优选地,其中所述系统还包括:
更新单元,用于在启用物化视图后,ClickHouse集群Kafka引擎表数据更新后,实时将更新的数据写入分布式表进行存储。
优选地,所述脚本处理单元304,用于在ClickHouse中使用SQL脚本语句,对存储在分布式表的数据按实际需求进行聚合和分析。
优选地,其中所述系统还包括:
统一处理单元,用于利用Zookeeper进行各分布式集群服务的统一协调、配置与管理。
本发明的实施例的基于ClickHouse的高可用Kong网关日志分析系统300与本发明的另一个实施例的基于ClickHouse的高可用Kong网关日志分析方法100相对应,在此不再赘述。
已经通过参考少量实施方式描述了本发明。然而,本领域技术人员所公知的,正如附带的专利权利要求所限定的,除了本发明以上公开的其他的实施例等同地落在本发明的范围内。
通常地,在权利要求中使用的所有术语都根据他们在技术领域的通常含义被解释,除非在其中被另外明确地定义。所有的参考“一个/所述/该[装置、组件等]”都被开放地解释为所述装置、组件等中的至少一个实例,除非另外明确地说明。这里公开的任何方法的步骤都没必要以公开的准确的顺序运行,除非明确地说明。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
最后应当说明的是:以上实施例仅用以说明本发明的技术方案而非对其限制,尽管参照上述实施例对本发明进行了详细的说明,所属领域的普通技术人员应当理解:依然可以对本发明的具体实施方式进行修改或者等同替换,而未脱离本发明精神和范围的任何修改或者等同替换,其均应涵盖在本发明的权利要求保护范围之内。
Claims (10)
1.一种基于ClickHouse的高可用Kong网关日志分析方法,其特征在于,所述方法包括:
Kong网关利用Kafka组件确定获取的原始日志信息对应的第一主题,并将所述原始日志信息传入对应的第一主题中;
基于Flume的source组件实时消费所述第一主题,以确定第二主题;
编写ClickHouse的config.xml,进行ClickHouse的Kafka引擎表的创建,进行所述第二主题的配置,以实时消费所述第二主题中的数据,并在ClickHouse集群中各个节点创建本地表、每个本地表对应的分布式表和对应Kafka引擎表的物化视图;
在ClickHouse中使用SQL脚本语句,对存储在分布式表的数据按实际需求进行聚合和分析。
2.根据权利要求1所述的方法,其特征在于,所述基于Flume的source组件实时消费所述第一主题,以确定第二主题,包括:
基于Flume的source组件实时消费拥有所述原始日志信息的第一主题,利用interceptor拦截器对原始数据进行清洗和格式转换,再基于内存类型的channel组件和sink组件输出至另一个拥有处理后数据的第二主题。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在所述物化视图中使用JSONExtract、arrayMap、JSONExtractArrayRaw和JSONExtractRaw函数搭配Tuple数据类型解析Json格式的kafka数据。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在启用物化视图后,ClickHouse集群Kafka引擎表数据更新后,实时将更新的数据写入分布式表进行存储。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
利用Zookeeper进行各分布式集群服务的统一协调、配置与管理。
6.一种基于ClickHouse的高可用Kong网关日志分析系统,其特征在于,所述系统包括:
日志信息传入单元,用于使Kong网关利用Kafka组件确定获取的原始日志信息对应的第一主题,并将所述原始日志信息传入对应的第一主题中;
第二主题确定单元,用于基于Flume的source组件实时消费所述第一主题,以确定第二主题;
消费单元,用于编写ClickHouse的config.xml,进行ClickHouse的Kafka引擎表的创建,进行所述第二主题的配置,以实时消费所述第二主题中的数据,并在ClickHouse集群中各个节点创建本地表、每个本地表对应的分布式表和对应Kafka引擎表的物化视图;
脚本处理单元,用于在ClickHouse中使用SQL脚本语句,对存储在分布式表的数据按实际需求进行聚合和分析。
7.根据权利要求6所述的系统,其特征在于,所述第二主题确定单元,基于Flume的source组件实时消费所述第一主题,以确定第二主题,包括:
基于Flume的source组件实时消费拥有所述原始日志信息的第一主题,利用interceptor拦截器对原始数据进行清洗和格式转换,再基于内存类型的channel组件和sink组件输出至另一个拥有处理后数据的第二主题。
8.根据权利要求6所述的系统,其特征在于,所述系统还包括:
在所述物化视图中使用JSONExtract、arrayMap、JSONExtractArrayRaw和JSONExtractRaw函数搭配Tuple数据类型解析Json格式的kafka数据。
9.根据权利要求6所述的系统,其特征在于,所述系统还包括:
更新单元,用于在启用物化视图后,ClickHouse集群Kafka引擎表数据更新后,实时将更新的数据写入分布式表进行存储。
10.根据权利要求6所述的系统,其特征在于,所述系统还包括:
统一处理单元,用于利用Zookeeper进行各分布式集群服务的统一协调、配置与管理。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211669558.XA CN116155689A (zh) | 2022-12-24 | 2022-12-24 | 一种基于ClickHouse的高可用Kong网关日志分析方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211669558.XA CN116155689A (zh) | 2022-12-24 | 2022-12-24 | 一种基于ClickHouse的高可用Kong网关日志分析方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116155689A true CN116155689A (zh) | 2023-05-23 |
Family
ID=86353538
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211669558.XA Pending CN116155689A (zh) | 2022-12-24 | 2022-12-24 | 一种基于ClickHouse的高可用Kong网关日志分析方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116155689A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117033335A (zh) * | 2023-10-09 | 2023-11-10 | 武汉博易讯信息科技有限公司 | 基于ClickHouse的syslog日志处理方法、系统、设备及介质 |
-
2022
- 2022-12-24 CN CN202211669558.XA patent/CN116155689A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117033335A (zh) * | 2023-10-09 | 2023-11-10 | 武汉博易讯信息科技有限公司 | 基于ClickHouse的syslog日志处理方法、系统、设备及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107577805B (zh) | 一种面向日志大数据分析的业务服务系统 | |
US20180129579A1 (en) | Systems and Methods with a Realtime Log Analysis Framework | |
US10691728B1 (en) | Transforming a data stream into structured data | |
US9639575B2 (en) | Method and system for processing data queries | |
US8321454B2 (en) | Double map reduce distributed computing framework | |
CN108616419B (zh) | 一种基于Docker的数据包采集分析系统及其方法 | |
US20100070981A1 (en) | System and Method for Performing Complex Event Processing | |
CN111949633B (zh) | 一种基于并行流处理的ict系统运行日志分析方法 | |
CN113312191B (zh) | 数据分析方法、装置、设备及存储介质 | |
Fu et al. | Real-time data infrastructure at uber | |
CN113360554B (zh) | 一种数据抽取、转换和加载etl的方法和设备 | |
CN107330098B (zh) | 一种自定义报表的查询方法、计算节点及查询系统 | |
CN111405032A (zh) | 一种工业物联网通用云平台 | |
CN109871406B (zh) | 通用监控报表平台的设计方法 | |
Turaga et al. | Design principles for developing stream processing applications | |
CN110704484A (zh) | 一种对海量实时数据流进行处理的方法及系统 | |
CN114372084A (zh) | 面向传感流数据的实时处理系统 | |
CN116155689A (zh) | 一种基于ClickHouse的高可用Kong网关日志分析方法及系统 | |
CN112182025A (zh) | 日志分析方法、装置、设备与计算机可读存储介质 | |
CN114090529A (zh) | 一种日志管理方法、装置、系统和存储介质 | |
US8869122B2 (en) | Extensible executable modeling | |
WO2023136843A1 (en) | Policy driven event transformation | |
Henning | Prototype of a scalable monitoring infrastructure for Industrial DevOps | |
CN114756301A (zh) | 日志处理方法、装置和系统 | |
CN114510531A (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 |