foreach (@DATA) { ($hostid, $time, $get, $post, $conn) = split(/\t/); push @{$munged_data{$hostid}}, {time => $time,get => $get,post=>$post,conn=>$conn}; } #### foreach my $server (@servers) { foreach(@{$munged_data{$server}}) { #do stuff with $_->{time} etc. } }