I prefer to
use storable and place big data structures into a
storable file. It's a bit like
do/require FILE but easier and faster but i suppose the main advantage is it's ability to compact data by freezing it for later use or shared data in inter-process communication.
There's also the
Perl Data Language which allows one to efficiently store data and in the process make these operations faster. It is not readily intuitive and has a high learning curve but definitely worth considering.
update: removed question about pickle files.
perl -e '$,=$",$_=(split/\W/,$^X)[y[eval]]]+--$_],print+just,another,split,hack'er