2

我们使用 cygnus 配置了上下文代理,而我们遇到的问题非常奇怪。

当我在 Context Broker 中插入一种新类型的元素时会发生这种情况,并且我们订阅了将该元素发送到 cosmos。Cygnus发送正常,并在cosmos中创建了对应的hdfs文件,但是cosmos尝试创建Hive表时出现错误。

这就是天鹅座日志所说的。

05 oct 2015 12:51:43,777 INFO  [SinkRunner-PollingRunner-DefaultSinkProcessor] 
(com.telefonica.iot.cygnus.backends.hdfs.HDFSBackendImpl.provisionHiveTable:225)
- Creating Hive external table=[table_name]

几个小时后,我们收到以下消息:

05 oct 2015 18:00:02,489 ERROR [SinkRunner-PollingRunner-DefaultSinkProcessor] 
(com.telefonica.iot.cygnus.backends.hive.HiveBackend.doCreateTable:77)  
- Runtime error (The Hive table cannot be created.
Hive query='create external table [table_name] (columns) row format serde
'org.openx.data.jsonserde.JsonSerDe' location '[hdfs_folder_location]''. 
Details=org.apache.thrift.transport.TTransportException)
05 oct 2015 18:00:02,490 WARN  [SinkRunner-PollingRunner-DefaultSinkProcessor] 
(com.telefonica.iot.cygnus.backends.hdfs.HDFSBackendImpl.provisionHiveTable:237)
- The HiveQL external table could not be created, but Cygnus can continue working... Check your Hive/Shark installation

在这两个事件之间,所有应该添加到 hdfs 中的动作,在我们得到错误之前不会被添加。

天鹅座版本是:0.8.2

我们正在使用开放的宇宙。

4

1 回答 1

0

这是 Cygnus 0.8.2 中的一个众所周知的问题,您可以在此处找到解决方法。尽管如此,这已在Cygnus 0.9.0中得到修复(为了避免您必须从源代码安装它,我将在当天上传一个 RPM 到 FIWARE 存储库)。

于 2015-10-07T07:53:28.367 回答