fiware cygnus文档提到它是基于apacheflume的。但是,是否可以使用本机flume接收器来持久化来自orion上下文代理的事件还不清楚。这是我可以很容易地做到的,很少(或理想的零)编码?如果不是的话——最好知道原因(以及今后是否可以支持这一点)。谢谢!
e5nszbig1#
您可以通过简单地配置本地FlumeFlume来使用它们。天鹅座在配置管理方面没有任何改变,因此您可以配置类似猎户座的接收器或本机接收器。然而,类猎户座Flume和天然Flume之间存在差异。第一种是orion-like接收器以一定的结构存储相关数据,flume-native接收器将存储通知的原始数据。我是说,如果您收到基于json的通知,例如:
{ "subscriptionId" : "51c0ac9ed714fb3b37d7d5a8", "originator" : "localhost", "contextResponses" : [ { "contextElement" : { "attributes" : [ { "name" : "speed", "type" : "float", "value" : "112.9", "metadatas": [] }, { "name" : "oil_level", "type" : "float", "value" : "74.6", "metadatas": [] } ], "type" : "car", "isPattern" : "false", "id" : "car1" }, "statusCode" : { "code" : "200", "reasonPhrase" : "OK" } ] }
orionhdfssink将存储以下内容:
{"recvTimeTs":"1429535775","recvTime":"2015-04-20T12:13:22.41.124Z","fiware-servicePath":"4wheels","entityId":"car1","entityType":"car","attrName":"speed","attrType":"float","attrValue":"112.9","attrMd":[]}
但是本机hdfs接收器(或任何其他接收器)将保存整个通知的json。第二个主要区别是通知的固件服务和固件服务路径的处理。cygnus的接收器能够处理这些值,以便将通知的数据Map到特定的数据结构(文件夹、数据库、表、资源、队列……)。这对于多租户非常重要。第三,cygnus为本地flume未覆盖的存储添加了接收器,如ckan、sth、mongodb、mysql或dynamodb。还有许多其他区别:分组规则的用法。管理界面。oauth2身份验证,这是官方固件的机制。...
1条答案
按热度按时间e5nszbig1#
您可以通过简单地配置本地FlumeFlume来使用它们。天鹅座在配置管理方面没有任何改变,因此您可以配置类似猎户座的接收器或本机接收器。
然而,类猎户座Flume和天然Flume之间存在差异。
第一种是orion-like接收器以一定的结构存储相关数据,flume-native接收器将存储通知的原始数据。我是说,如果您收到基于json的通知,例如:
orionhdfssink将存储以下内容:
但是本机hdfs接收器(或任何其他接收器)将保存整个通知的json。
第二个主要区别是通知的固件服务和固件服务路径的处理。cygnus的接收器能够处理这些值,以便将通知的数据Map到特定的数据结构(文件夹、数据库、表、资源、队列……)。这对于多租户非常重要。
第三,cygnus为本地flume未覆盖的存储添加了接收器,如ckan、sth、mongodb、mysql或dynamodb。
还有许多其他区别:
分组规则的用法。
管理界面。
oauth2身份验证,这是官方固件的机制。
...