2017-04-09 7 views
3

私は巨大なデータをcassandraに保存しています。私はpythonを使ってsparkを使ってそれを処理したかったのです。 私はPythonを使ってsparkとcassandraを相互接続する方法を知りたがっています。 私はsc.cassandraTableを使用している人を見ましたが、それは動作していないので、一度にすべてのデータをcassandraから取得してから、スパークさせることは理に適っていません。 提案がありますか?SparkとCassandraからPython

+0

すべてのデータを読み込むのは何ですか?あなたは何を持っていますか? –

答えて

0

私はちょうど私の "短い" 2セントを与えるでしょう。公式の文書はあなたが始めるのにまったく問題ありません。なぜこれが機能しないのかを指定したいかもしれません。つまり、メモリが足りなくなってしまったのでしょうか(単に「ドライバ」メモリを増やす必要があるかもしれません)。また、あなたがその例を提供してくれればうれしいでしょう。

ここに私が持っていた意見や経験があります。通常は必ずしもそうではありませんが、ほとんどの場合、パーティションに複数の列があります。テーブル内のすべてのデータをロードする必要はありませんが、ほとんどの場合、単一のパーティション内で処理を維持できます。データはパーティション内でソートされるため、通常はかなり高速になります。大きな問題を提示しなかった。

casssandraの店舗全体があなたの処理を行うためにサイクルをスパークさせたくない場合は、そこに多くのソリューションがあります。基本的にはクオラの素材になります。 - より良いアッカクラスタのhazelcastなどの間インスタンス通信フレームワークのいくつかの並べ替えを必要とするかもしれない、これは本当に広いトピックです

  • スパーク

    1. すぐにアプリケーションの処理を実行します。ここでは、より一般的なものをいくつか紹介しますストリーミング - ちょうどいくつかの永続化層に読み取るためのマイクロバッチ処理とフラッシュ結果にすぐに処理を行う - カサンドラ
    2. ApacheのFLINKかもしれない - にカサンドラ
    3. ストアデータ、すなわちするために、適切なストリーミングソリューションとプロセスの定期フラッシュ状態を使用しますそれは読まれるはずの方法である - このアプローチは、 (あなたが提供した情報で言い表すのは難しい)
    4. リストは続けてもよい...あなたの仕事がもっと単純なものであれば、ユーザーはキャサンドラの集計機能を定義した。

    ユースケースについての詳細を記入することをお勧めします。多かれ少なかれ私がここで言ったことはかなり一般的であいまいですが、それから再びこのすべてをコメントに入れても意味がありません。

  • 関連する問題