in reply to aggregate data
You can use DB to process the data but if you want to do it in Perl, below is some pseudo-code for processing the log data (assuming raw data is saved in a file):
Assuming the 2 numbers on 'another.file' is a typo, otherwise you need to do some more processing with it in the while loopopen INF infile for reading or die cannot read file define data hash while read line from file chomp line next if line start with '#' or empty line split line on ',' and save in @tmp $data->{$tmp[1]}{$tmp[4]}{$tmp[2]} += $tmp[3]; end while print "IP\tWrite/Read\tTotal\tFileName\n\n" foreach ip ( sort keys data ) foreach file ( keys data->{ip} ) foreach rw ( keys data->{ip}{file} total = data->{ip}{file}{rw} print "$ip\t$rw\ttotal\tfile\n" end foreach rw end foreach file end foreach ip
|
|---|