巨大な100GBのデータをインポートしようとしていますが、スペースが利用できないなどのエラーが発生してしまいます。私のPC上の一時的なスペース?SASは指定された場所以外の場所にインポート中に一時ファイルを作成しますか
マイライブラリ参照はサーバーに対するものです。
巨大な100GBのデータをインポートしようとしていますが、スペースが利用できないなどのエラーが発生してしまいます。私のPC上の一時的なスペース?SASは指定された場所以外の場所にインポート中に一時ファイルを作成しますか
マイライブラリ参照はサーバーに対するものです。
これはサーバーの設定によって異なります。
あなたは、このように見、最初のチェック性能を持つ:
のprocオプショングループ=パフォーマンス。 実行; [SAS CONFIG] /Lev1/SASApp/sasv9_usermods.cfg [SASホーム] /SASFoundation/9.3/sasv9_local.cfg
あなた:あなたはたとえば見つける必要がある設定ファイルで
その後、
-bufsize 64K
ようなオプションを微調整する必要があり210
私はそれは超簡単だバッファを大きくすると、Linuxでビットを助け、私はあなたがいくつかのファイルにファイルを分割することをお勧めすることができます推測:
split --bytes=1000M /path/to/file.csv /path/to/csv/filesplit_
そしてあなたは、マクロ機能で汎用的なインポートを作成することができますし、
%import(filesplit_1);
%import(filesplit_2);
%import(filesplit_3);
%import(filesplit_4);
..
各インポート後、oracleのようなDBMSシステムにデータを挿入できます。 proc sqlパススルーを使用して挿入するときに、BULKLOADオプションを使用することを忘れないでください。
あなたが読んでいるテキストファイルについて話している場合は、スペースがある場所に直接書き込んでください。
filename in '/location1/bigfile.csv';
libname out '/location2/mysasdata';
data out.bigfile ;
infile in dsd firstobs=2 truncover ;
length var1 8 var2 $100 ..... ;
input var1 var2 .... ;
run;
100GBのデータはどこから来ますか?あなたのサーバ上でインポートするSASワークやライブラリに100GBのストレージがない可能性はありますか? – user2877959
100GBのデータはサーバーに保存されているtxtファイルで、サーバーには空き容量がありますが、SASワークは –
ではありません。ループを使用してデータを1行ずつ増分(N行)にインポートし、データを格納するストレージ領域を持つライブラリの結果に毎回追加することで、回避することができます。 – user2877959