【发布时间】:2020-07-01 07:13:39
【问题描述】:
我有一个已经有记录的 Azure EventHub。我需要获取此 EventHub 中唯一分区键的列表。我需要将其用于处理器/消费者中的特定自定义逻辑。感谢任何建议或解决方法。
【问题讨论】:
标签: partitioning partition azure-eventhub
我有一个已经有记录的 Azure EventHub。我需要获取此 EventHub 中唯一分区键的列表。我需要将其用于处理器/消费者中的特定自定义逻辑。感谢任何建议或解决方法。
【问题讨论】:
标签: partitioning partition azure-eventhub
我不确定您是否可能将partition id 和partition key 混为一谈;前者是事件中心的核心概念,可以使用任何受支持语言的 SDK、命令行或 REST 接口直接查询。 .NET 客户端库的示例可以在here 找到。
事件中心服务不会保留或公开发布事件时使用的分区键。发布带有分区键的事件批次时,服务会根据该键生成一个散列,并使用该散列值来选择应该将事件路由到的分区。保证相同的键产生相同的散列和路由到相同的分区。由于给定 key 的 hash 值是稳定的,并且 key 本身对服务没有意义,所以它是按需计算的。
在您的情况下,听起来您想了解当您从服务中读取事件时,在下游消费者中发布事件时使用了什么键。我建议使用事件的Properties 包来按住您选择的键并将其与事件相关联。
Properties 旨在保存对您的应用程序有意义的任意数据,并在事件通过系统时将其与您的事件捆绑在一起。可以在here 找到使用 .NET 客户端库在 Properties 中包含自定义元数据的示例。
【讨论】: