2

cygnus で構成された Context Broker があり、発生している問題は非常に奇妙です。

これは、Context Broker に新しいタイプの要素を挿入したときに発生し、その要素を cosmos に送信するためのサブスクリプションを持っています。Cygnus はそれを適切に送信し、対応する hdfs ファイルを cosmos に作成しますが、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

これら 2 つのイベントの間に、hdfs に追加する必要があるすべてのアクションが追加されますが、エラーが発生するまで追加されません。

Cygnus のバージョン: 0.8.2

オープンコスモスを使用しています。

4

1 に答える 1

0

これは Cygnus 0.8.2 でよく知られている問題です。ここで回避策を見つけることができます。それにもかかわらず、これはCygnus 0.9.0で修正されました(ソースからインストールする必要がないように、その日に FIWARE リポジトリに RPM をアップロードします)。

于 2015-10-07T07:53:28.367 に答える