2017-05-01 13 views
0

大きな行列の大きなディレクトリがあり、そのような行列に高価な演算を適用しています。パイプラインは次のようになります。pyspark/hadoop/etcを使って手続きの速度を上げる方法は?

Directory -> extract matrices -> apply operations -> save in a .csv file 

私は前の "パイプライン"の関数にラップすることに注意してください。これまでのところ、Pythonのマルチプロセッシングライブラリでは、私は1週間で前のパイプラインを適用することができました。しかし、スパークマップで「並列化」することができれば、私は興味があります。前の機能を減らす方法です。したがって、私の仕事はpysparks map reduceで強化できますか?どのように速度を上げることができますか? (私はちょうど2つのノートパソコンを持っています)、あなたは他の人が私のパイプラインの速度を機能を変更せずに増やすことを勧めていますか?

+0

Sparkにジャンプする前にDaskを試してください –

答えて

1

私が考える最も簡単なことは、大きなコンピュータで実行されると思います。 SparkとMap-Reduceは実際にはラップトップ用に設計されたものではなく、サーバー向けのものでした。サーバー(AWS、Google Compute Engine)をレンタルし、より多くのCPUコア(4またはそれ以上)を搭載した大容量サーバー(32GB以上、理想的には64GB以上を推奨)でパイプラインを実行できます。実際にサーバーをレンタルする前に、無料の層(AWSとGoogleの両方に無料の層があります)でいつでもテストを模擬することができます。その後、より多くのサーバーをスローします。

https://aws.amazon.com/ec2/pricing/on-demand/およびhttps://cloud.google.com/compute/pricingには価格設定の詳細が記載されていますが、$ 2 /時間未満で購入できるものは驚きです。

+0

Databricksも使用できます。 https://databricks.com/product/pricing –

関連する問題