1

データを変換して、あるクラスターから別のクラスターにデータを移行する必要があります。このチュートリアルに従って、ケトルを使用してそれを実行しようとしています:

http://wiki.pentaho.com/display/EAI/Cassandra+Input

しかし、これを使用して(Cassandraの以前のバージョンで)cliを介して作成された動的な列ファミリーから読み取ろうとしています:

read_repair_chance=0 および gc_grace=0 で列ファミリー IndividualMorphsIndividuals を作成します。

次のように Cassandra 入力ステップを作成します。

ここに画像の説明を入力

[スキーマの表示] をクリックすると、次の情報が表示されます。

列ファミリ: IndividualMorphsIndividuals キー バリデータ: org.apache.cassandra.db.marshal.BytesType 列コンパレータ: org.apache.cassandra.db.marshal.BytesType デフォルトの列バリデータ: org.apache.cassandra.db.marshal.BytesType 読み取り修復チャンス: 0.0 GC 猶予: 0 最小圧縮しきい値: 4 最大圧縮しきい値: 32 書き込み時に複製: true

Column metadata:

しかし、ステップをプレビューしようとすると、次のエラーが発生します。

2013/11/06 08:17:22 - Cassandra Input.0 - Getting meta data for column family IndividualMorphsIndividuals
2013/11/06 08:17:22 - Cassandra Input.0 - Executing query SELECT * FROM IndividualMorphsIndividuals;  ...
2013/11/06 08:17:22 - Cassandra Input.0 - ERROR (version 4.4.0-stable, build 17588 from 2012-11-21 16.02.21 by buildguy) : Unexpected error
2013/11/06 08:17:22 - Cassandra Input.0 - ERROR (version 4.4.0-stable, build 17588 from 2012-11-21 16.02.21 by buildguy) : org.pentaho.di.core.exception.KettleException: 
2013/11/06 08:17:22 - Cassandra Input.0 - ERROR (version 4.4.0-stable, build 17588 from 2012-11-21 16.02.21 by buildguy) : Cant find a deserializer for type "{0}"
2013/11/06 08:17:22 - Cassandra Input.0 - ERROR (version 4.4.0-stable, build 17588 from 2012-11-21 16.02.21 by buildguy) : 
2013/11/06 08:17:22 - Cassandra Input.0 - ERROR (version 4.4.0-stable, build 17588 from 2012-11-21 16.02.21 by buildguy) :  at org.pentaho.cassandra.CassandraColumnMetaData.getColumnValue(CassandraColumnMetaData.java:965)
2013/11/06 08:17:22 - Cassandra Input.0 - ERROR (version 4.4.0-stable, build 17588 from 2012-11-21 16.02.21 by buildguy) :  at org.pentaho.cassandra.CassandraColumnMetaData.getColumnName(CassandraColumnMetaData.java:878)
2013/11/06 08:17:22 - Cassandra Input.0 - ERROR (version 4.4.0-stable, build 17588 from 2012-11-21 16.02.21 by buildguy) :  at org.pentaho.di.trans.steps.cassandrainput.CassandraInputData.cassandraRowToKettle(CassandraInputData.java:567)
2013/11/06 08:17:22 - Cassandra Input.0 - ERROR (version 4.4.0-stable, build 17588 from 2012-11-21 16.02.21 by buildguy) :  at org.pentaho.di.trans.steps.cassandrainput.CassandraInput.processRow(CassandraInput.java:271)
2013/11/06 08:17:22 - Cassandra Input.0 - ERROR (version 4.4.0-stable, build 17588 from 2012-11-21 16.02.21 by buildguy) :  at org.pentaho.di.trans.step.RunThread.run(RunThread.java:50)
2013/11/06 08:17:22 - Cassandra Input.0 - ERROR (version 4.4.0-stable, build 17588 from 2012-11-21 16.02.21 by buildguy) :  at java.lang.Thread.run(Thread.java:722)
2013/11/06 08:17:22 - Cassandra Input.0 - Finished processing (I=0, O=0, R=0, W=0, U=0, E=1)
2013/11/06 08:17:22 - Spoon - The transformation has finished!!
2013/11/06 08:17:22 - Transformation 1 - ERROR (version 4.4.0-stable, build 17588 from 2012-11-21 16.02.21 by buildguy) : Errors detected!
2013/11/06 08:17:23 - Transformation 1 - ERROR (version 4.4.0-stable, build 17588 from 2012-11-21 16.02.21 by buildguy) : Errors detected!

Kettle でこの種のカラムファミリーを操作する方法を知っている人はいますか?

ありがとう

4

1 に答える 1

0

私もこの問題に悩まされていましたが、解決策が見つからなかったため、CLI の代わりに変更しました。cql (cassandra クエリ言語) を使用し、pdi 4.4 を使用していたため、CQL 用のプラグインを 1 つ追加する必要があり、簡単に接続できます。カサンドラからやかんへ。

CQLを介してcassandraを接続するためのリンクに従ってください

CQL を介した Cassandra の接続

于 2013-11-18T09:40:01.770 に答える