【问题标题】:Connecting Bluemix virtual sensors to an instance of Spark service将 Bluemix 虚拟传感器连接到 Spark 服务的实例
【发布时间】:2015-11-28 03:31:12
【问题描述】:
我是 bluemix 和 Apache Spark 的新手。我只是想使用 IBM analytics for Apache Spark 执行一项小任务,我想使用 Bluemix 的虚拟传感器 (https://virtualsensors.mybluemix.net/) 创建一个虚拟传感器,并将生成的数据用作 spark 流服务的输入,并基于输入数据。但是,我不知道如何连接这两个应用程序的实例,我被卡住了。如果有人可以帮助我,那就太好了。
谢谢,
【问题讨论】:
标签:
apache-spark
ibm-cloud
spark-streaming
【解决方案1】:
根据文档,虚拟传感器只是使用 MQTT 发出传感器数据,所以我想这就像以您选择的语言导入 MQTT 库并简单地将其连接到虚拟传感器一样简单。
您还没有真正指定您在 Spark 方面使用的语言,但他们可能都会改用其中一种语言:
-
Paho(Python、Java、Scala)
-
Scala-MQTT-client(特别是 Scala)
关于如何使用它,Paho 项目还包括一些关于 MQTT 工作原理的基本文档。
MQTT FAQ 和 this youtube video 中介绍了其他一些基础知识。
如果您需要将 JAR 添加到笔记本中,您应该可以使用 %AddJar 命令。您可以阅读 here 的相关信息 - 向下滚动到标题为“将您的自定义库 jar 部署到 Jupyter Notebook”的部分以获取说明和示例使用。
【解决方案2】:
我希望您通过 this recipe 了解如何配置在 IBM Bluemix 中运行的 Apache Spark Streaming 以从实际传感器设备获取数据。我相信,您也可以调整主题 id 以从虚拟传感器获取数据。
另外,请查看 Github project,它显示了如何创建 Spark-mqtt-connector Dstream,以便 Spark 服务可以实时使用事件。