0
作为存储系统的Kafka可以是长期数据的数据存储。它可以复制和分发没有问题。那么我可以从Kafka中的所有历史数据创建RDD并创建批处理视图,然后将其与Spark Streaming Views结合使用?我可以使用Apache Kafka作为批处理层来保存Lambda架构中的历史数据吗?
作为存储系统的Kafka可以是长期数据的数据存储。它可以复制和分发没有问题。那么我可以从Kafka中的所有历史数据创建RDD并创建批处理视图,然后将其与Spark Streaming Views结合使用?我可以使用Apache Kafka作为批处理层来保存Lambda架构中的历史数据吗?
tl; dr是的,但为什么?
据马兹弥敦道,以前Twitter和拉姆达建筑笔者,这些都是主数据集的存储要求在批层:
卡夫卡满足所有这些,所以在技术上它确实可以将主数据集存储在批处理图层中。
然而,由Jay Kreps(LinkedIn之前)设计的Kappa Architecture比Lambda架构更容易使用 - 而且我认为在满足像IoT这样的现代用例方面更为有效。您需要做的就是分发,可扩展,不可变,可配置的流媒体,这正是Kafka提供的。那么为什么不这样做呢?
在Lambda架构的批处理层中使用Kafka进行数据存储的目的是未充分利用其功能 - 并且仅仅是为了将其强制进入实际上效率较低的架构。
卡夫卡满足**可调储存和处理成本**要求? 它有像hdfs一样的良好压缩吗? –