创建Kafka主题要求?
Create Kafka topic requirements?
我有可以按国家、城市分组的数据(订单)。
我可以创建超过 100 个带有国家名称的主题和十亿个带有城市名称的主题吗?
主题呈现有哪些要求?
你能展示一个好的主题用法吗?
Could I create over 100 topics with names of countries and billion
topic with city names?
- 创建太多主题不是一个好的设计,因为它们很难维护。
- 国家、城市等信息不会经常更改,也不是流数据。因此,将它们存储在数据库中比将它们存储在主题中更有意义。
如果它与订单相结合,它可以使 sense 将它们存储在主题中,即订单由 country、city 等可以在 Kafka 流中使用
map()
完成。
Could you demonstrate a good topic usage?
因为订单是流数据,新订单会被添加、更改等,你可以有一个名为 orders
的主题,其中键为 order_id
,值为 Order
对象,其中 Order
对象包含 country
、city
等属性
现在,您可以使用此主题并以不同方式存储数据:
维护国家及其相应 Order
对象(或)order_id
的数据结构,如 table 或地图(持久或内存中) s 使用它你可以得到订单对象。
请注意,由于每个国家/地区可能有很多订单,因此数据结构应该类似于国家/地区和订单列表。
很简单,就是将订单数据作为 table 直接存储到 RBDMS 中,以 order_id
作为主键并将 Order
对象映射到一个数据库 table。然后使用SQL或者ORM框架,就可以查询了。
流式 Kafka 数据(主题)也可以聚合、分组、连接,可以使用 Kafka 流放入 table(持久或内存中)等。
你可以看一些Kafka streams examples。
您可能还想查看 KSQL,它允许您在 Kafka 流之上拥有 SQL。
我有可以按国家、城市分组的数据(订单)。
我可以创建超过 100 个带有国家名称的主题和十亿个带有城市名称的主题吗?
主题呈现有哪些要求?
你能展示一个好的主题用法吗?
Could I create over 100 topics with names of countries and billion topic with city names?
- 创建太多主题不是一个好的设计,因为它们很难维护。
- 国家、城市等信息不会经常更改,也不是流数据。因此,将它们存储在数据库中比将它们存储在主题中更有意义。
如果它与订单相结合,它可以使 sense 将它们存储在主题中,即订单由 country、city 等可以在 Kafka 流中使用
map()
完成。
Could you demonstrate a good topic usage?
因为订单是流数据,新订单会被添加、更改等,你可以有一个名为 orders
的主题,其中键为 order_id
,值为 Order
对象,其中 Order
对象包含 country
、city
等属性
现在,您可以使用此主题并以不同方式存储数据:
维护国家及其相应
Order
对象(或)order_id
的数据结构,如 table 或地图(持久或内存中) s 使用它你可以得到订单对象。请注意,由于每个国家/地区可能有很多订单,因此数据结构应该类似于国家/地区和订单列表。
很简单,就是将订单数据作为 table 直接存储到 RBDMS 中,以
order_id
作为主键并将Order
对象映射到一个数据库 table。然后使用SQL或者ORM框架,就可以查询了。
流式 Kafka 数据(主题)也可以聚合、分组、连接,可以使用 Kafka 流放入 table(持久或内存中)等。
你可以看一些Kafka streams examples。
您可能还想查看 KSQL,它允许您在 Kafka 流之上拥有 SQL。