我对如何在 Cygnus 订阅 Orion Context Broker 并且 Cygnus 必须在 Cosmos 中持久化数据的架构中持久化数据存在疑问。是否有必要实现自定义 WebHDFS 客户端来将数据从 Cygnus 持久化到 Cosmos,或者如果我们通过 CLI 配置 Cosmos 是否可以自动存储?在阅读了一些文档之后,我不知道这个“最后一步”是否可以通过使用 CLI 的配置来完成,或者是否需要自定义客户端。什么时候不需要自定义 WebHDFS 客户端?
问问题
180 次
1 回答
1
如前所述,Cygnus 订阅 Orion 是为了在它们的任何属性发生变化时接收有关某些所需实体的通知。
那会发生什么?Cygnus 使用 WebHDFS REST API 将数据写入 Cosmos HDFS,通常是每个通知实体的文件。最初,如果文件不存在,则使用来自 REST API 的“创建”操作;如果它已经存在,则使用“追加”操作。
上面的文件是在哪里创建的?Cygnus HDFS 文件路径为:
/user/<your_cosmos_username>/<notified_fiware_service>/<notified_fiware_servicePath>/<built_destination>/<built_destination>.txt
notified_fiware_service
和notified_fiware_servicePath
是Orion在通知中发送的Http headers ;它们是关于如何组织数据的。通常built_destination
是连接通知entityId
和 的结果entityType
。
最后,your_cosmos_username
是您在 FIWARE LAB Cosmos 部署中的 Linux 和 HDFS 用户名。这是通过在http://cosmos.lab.fi-ware.org/cosmos-gui/上使用您的 FIWARE LAB 凭据登录获得的。你一生只需要这样做一次;比方说,这是一个创建 Unix 用户名和 HDFS 用户空间的配置步骤。
于 2015-04-29T07:05:12.313 回答