in reply to map into a multidimensional hash

Nobody ° offered a postfix for, so for completeness
$hash{ delete $_->{id_1} }{ delete $_->{id_2} } = $_ for @ary_of_hrefs ;

Untested, but most code was copied from marioroy's post :)

Personally I try to avoid map statements in void context

For clarity I strongly recommend commenting this with a sample of the data before and after.

(addicted to the Perl Programming Language and ☆☆☆☆ :)
Je suis Charlie!

update

°) Sorry Eily did, tldr my apologies :)