Clickhouse引擎之kafka

news2025/3/5 2:57:53

Clickhouse kafka引擎需要结合kafka使用,需要确保已经安装clickhouse和kafka

实战环境:

Clickhouse-server 版本:22.4.5

Kafka版本:kafka_2.13-3.2.0

Clickhouse数据库执行:

1、使用引擎创建一个kafka消费者

  CREATE TABLE log_queue (
    logid String,
    message String
  ) ENGINE = Kafka SETTINGS kafka_broker_list = 'localhost:9092',
                            kafka_topic_list = 'log_topic',
                            kafka_group_name = 'log_consumer_group',
                            kafka_format = 'JSONEachRow';

必要参数:

  • kafka_broker_list – 以逗号分隔的 brokers 列表 (localhost:9092)。
  • kafka_topic_list – topic 列表 (my_topic)。
  • kafka_group_name – Kafka 消费组名称 (group1)。如果不希望消息在集群中重复,请在每个分片中使用相同的组名。
  • kafka_format – 消息体格式。使用与 SQL 部分的 FORMAT 函数相同表示方法,例如 JSONEachRow。了解详细信息,请参考 Formats 部分。

可选参数:

  • kafka_row_delimiter - 每个消息体(记录)之间的分隔符。
  • kafka_schema – 如果解析格式需要一个 schema 时,此参数必填。例如,普罗托船长 需要 schema 文件路径以及根对象 schema.capnp:Message 的名字。
  • kafka_num_consumers – 单个表的消费者数量。默认值是:1,如果一个消费者的吞吐量不足,则指定更多的消费者。消费者的总数不应该超过 topic 中分区的数量,因为每个分区只能分配一个消费者。

2、创建数据库结构表

 CREATE TABLE test_log (
    logid String,
    message String
  ) ENGINE =  MergeTree()
   order by logid;

3、创建物化视图,转换引擎中的数据并转存到数据库结构表中

create materialized view test_log_view to test_log as select * from log_queue;

测试:

 1、启动zookeeper

#进入kafka bin目录
cd /usr/local/java/kafka_2.13-3.2.0/bin
# 启动zookeeper
./zookeeper-server-start.sh /usr/local/java/kafka_2.13-3.2.0/config/zookeeper.properties &

 2、启动kafka

#进入kafka bin目录
cd /usr/local/java/kafka_2.13-3.2.0/bin
#启动kakfa
./kafka-server-start.sh /usr/local/java/kafka_2.13-3.2.0/config/server.properties &

 3、创建topic

#进入kafka目录
cd /usr/local/java/kafka_2.13-3.2.0
# 创建topic
bin/kafka-topics.sh --bootstrap-server localhost:9092 --create --topic log_topic

 4、生产者发送消息

#进入kafka目录
cd /usr/local/java/kafka_2.13-3.2.0
# 生产者控制台连接
bin/kafka-console-producer.sh --topic log_topic --bootstrap-server localhost:9092
# 发送消息,回车键发送
{"logid":"12345789255","message":"test"}

 5、查看clickhouse数据表,数据是否插入成功

6、如果数据未插入成功,则需要查看clickhouse日志,是否数据格式异常导致。

cd /var/log/clickhouse-server

参考文档:

Kafka | ClickHouse Docs

Apache Kafka

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/104183.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【OpenCV+Qt】使用车牌识别系统EasyPR识别车牌号

EasyPR是一个中文的开源车牌识别系统,其车牌识别划分为了两个过程:即车牌检测(Plate Detection)和字符识别(Chars Recognition)两个过程: 车牌检测(Plate Detection)&am…

用于医疗诊断的花青染料ICG-Sulfo-EG8-OSu,

凯新生物产品介绍: (ICG)是一个用于医疗诊断的花青染料。它是用于测定心输出量、肝脏功能、肝血流量,和对于眼科血管造影术。它有一个最大吸收光谱在800nm附近。这些红外波段可以穿透视网膜层,相比荧光素血管造影ICG血管造影图像允许进入更深的血液循环。传统的激活…

华为机试_HJ24 合唱队【中等】【收藏】

目录 描述 输入描述: 输出描述: 解题过程 提交代码 学习代码 代码一 代码二 收藏点 描述 N 位同学站成一排,音乐老师要请最少的同学出列,使得剩下的 K 位同学排成合唱队形。 设KK位同学从左到右依次编号为 1&#xff0…

想学Redis却不会安装,这有一个快速入门请拿去

一. Redis简介 1.什么是Redis Redis是一个完全开源免费、且遵守BSD协议的,高性能(NOSQL)的key-value数据库。Redis本身使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型,并提供多种语言的API。 2.Redis特点 Redis具有如下特点&#xff1…

DJ13-2 汇编语言程序设计

目录 一、顺序程序设计 二、分支程序设计 1. 用比较/测试命令条件转移指令实现分支 2. 采用跳转表实现多路分支 三、循环程序设计 1. 计数循环程序设计 2. 条件判断循环程序设计 四、子程序设计 1. 子程序设计举例 2. 主程序和子程序设计举例 一、顺序程序设计 举例…

低代码为什么会受到企业青睐?是何原因?

低代码为什么会受到企业青睐?是何原因?回答这个问题,只需用4个“更”字,就能很好的概括。 1、更快(开箱即用) 2、更省(人力、时间成本) 3、更合适(需求贴合业务&#…

mfc常用控件

mfc在编写桌面客户端应用应用程序,在设计界面时,如果像一般的界面,实施人员或者适配人员使用(特定的用户群体)对界面要求没有那么高,只要软件功能正常,稳定就行,我们在做这些界面时,通常使用原生…

CSDN第16期竞赛

目录 1.比赛详情 2.竞赛感悟 3.竞赛题目回顾 (1)鬼画符门莲台争夺战 (2)津津的储蓄计划 (3)多边形的面积 (4)小桥流水人家 1.比赛详情 比赛地址:http://t.csdn.cn/b1Lzm 2.竞赛感悟 通过这次的周赛&#xff0c…

SQLserver技巧 年份判断,以及向上想下取整

SELECT [出厂日期],DATEDIFF(month,出厂日期,getdate())*1.0/12 as 使用年限/年 ---------得到的结果实际(浮点),cast(DATEDIFF(month,出厂日期,getdate())*1.0/12 as decimal(18,1)) as 使用年限/年 FROM tableA参考: https://blog.csdn.…

这篇文章来告诉你几个实用的视频转文字的方法

相信大家在闲暇之余,都会通过一些网课来提高自己的知识本领吧!有的时候在上网课的过程中,会感觉自己做笔记的速度赶不上老师的进度,重复观看又比较麻烦,这时我们就可以借助一些视频转换软件来将视频转换成文字&#xf…

元宇宙产业委共同主席倪健中:发挥元宇宙总部基地优势,探索农业元宇宙发展之路|2022首届海南自贸港(临高)乡村振兴发展论坛

12月12日,2022首届海南自贸港(临高)乡村振兴发展论坛暨经济合作洽谈周活动在临高开幕。此次活动以“精彩新临高抢滩自贸港”为主题,重点推介“红色”文旅、“黄色”农业、“蓝色”海洋、“绿色”金牌港和“紫色”数字经济组成的五…

【c++提高1】二叉树二叉堆(万字总结)

大纲 一、二叉树 二叉树:1.二叉树简介 二叉树:2.二叉树的性质 二叉树:3.二叉树的存储 二叉树:4.二叉树的遍历 二叉树:5.求解先序、后序、层次遍历序列 二叉树:6.例题 二、二叉堆 二叉堆:1.二叉堆…

Windows下NCNN环境配置(VS2019)

Windows下NCNN环境配置(VS2019) 本文修改自:Windows下ncnn环境配置(VS2019) 一、下载VS2019并安装 1、下载地址:https://visualstudio.microsoft.com/zh-hans/vs/ 2、下载后安装工作负载(安装以…

答疑解惑:开发者必须了解的Unicode和字符编码系统

目录 前言 ASCII Unicode UTF-8 C#中的字符串类型 UTF-16 String.Length 返回的是字符个数吗? 问题与答案 总结 参考 前言 请大家先思考几个问题 为什么有时候页面文本全是“锟斤拷”等乱码,有时候是个别字符别被替换为了�呢&a…

2.fs文件系统模块

fs模块是Node.js官方提供的用于操作文件的模块 目录 1 导入fs模块 2 读取文件内容 fs.readFile() 2.1 读取成功 2.2 读取失败 2.3 搞个函数判定读取成功还是失败 3 写入文件内容 fs.writeFile() 3.1 写入成功 3.2 写入失败 3.3 搞个函数判定写入成功还是失败…

如何构建企业内的 TiDB 自运维体系

1. 前言 得物 App 从创立之初,关系型数据库一直使用的开源数据库产品 MySQL。和绝大部分互联网公司一样,随着业务高速增长、数据量逐步增多,单实例、单库、单表出现性能瓶颈和存储瓶颈。从选型和架构设计角度来看这很符合发展规律&#xff0…

[思维模式-8]:《如何系统思考》-4- 认识篇 - 什么是系统思考?系统思考的特征?系统思考的思维转变。

目录 第1章 系统思考概述 1.1 什么是系统思考 1.2 系统思考适合解决什么样的问题?解决复杂问题的有效利器! 1.3 思维模式的转换:还原论向整体论(西医向中医) 第2章 系统思考的四项特征 2.1 看到全貌而非局部 2.…

ubuntu18.04+pycharm+pydesigner 配置教程(亲测可用)

文章目录系统环境pytorch 环境安装依赖包安装qtdesignerPyUICpycharm配置qtdesigner配置PyUIC配置成功如何使用参考文章:系统环境 ubuntu18.04 OS: Ubuntu 18.04.6 LTS Python version: 3.7 (64-bit runtime) Is CUDA available: True CUDA runtime version: 11.1…

物联网通信原理第4章 中远距离无线通信技术

目录 4.1 无线局域网(WLAN, Wireless LAN) 4.1.7 IEEE 802.11标准中的MAC子层(掌握) 1. IEEE 802.11 MAC帧格式 2. MAC层工作原理(本章重点) 4.4 无线局域网的扩频传输技术 4.4.1 直接序列扩频&#x…

使用inputmode改变移动端键盘弹出的类型

文章目录前言一、inputmode是什么?二、它有那些属性2.1 none2.2 text(默认值)2.3 numeric2.4 decimal2.5 tel2.6 search2.7 email2.8 url三、需要注意四、兼容前言 使用原因:需求是同时兼容移动端和PC端的输入,输入框数量多且绑定不同的对象…