Bluemix Kafka流

时间:2016-09-14 18:36:42

标签: d3.js stream apache-kafka ibm-cloud apache-kafka-streams

最新版本的IBM Message Bus是否支持Kafka Streams (在此描述:http://www.confluent.io/blog/introducing-kafka-streams-stream-processing-made-simple/)。有关如何执行此操作的任何示例/示例?如果是,可以使用node.js吗?

我想做的是

  1. 将源数据库(Cloudant)中的数据流传输到Kafka流(Bluemix中存在连接器服务 - BETA服务)

  2. 使用Kafka Streams汇总数据(摘要,计数等)

  3. Web Dashboard应用程序 - 前端(Node.JS,D3.JS)实时使用流和更新仪表板。

  4. 谢谢

1 个答案:

答案 0 :(得分:9)

您绝对可以使用node.js发布和订阅Kafka(也称为IBM MessageHub),您可以在各种仪表板中可视化Kafka数据。最近我一直在使用Node-Red以及node-red-dashboard和node-red-contrib-web-worldmap,效果很好。

来自nodejs应用程序的发布/订阅可以通过Confluent REST代理(IBM MessageHub使用)或通过本机node.js客户端完成,就像暴雪在librdkafka上编写的那样(参见https://github.com/blizzard/node-rdkafka)。 Confluent编写了一些nodejs包装函数,以便更容易使用REST代理(参见https://github.com/confluentinc/kafka-rest-node

就Kafka Streams而言,今天支持的主要语言是Java和Scala。您可以将Javascript中的节点客户端与Java中的Streams应用程序混合使用,没有任何问题。 Kafka Streams仅作为Java库实现,因此您的流应用程序肯定会在虚拟机或容器中的Bluemix中运行,并且不需要任何其他集群管理器或第三方基础架构。

更新:IBM宣布MessageHub现在支持Kafka Streams

https://developer.ibm.com/messaging/2017/06/28/messagehub-now-runs-kafka-0-10-2-1-supports-streams/