大数据课程I1——Kafka的概述

文章作者邮箱:yugongshiye@sina.cn              地址:广东惠州

 ▲ 本章节目的

⚪ 了解Kafka的概念;

⚪ 掌握Kafka的配置与启动;

一、简介

1. 基本概念

Apache kafka 是一个分布式数据流平台。可以从如下几个层面来理解:

1. 我们可以向Kafka发布数据以及从Kafka订阅数据,即我们可以将Kafka看作是一个消息队列或者企业消息系统。所起的作用:缓冲(消峰限流),实现生产与消费的解耦。

2. Kafka可以存储数据,并提供容错机制。即数据丢失后可以进行恢复。

3. 当数据到达Kafka之后,可以马上的被消费处理。即Kafka的延迟很低。

我们可以人为Kafka具备以上三个方面的明显能力。根据Kafka的这些特点,Kafka的适用场景就是:搭建实时流平台的中间件

2. kafka用途

1. 在系统或者应用程序之间构建实时数据传输管道。

2. 构建实时处理数据流的应有程序。

在实际工作中,对数据的处理方式有两种:

1. 离线批处理。

2. 实时流处理。

二、Kafka配置与启动

1. 基本概念

1.kafka是以集群部署方式运行在一台或多台服务器上。

2.kafka存储数据的类别成为topic。

3.在kafka中每一条记录包含一个key,一个value以及一个时间戳。

2. Kafka配置

1.通过wget从官网下载安装包 Apache Kafka。

2.上传到01虚拟机,解压。

3.进入Kafka安装目录下的config目录。

4.对server.properties进行配置。

要读的书 配置示例:

broker.id=1

log.dirs=/home/software/kafka/kafka-logs

zookeeper.connect=hadoop01:2181,hadoop02:2181,hadoop03:2181

delete.topic.enable=true

advertised.host.name=192.168.234.21

advertised.port=9092

5.保存退出后,别忘了在安装目录下创建 kafka-logs目录

6.配置其他两台虚拟机,更改配置文件的broker.id编号(不重复即可)。可以通过远程拷贝,将01的Kafka发送给02,03,更改broker.id即可。

#切换到/home/software目录,执行如下指令:

scp -r kafka_2.11-1.0.0 hadoop02:/home/software/

scp -r kafka_2.11-1.0.0 hadoop03:/home/software/

7.先启动zookeeper集群

#进入zookeeper的bin目录,执行如下指令:

sh zkServer.sh start

#查看zookeeper角色状态

sh zkServer.sh status 

8.启动kafka集群

#进入Kafka的bin目录,执行如下指令:

sh kafka-server-start.sh ../config/server.properties

#退出:ctrl+c

3. Kafka使用

1.创建自定义的topic

在bin目录下执行:

sh kafka-topics.sh --create --zookeeper hadoop01:2181 --replication-factor 1 --partitions 1 --topic enbook

注:副本数量要小于等于节点数量

2.查看所有的topic

sh kafka-topics.sh --list --zookeeper hadoop01:2181

3.启动producer

sh kafka-console-producer.sh --broker-list hadoop01:9092  --topic  enbook

4.启动consumer

[root@hadoop01 bin]# sh kafka-console-consumer.sh --zookeeper hadoop01:2181 --topic enbook --from-beginning

5.可以通过producer和consumer模拟消息的发送和接收

6.删除topic指令:

进入bin目录,执行如下指令:

sh kafka-topics.sh --delete --zookeeper hadoop01:2181 --topic  enbook

可以通过配置 config目录下的 server.properties文件,加入如下的配置:

要读的书 配置示例:

delete.topic.enable=true

 

 

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ngrok内网穿透可以实现资源共享吗?快解析更加简洁

随着互联网的高速发展,越来越多的人开始意识到内网穿透技术的重要性。在这一技术中,ngrok已经成为了一个备受关注的工具。然而,很多人对于ngrok是否可以进行资源共享存在疑问。本文将从新的角度出发,深入探讨这个问题。 了解什么…

TEC2083BS-PD码转换器(解决博世矩阵控制PELCO派尔高球机的问题)

TEC2083BS-PD码转换器 使用说明 1.设备概述 控制码转换器在安防工程中起着非常重要的角色,随着高速球型摄像机在安防工程中大范围的使用,而高速球厂家都因为某些原因很少使用博世、飞利浦的协议。为此,工程商经常会遇到博世协议和PELCO协议之…

【Linux】云服务器自动化部署VuePress博客(Jenkins)

前言 博主此前是将博客部署在 Github Pages(基于 Github Action)和 Vercel 上的,但是这两种部署方式对于国内用户很不友好,访问速度堪忧。因此将博客迁移到自己的云服务器上,并且基于 Jenkins(一款开源持续…

eNSP:双向重定向和路由策略练习

实验要求&#xff1a; 拓扑图&#xff1a; IP、路由器 r1: <Huawei>sys [Huawei]sys r1 [r1]int g 0/0/0 [r1-GigabitEthernet0/0/0]ip add 12.1.1.1 24 [r1-GigabitEthernet0/0/0]int g 0/0/1 [r1-GigabitEthernet0/0/1]ip add 14.1.1.1 24 [r1-GigabitEthernet0/0/1]…

腾讯云轻量服务器和云服务器的CPU处理器有差别吗?

腾讯云轻量应用服务器和CVM云服务器的CPU处理器性能有差别吗&#xff1f;创建轻量应用服务器时不支持指定底层物理服务器的CPU型号&#xff0c;腾讯云将随机分配满足套餐规格的物理CPU型号&#xff0c;通常优先选择较新代次的CPU型号。而云服务器CVM的CPU处理器型号、主频都是有…

flutter开发实战-TextPainter计算文本内容的宽度

flutter开发实战-TextPainter计算文本内容的宽度 最近开发过程中根据Text文本的大小判断是否需要进行显示跑马灯效果&#xff0c;获取文本的大小&#xff0c;需要TextPainter来获取Size 一、TextPainter TextPainter主要用于实现文本的绘制。TextPainter类可以将TextSpan渲染…

docker下载和案例

文章目录 Docker安装一,根据官方文档安装二,根据我以下方式 Docker配置错误导致漏洞一,CRLF注入漏洞介绍在nginx中该漏洞例子解决方法 目录穿越漏洞介绍解决方法 Docker安装 一,根据官方文档安装 官方文档 二,根据我以下方式 docker安装要求&#xff1a; Docker要求Ce…

Java List(列表)

List 是一个有序、可重复的集合&#xff0c;集合中每个元素都有其对应的顺序索引。List 集合允许使用重复元素&#xff0c;可以通过索引来访问指定位置的集合元素。List 集合默认按元素的添加顺序设置元素的索引&#xff0c;第一个添加到 List 集合中的元素的索引为 0&#xff…

pytest接口自动化测试框架搭建的全过程

目录 一. 背景 二. 基础环境 三. 项目结构 四、框架解析 pytest是Python的一种单元测试框架,可用来组织用例执行,用例断言,下面这篇文章主要给大家介绍了关于pytest接口自动化测试框架搭建的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下 一. 背景 Pyte…

HTTP协议

HTTP协议 应用层再谈 "协议"网络版计算器 HTTP协议认识URLurlencode和urldecodeHTTP协议格式HTTP的方法HTTP的状态码HTTP常见Header HTTPS协议HTTPS 是什么什么是"加密"为什么要加密常⻅的加密⽅式 HTTPS 的⼯作过程探究⽅案 1 - 只使⽤对称加密⽅案 2 - 只…

【Linux】TCP协议的相关实验——深入理解

TCP相关实验 理解CLOSE_WAIT状态 当客户端和服务器在进行TCP通信时&#xff0c;如果客户端调用close函数关闭对应的文件描述符&#xff0c;此时客户端底层操作系统就会向服务器发起FIN请求&#xff0c;服务器收到该请求后会对其进行ACK响应。 但如果当服务器收到客户端的FIN…

Apikit 自学日记:API 异常监控-监控报告

在 api 管理中&#xff0c;查看 api 异常监控的监控报告&#xff0c;在 apikit 中也是常用的功能&#xff0c;通常你可以在流程综合报告页中看到当前流程在选定时间段内的整体监控情况... 在 APIkit 中监控报告有这几种类别&#xff1a; 单接口监控报告 流程监控报告 项目监控…

linux静态库与动态库

1、动态库和静态库概念 Linux中的库分为动态库和静态库。 静态库&#xff08;.a&#xff09;&#xff1a;库文件以.a为后缀&#xff0c;程序在编译链接时把库的代码链接到可执行文件中&#xff08;将需要的库函数拷贝一份到代码中&#xff09;。程序运行时不需要再跳转到静态…

layui 集成 ztree异步加载

首先&#xff0c;layui环境搭建&#xff0c;ztree环境引入 ztree的js和css都要引入&#xff0c;我这里暂时用的是core包> 静态&#xff0c;一句话就够了 <!-- 左侧菜单树形组件 --><div class"layui-col-md3"><div class"layui-footer "…

计算机网络(7) --- UDP协议和TCP协议

计算机网络&#xff08;6&#xff09; --- https协议_哈里沃克的博客-CSDN博客https协议https://blog.csdn.net/m0_63488627/article/details/132112683?spm1001.2014.3001.5501 目录 1.补充知识 1.PORT端口号 2.端口号范围划分 3.知名端口号 2.UDP协议 1.UDP报头 2.U…

Tubi 前端测试:迁移 Enzyme 到 React Testing Library

前端技术发展迅速&#xff0c;即便不说是日新月异&#xff0c;每年也都推出新框架和新技术。Tubi 的产品前端代码仓库始建于 2015 年&#xff0c;至今 8 年有余。可喜的是&#xff0c;多年来紧随 React 社区的发展&#xff0c;Tubi 绝大多数的基础框架选型都遵循了社区流行的最…

Rust 原生支持龙架构指令集

导读近日&#xff0c;Rust 开源社区发布 1.71.0 版本&#xff0c;实现对龙架构&#xff08;LoongArch&#xff09;指令集的原生支持。 龙架构操作系统发行版和开发者可基于上游社区源代码构建或直接下载 Rust 开源社区发布的龙架构二进制版本。Rust 开发者将在龙架构平台上获得…

Zabbix自动注册服务器及部署代理服务器

文章目录 一.zabbix自动注册1.什么是自动注册2.环境准备3.zabbix客户端配置4.在 Web 页面配置自动注册5.验证自动注册 二.部署 zabbix 代理服务器1.分布式监控的作用&#xff1a;2.环境部署3.代理服务器配置4.客户端配置5.web页面配置5.1 删除原来配置5.2 添加代理5.3 创建主机…

解决: git拉取报错 git 未能顺利结束 (退出码 1)

拉取代码失败信息 解决方法: 执行一下"git push -f origin master"命令即可 步骤: 1.项目文件夹右击选择"Git Bash Here",打开命令窗口 2. 输入"git push -f origin master"后,回画 执行结束 3.再拉取代码,成功

python爬虫实战(2)--爬取某博热搜数据

1. 准备工作 使用python语言可以快速实现&#xff0c;调用BeautifulSoup包里面的方法 安装BeautifulSoup pip install BeautifulSoup完成以后引入项目 2. 开发 定义url url https://s.微博.com/top/summary?caterealtimehot定义请求头&#xff0c;微博请求数据需要cookie…