【问题标题】:Kafka operations [closed]卡夫卡操作[关闭]
【发布时间】:2021-03-29 13:45:36
【问题描述】:

您好,我对 Kafka 操作非常陌生,我从中了解到的只是事件数据存储在所谓的主题中。这些主题就像日志一样被写入磁盘,甚至被复制。

什么是生产者和消费者?它们本质上是否只是应用程序的一部分,例如一个生产者数据和另一个请求数据的微服务?

我的问题是传统数据库和 Kafka 主题之间到底有什么区别? 只是数据类型不同吗? 在数据库中存储对象,在主题中存储事件?它们都写入硬盘?

Kafka真正解决了什么问题? 分散式微服务存在一些问题,依赖于微服务

Kafka 是如何解决这个问题的?

谢谢大家

【问题讨论】:

    标签: apache-kafka architecture software-design


    【解决方案1】:

    首先,生产者和消费者可以是同一个应用程序的一部分。使用 Kafka 不需要“微服务”。

    一个生产者数据和另一个请求数据?

    是的

    传统数据库和 Kafka 主题之间到底有什么区别?

    不清楚您认为什么是“常规”数据库,但 Kafka 本身没有查询功能,也没有任何定义的记录模式。此类功能由外部工具启用

    它们都写入硬盘?

    并非所有数据库都写入磁盘。 Kafka 确实写入磁盘

    Kafka真正解决了什么问题?

    网站上提到了use cases,但最初的目标是将日志/指标聚合到数据湖中,而不是服务内通信。

    但是,如果您有点对点的依赖链,则需要确保该链中的所有应用程序都已启动,而它们可能偶尔会失败并从停止从复制日志读取的位置重新开始

    p>

    【讨论】:

      【解决方案2】:

      数据存储在所谓的主题中。这些主题就像日志一样被写入磁盘,甚至被复制。

      Kafka 中的数据被视为事件。每个事件通常代表某事发生了。该事件存储在 Kafka 代理的给定主题中。主题可以看作是一种将数据组织成类别的方式。

      什么是生产者和消费者?

      生产者创建事件并将它们提交给 Kafka 代理,然后这些代理将这些事件存储在适当的主题中。消费者可以从上述数据中消费,拉取生产者创建的事件。

      我的问题是传统数据库和 Kafka 主题之间到底有什么区别?

      很难定义传统的。但我想不,Kafka 不是一个传统的数据库。您可能会经常发现自己在 kafka 中使用其他数据库。 Kafka 主要适用于捕获实时事件,存储它们以便实时将它们引导到其他地方(历史检索也是可能的)。

      Kafka真正解决了什么问题?

      处理需要事件流的任何事情。它可以持久地执行此操作,并在处理大量数据时提供大量保证和灵活性。

      总结:我建议您先阅读在Kafka Documentation 找到的文档的第一部分。 如果您真的想深入了解,您还可以找到一本名为 Kafka:最终版的书。

      【讨论】:

        猜你喜欢
        • 2017-07-14
        • 1970-01-01
        • 2018-03-28
        • 2019-06-11
        • 1970-01-01
        • 2015-12-14
        • 1970-01-01
        • 2013-05-03
        • 1970-01-01
        相关资源
        最近更新 更多