您当前的位置:首页 > 电脑百科 > 站长技术 > 服务器

使用 Apache Kafka 构建您自己的社交媒体分析

时间:2022-09-28 12:13:08  来源:  作者:qaseven
使用在 Kube.NETes 上运行的 Kafka 在 API 端点之间流式传输消息。

 

Apache Kafka 不仅仅是一个消息传递代理。它有一个由不同组件组成的丰富生态系统。有用于导入和导出数据的连接器、不同的流处理库、模式注册表等等。在本次演讲中,Red Hat Jakub Scholz的高级首席软件工程师展示了如何使用Kafka从 Twitter 等社交网络读取数据、处理它们,并使用机器学习来分析它们——一切都在 Kubernetes 之上运行。

雅库布·舒尔茨:

所以我的名字是Jakub Scholz,我在 Red Hat 工作。实际上,我大部分时间都在从事 CNCF 项目,名为Strimzi,这就是在 Kubernetes 上运行 Apache Kafka。当然,这也是我将在今天的演讲中使用的内容。我希望你们所有人都知道和听说过 Apache Kafka。但我认为理解它不仅仅是一个消息传递代理非常重要。它是一个均匀的流媒体平台,它是一个由不同组件和工具组成的伟大生态系统。其中一些是 Apache Kafka 项目本身的一部分。但其他是第一方组件、集成和连接器等,它们都与 Kafka 很好地打包在一起,并且都可以一起使用。所以总的来说,Kafka 可以很容易地处理三个不同的领域。在处理数据方面。

它可以完成传递消息的基本消息传递工作,但它也可以存储消息,包括将它们存储为长期存储,特别是如果您使用诸如事件溯源之类的模式,您知道可以存储如果您愿意,他们的活动会持续多年。

但它也可以处理集成。所以它有这个称为 Kafka Connect API 的组件,它真正专注于通过将来自其他系统的消息导入 Kafka 或将它们从 Kafka 导出到其他一些系统来与其他系统集成。它还有自己的流处理库,称为 Kafka 流 API。你可以在那里做流处理,包括有状态的、操作的、关节的等等。所以它真的是一个非常非常强大的库。

在我今天的演讲中,我们将使用这些东西是,我们将使用 Kafka Connect 部分,以及来自另一个 Apache 项目的连接器:Apache Commons,它也是众所周知的,并提供了数百种不同的集成。使用 Apache Commons 的一种方式也是作为 Kafka Connect 中的连接器。所以我们将使用这个连接器连接到 Twitter API 并在 Twitter 上搜索一些推文。当我们发现符合我们标准的推文时,我们将选取三个,然后将它们作为消息传递给我们的 Kafka 代理。从那里,我们将使用我们的流处理应用程序来获取它,该应用程序将读取推文并使用深度 JAVA 学习库对它们进行一些情绪分析. 所以基本上,应用机器学习来判断消息的情绪,然后判断情绪是正面还是负面,然后它基本上会识别这些消息,并通过将它们发送回 Kafka 代理来自动转发它们,再次, Kafka Connect 会将其拾取并导出回 Twitter API。您将能够将它们视为推文。当然,因为我们在 Kubernetes Day 上发布数据,所以所有这些都将在 Kubernetes 之上运行。它将使用 Strimzi 运算符。

那么让我们来看看它是如何工作的,以及我们如何让它运行起来。如果您想参加此演示,您可以阅读一些内容并使用此标签 #BYOSMA 来构建您自己的社交媒体分析。如果你使用这个标签,情绪分析应用程序应该会自动提取并分析它,你可能会在这个演示中看到你的推文。

因此,让我们首先切换到命令行并检查我们已经运行的内容。正如你所看到的,我已经部署了所有东西以节省下载容器映像和启动东西的时间,但是我在这里运行的是 Kafka 集群,我在这里运行的是 Zookeeper 集群。这里我也有我的 Kafka Connect 服务器,这里是情感分析应用程序,它将分析推文。这里重要的部分是 Strimzi 运算符,如果您遵循运算符的工作方式和运算符模式,那么这就是真正运行和管理所有这些组件的内容,并且插入前面的讨论,您当然可以安装它也使用 OLM 和operatorhub.io。

现在,简单介绍一下operator是如何工作的,你基本上是创建像这样的自定义资源,在这里你指定整个Kafka资源,包括资源、Java配置监听器、安全性,你可以看到只是我的一个小部署家庭集群在这里。我还可以以跟踪或 Prometheus 指标的形式配置授权、身份验证、存储、可观察性,当您部署它时,操作员会负责其余的工作。因为基本上,我在这里展示的所有内容都是以声明方式完成的,并且可以使用诸如 GitOps 之类的东西来完成。您也可以对 Kafka Connect 执行完全相同的操作,因为 Kafka Connect 作为外部义务连接到 Kafka 代理,所以我首先必须创建这个 Kafka 用户,您可以使用它来进行身份验证,我可以指定授权规则。然后我可以指定 Kafka Connect 部署本身,在其中指定哪些连接器插件应加载到我的连接部署中。记住生态的东西和下载第三方插件,运营商会自动为我和这些插件组合一个新的容器镜像并自动部署。

然后我也可以部署实际的连接器。所以我创建了一个名为 Twitter 收件箱的主题。然后我创建了这个 Kafka 连接器,它将使用凭据连接到 Twitter API,然后它将在 Twitter 上搜索我提到的主题标签。每当发布灾难消息时,它会自动从 Twitter API 中删除,并将其作为消息发送到 Kafka 代理。我也有类似的传出消息连接器。所以直接找到它找到的消息,最后一块,我需要建立自己的社交媒体分析,这里是情绪分析,我再次创建一个 Kafka 用户。然后它只是常规的部署绑定,这使得 Kafka 流 API 有点特别,因为它不是一些复杂的框架,有一些工作人员和一些服务器。但它实际上只是一个 Java 库,您可以将其包含在您的应用程序中。所以就我而言,我正在使用Quarkus框架,但您可以使用纯 Java 等,您只需构建并部署它。

现在当它运行时,你可以回到你的浏览器,这是我的 Twitter 帐户,或者我的一个 Twitter 帐户,我可以在推特上发布一些关于 Kubernetes 数据的好消息。他们开始得很好,日程安排上充满了精彩的演讲。希望这足以赶上情绪分析。现在我必须添加技术来构建你自己的社交媒体分析,我现在可以发推文了。现在这个Jakubobot帐户,这是我的机器人帐户,我用来转发内容,如果我在此处按刷新,您将无法在此处看到我的推文。但是你可以看到其他各种推文,“Ricard”,我希望我发音正确,发了一年关于它的推文,它被确定为负面的。哦,那不好。看起来机器学习库可以使用更多的训练,因为我没有看到任何负面的东西。但是你可以看到它是如何转发这些推文的,然后它赶上了,所以这个是积极的,很棒。所以我们可以看到它是如何赶上不同的推文的,以及它是如何进行社交媒体分析的。

现在。没有太多时间详细介绍 Java 应用程序、进行分析以及所有 YAML 文件等,但您可以在此找到所有这些文件,第一个链接将您带到 Github 存储库所有的来源。如果你愿意,你甚至可以在家里自己尝试。感谢收看!



Tags:Apache Kafka   点击:()  评论:()
声明:本站部分内容及图片来自互联网,转载是出于传递更多信息之目的,内容观点仅代表作者本人,不构成投资建议。投资者据此操作,风险自担。如有任何标注错误或版权侵犯请与我们联系,我们将及时更正、删除。
▌相关推荐
Contentsquare 使用微服务和 Apache Kafka 来发送通知
作者 | Rafal Gancarz译者 | 平川策划 | TinaContentsquare 平台的许多场景都需要通知功能。作为其微服务架构的一部分,该公司创建了一个跨多个服务的通用解决方案。在实现过...【详细内容】
2023-10-29  Search: Apache Kafka  点击:(331)  评论:(0)  加入收藏
什么让 Apache Kafka 如此快速?
Kafka 支持高吞吐量、高度分布式、容错性强的平台,能够以低延迟传递消息。有几种技术使 Apache Kafka 如此快速: 低延迟消息传递 批量数据和压缩 水平扩展低延迟消息传递大多...【详细内容】
2023-09-12  Search: Apache Kafka  点击:(352)  评论:(0)  加入收藏
Apache Kafka 移除 ZK Proposals
Zookeeper 和 KRaft这里有一篇 Kafka 功能改进的 proposal 原文。要了解移除 ZK 的原因,可以仔细看看该文章。以下是对该文章的翻译。动机目前,Kafka 使用 Zookeeper 保存与分...【详细内容】
2022-12-27  Search: Apache Kafka  点击:(227)  评论:(0)  加入收藏
使用 Apache Kafka 构建您自己的社交媒体分析
使用在 Kubernetes 上运行的 Kafka 在 API 端点之间流式传输消息。 Apache Kafka 不仅仅是一个消息传递代理。它有一个由不同组件组成的丰富生态系统。有用于导入和导出数据...【详细内容】
2022-09-28  Search: Apache Kafka  点击:(300)  评论:(0)  加入收藏
何时在 Apache Kafka 中使用请求-响应?
每日分享最新,最流行的软件开发知识与最新行业趋势,希望大家能够一键三连,多多支持,跪求关注,点赞,留言。 如何使用 Apache Kafka 实现请求-响应消息交换模式,优缺点,以及与 CQRS 和...【详细内容】
2022-09-25  Search: Apache Kafka  点击:(379)  评论:(0)  加入收藏
通过 Apache Kafka 中的死信队列进行错误处理
Apache Kafka 中用于错误处理的死信队列:来自 Uber 和 Crowdstrike 的替代方案、最佳实践和案例研究。识别和处理错误对于任何可靠的数据流管道都是必不可少的。这篇博文探讨...【详细内容】
2022-09-04  Search: Apache Kafka  点击:(369)  评论:(0)  加入收藏
▌简易百科推荐
为什么Nginx被称为“反向”代理呢?
Nginx(发音为"engine-x")是一款高性能、轻量级的开源Web服务器软件,也可用作反向代理服务器、负载均衡器和HTTP缓存。Nginx之所以有被称为“反向”代理,是因为它充当客户端设备...【详细内容】
2024-02-01  coderidea  微信公众号  Tags:Nginx   点击:(60)  评论:(0)  加入收藏
哪种服务器操作系统更好呢?
在当今的IT世界中,服务器操作系统扮演着至关重要的角色。它们是确保服务器能够高效、安全地运行的关键因素。然而,对于许多人来说,服务器操作系统的种类和特点可能是一个复杂的...【详细内容】
2024-01-30    简易百科  Tags:操作系统   点击:(76)  评论:(0)  加入收藏
什么是VPS服务器
VPS服务器是一种虚拟化技术,它将一台物理服务器划分为多个虚拟的独立服务器,每个虚拟服务器都可以拥有自己的操作系统、运行环境、应用程序等。这种技术使得每个虚拟服务器可...【详细内容】
2024-01-30    简易百科  Tags:VPS服务器   点击:(71)  评论:(0)  加入收藏
VPS服务器下载速度慢?这五招帮你提速
VPS服务器下载速度慢可能会让用户感到沮丧,尤其是对于需要大量下载和上传数据的用户。幸运的是,有一些方法可以帮助您提高VPS服务器的下载速度,使您的在线体验更加顺畅。在本文...【详细内容】
2024-01-30  IDC行业观察者    Tags:VPS服务器   点击:(58)  评论:(0)  加入收藏
美国VPS和英国VPS:地理位置对服务器性能的影响
在今天的数字时代,VPS已成为在线业务和网站托管的关键组成部分。然而,选择合适的VPS主机服务时,地理位置通常被忽视,尽管它对服务器性能有着重要的影响。本文将探讨美国VPS和英...【详细内容】
2024-01-26  IDC行业观察者    Tags:服务器   点击:(55)  评论:(0)  加入收藏
如何判断服务器所需带宽:基于业务需求和流量模式的关键考量
在选择服务器时,带宽是一个重要的考虑因素。带宽的大小直接影响到网站的加载速度和用户的访问体验。那么,如何判断服务器需要多大的带宽呢?本文将为你揭示这一关键问题的答案...【详细内容】
2024-01-26  源库科技    Tags:服务器   点击:(75)  评论:(0)  加入收藏
服务器内存空间及IO操作原理解析
服务器的内存空间分为内核空间和用户空间,而我们编写的程序通常在用户空间中运行。在进行读写操作时,我们直接操作的是用户缓冲区,而用户缓冲区的内容来自于内核缓冲区。这种内...【详细内容】
2024-01-23  王建立    Tags:服务器   点击:(44)  评论:(0)  加入收藏
如何在Java环境中安装Nginx?
1. 下载Nginx:首先,前往Nginx官方网站(https://nginx.org/en/download.html)下载新版本的Nginx。选择适合您操作系统的版本,通常有Windows、Linux和Mac等不同操作系统的版本可供...【详细内容】
2024-01-22  敲代码的小动    Tags:Nginx   点击:(63)  评论:(0)  加入收藏
服务器证书和SSL证书有啥区别?
在互联网经济时代,随着越来越多的信息以及合作都是从企业官网开始的,因此绝大多数企业都会为自己的网站配置SSL证书,以提高安全性。在接触SSL证书时,也有很多人称之为服务器证书...【详细内容】
2024-01-10  安信SSL证书    Tags:服务器证书   点击:(65)  评论:(0)  加入收藏
宝塔面板怎样部署java项目?
宝塔面板怎样部署java项目?在使用宝塔面板部署Java项目之前,需要确保已经安装了Java Development Kit (JDK)。接下来,将介绍如何使用宝塔面板来部署Java项目的步骤。步骤一:安装...【详细内容】
2024-01-09  西部数码    Tags:宝塔面板   点击:(115)  评论:(0)  加入收藏
相关文章
    无相关信息
站内最新
站内热门
站内头条