0

spark-cassandraコネクタを使用してCassandraに接続する2つのスパークジョブがあります。 https://github.com/datastax/spark-cassandra-connectorcassandraの2つの異なるセッションから同じキースペースから読み書きします

最初のジョブでは、カフカを使用してSparkでデータをストリームし、リアルタイムで処理します。各メッセージを処理した後、メッセージはCassandraに保存されます。

第2ジョブは、cassandraからデータを読み取るために10秒ごとに配置されるバッチジョブです。

したがって、1つのストリーミングスパークジョブがデータをCassandraキースペースに書き込んでおり、他のバッチジョブが何度も展開されてSAMEキースペースからデータを読み取ることが繰り返し行われています。私の質問は:

2つのスパークジョブから2つのセッションを開いて、同じキースペースを読み書きできますか?

注:両方のスパークジョブから同じユーザー名/パスワードを使用してcassandraに接続しています。

+0

バッチジョブを累積するか、最後の10秒だけにしますか? – RussS

+0

私はそれを委託的にしたい。 –

答えて

0

解決策が見つかりました。問題はカサンドラとは関係がありませんでした。私のスパーククラスターは非常に限られたリソースしか持っていませんすべてのリソースは私のストリーミングジョブによって奪取されました。バッチジョブを配備したとき、割り当てられるリソースはなく、私の仕事は待機状態でした。他の仕事が完了したら、私のバッチジョブを実行することができました。

ドライバとエグゼキュータの両方に1コアと1ギガバイトのRAMを使用するように、両方のスパークジョブの設定を変更しました。今、私の仕事の両方が問題なく並行して実行されます。どちらのジョブも同じユーザー名/パスワードを使用してCassandraに接続しています。一方のジョブはcassandraに書き込み中ですが、もう一方のジョブは同じキースペースから読み取り中です。私の鍵空間のための

複製因子は、私のバッチ・ジョブがハングして以来1

で、私は同じ鍵空間への書き込み/読んでいますので、問題はカサンドラでなければならないことを考えました。これは私の初めてのキャッサンドラとのやり取りでした....

関連する問題