Здравствуйте, коллеги.
Подскажите. пожалуйста, мне нужно обрабатывать огромные массивы текстовой информации, и под это выделен отдельный сервер с 8 ядрами процессора.
При выполнении скрипта
cat rphost*/*.log |
sed -r ‘/^p_[0-9]+: /d’ |
perl -pe ‘s/\xef\xbb\xbf//g; s/\n/@/g; s/\s/ /g; s/^[0-9]+:[0-9]+.[0-9]+-[0-9]+,Context,.,Context=/,Context=/; s/#tt[0-9]+/#tt/g; s/^[0-9]+:[0-9]+.[0-9]+-.*Sql=/\n/; s/,Rows.*Context/Context/g; s/?//g; s/.,Context=/|/g’ |
perl -pe ‘s/"//g’ | perl -pe «s/'//g» |
gawk -F’|’ ‘{if ($2 !~ /^$/) {Req[$1]=$2}} END {for (i in Req) print Req[i]"|"i}’> Res.txt
Обнаружил, что так и не смог нормально утилизировать процессор,
а процессов cat или perl не более четырех.
Работаю под виндой.
Можно ли увеличить число потоков обработки или ускорить как-нибудь обработку? Единомоментно необходиом обрабатывать примерно 800Гб текста