2017-02-28 5 views
1

Amazon AWS EMRクラスターで以下のコードを実行しているときに「スペースなし」エラーが表示されます。AWS EMRでnltkをダウンロードすると、「[Errno 28]デバイスに空きスペースがありません」

import nltk 
nltk.download('all') 

私は以下、コマンドラインでメモリをチェックし、利用可能なメモリavailable memory in the clusterのスクリーンショットです。私を案内してください。

答えて

0

NLTKダウンローダは、Unix/Linuxベースのオペレーティングシステムのディレクトリ/usr/share/nltk_data/にデータをダウンロードします。

十分なディスクスペースと書き込みアクセスがある別の場所でこのデータをダウンロードします。

python -m nltk.downloader -d /mnt/nltk_data all 

デフォルトのデータの場所が変更されているので、それに応じてNLTK_DATAという環境変数を設定します。

export NLTK_DATA=/mnt/nltk_data 

あなたのインスタンスは、ルートの下にディスク容量を使い果たしているようです。 /ディレクトリが100%になっています。続行する前にディスクスペースを解放してください。

+0

お寄せいただきありがとうございます。もう1つ質問があります:s3fsでnltkデータをダウンロードし、そのパスを指す環境変数を設定しても問題ありませんか? s3fsでダウンロードしようとしていますが、データをダウンロードするのにかなりの時間がかかります。 – coder007

+0

S3バケットをマウントポイントにマウントし、パスを「NLTK_DATA」に設定します。私はこれを自分で試したことはありませんが、理想的にはうまくいくはずです。 – franklinsijo

+1

ありがとうたくさん:) – coder007

関連する問題