kafka是否具有规则引擎的能力?
Does kafka holds capability of rule-engine?
我们正在使用 kafka 进行消息传递和更多的东西,但现在我们需要某种规则引擎来根据某些规则进行数据处理。 kafka 是否具有这样的功能(规则引擎),或者我们必须仅使用第三方规则引擎(例如 https://camunda.com/dmn/ )并与 kafka 集成。
Apache Kafka 无需使用第三方规则引擎。作为项目的一部分,Kafka Streams and also to ease off a bit the need to write Java code to express rules there is ksqlDB 基于 ANSI SQL.
的子集
虽然这些选项本身不一定是规则引擎;它们共享相同的语义:给定中间处理输出基于计算的相关结果。区别在于如何而不是什么。所以我认为它们是不错的替代品。
您也可以随时将两者结合起来。一些规则引擎,例如 Red Hat 的 Drools,是基于 Java 的,因此;可以从 Kafka Streams 处理器轻松访问。只要 if-then-else 规则 运行 在 Kafka Streams 应用程序的同一个 JVM space 中,除了可能更大的 JVM 堆之外,您不会有任何性能损失。
我们正在使用 kafka 进行消息传递和更多的东西,但现在我们需要某种规则引擎来根据某些规则进行数据处理。 kafka 是否具有这样的功能(规则引擎),或者我们必须仅使用第三方规则引擎(例如 https://camunda.com/dmn/ )并与 kafka 集成。
Apache Kafka 无需使用第三方规则引擎。作为项目的一部分,Kafka Streams and also to ease off a bit the need to write Java code to express rules there is ksqlDB 基于 ANSI SQL.
的子集虽然这些选项本身不一定是规则引擎;它们共享相同的语义:给定中间处理输出基于计算的相关结果。区别在于如何而不是什么。所以我认为它们是不错的替代品。
您也可以随时将两者结合起来。一些规则引擎,例如 Red Hat 的 Drools,是基于 Java 的,因此;可以从 Kafka Streams 处理器轻松访问。只要 if-then-else 规则 运行 在 Kafka Streams 应用程序的同一个 JVM space 中,除了可能更大的 JVM 堆之外,您不会有任何性能损失。