1

数億行のシーケンシャル ファイル (CSV) 出力を正常に生成するジョブがあります。出力が 100 の個別のシーケンシャル ファイルに書き込まれ、それぞれが 100 万行である例を誰かが提供できますか?

シーケンシャル ファイル ステージはどのようなもので、どのように構成されていますか?

これは最終的に、大きなテキスト ファイルを表示できる特別なテキスト エディターがなくても、QA が個々の出力のいずれかを確認できるようにするためです。

4

1 に答える 1

1

@Mr. からの提案に基づいています。Llama と今後の解決策がないことから、スケジュールされた DataStage イベントの最後に単純なスクリプトを実行することにしました。

#!/bin/bash
# usage:
# sh ./[script] [input]

# check for input:
if [ ! $# == 1 ]; then
  echo "No input file provided."
  exit
fi

# directory for output:
mkdir split

# header without content:
head -n 1 $1 > header.csv

# content without header:
tail +2 $1 > content.csv

# split content into 100000 record files:
split -l 100000 content.csv split/data_

# loop through the new split files, adding the header
# and a '.csv' extension:
for f in split/*; do cat header.csv $f > $f.csv; rm $f; done;

# remove the temporary files:
rm header.csv
rm content.csv

粗雑ですが、この場合はうまくいきます。

于 2014-08-08T15:25:27.247 に答える