Kafka Data Hub Design ============================================================================== 1. 中心化的 Data Hub 要解决什么问题? ------------------------------------------------------------------------------ 1. 首先, 没有银弹. 基于 Kafka 的 Data Hub 要解决的问题都是基于流数据处理. Kafka 不是一个计算引擎, 也不是一个 ETL 引擎. Kafka 是一个中间件, 能让基于不同技术的 计算引擎 和 ETL 引擎 配合起来. 2. 一次生产, 多次消费. 当出现一个新的源数据流的时候, 我们就可以将数据打入 Kafka Topic. 先不管我们要怎样消费它. 当想到一个能消费这个数据并带来价值的的方式, 我们就可以启用 1 个 Consumer Group. 以后能想到新的消费方式, 可以很快的启用新的 Consumer Group. 这和 DataLake 的功能很相似, 先不管三七二十一把数据存入 DataLake. 想到以后如何使用这些数据的时候再处理这些数据. 3. 基础设施复用. 2. 中心化的 Data Hub 的关键技术挑战是什么? ------------------------------------------------------------------------------ 1. Multi-Tenant within a Topic. 详情请参考 :ref:`aws-kafka-multi-tenant` 2. 权限管理. 作为一个 Hub, 生产者无脑的将数据打入 Kafka. 消费者来选择感兴趣的 Topic. 1. 消费者如何在没有权限的情况下 Explore 来自不同 Topic 的数据? 2. 如何高效管理庞大数量的访问权限? (Principal / Resource / Action) 3. 如何