2016-12-11 4 views
0

DataStax Enterprise(DSE)5.0を使用してRDBMS(Sybase ASE)からCassandraに大きなBLOBデータ(約10 TB)をインポートしようとしています。RDBMS(Sybase)からCassandraにインポートする

sqoopはまだDSE 5.0でこれを行うための推奨方法ですか?リリースノート(http://docs.datastax.com/en/latest-dse/datastax_enterprise/RNdse.html):

HadoopおよびSqoopは推奨されていません。代わりにSparkを使用してください。 (DSP-7848)

したがって、SybaseからデータをロードしてデータフレームをCassandraテーブルに保存するには、JDBCデータソースでSpark SQLを使用する必要がありますか?

これを行うより良い方法はありますか?どんな助言/提案も感謝されます。

編集:DSEのドキュメント(http://docs.datastax.com/en/latest-dse/datastax_enterprise/spark/sparkIntro.html)によると、sparkからBLOB列への書き込みはサポートされていません。

次スパークの機能とAPIがサポートされていません。

すべてのタイプの列を読み取るスパーク

からBLOBカラムへの書き込みがサポートされています。ただし、直列化する前に、BLOBのコレクションをバイト配列に変換する必要があります。

答えて

0

大規模なデータセットのETL用スパークは、分散型傷害を実行するため、推奨されます。 OracleデータをSpark RDDまたはデータフレームにロードし、saveToCassandra(keyspace、tablename)を使用するだけで済みます。 Cassandra Summit 2016は、このトピックについて深く説明し、例を提供するJim HatcherのプレゼンテーションUsing Spark to Load Oracle Data into Cassandraを持っていました。

Sqoopは推奨されていませんが、DSE 5.0でも動作するはずです。その一度限りの負荷で、Squoopとの互換性があるなら、それを試してみてください。

+0

ありがとうございました。私はETL/sparksを使ってHDFSにデータをロードしました。しかし、sparkからBLOB列を書くことはDSE 5.0ではサポートされていないようです。これは一度の負荷なので、おそらくsqoopを使用します。 – Sanoj

関連する問題