Tie::Table (formerly known as TableMap) is a
lightweight Perl module which maps tables in DBI
data sources into hashes. It supports foreign
keys, so you can "walk" between tables by foreign
keys. For example, $user->company_id->{address}
gives the address of the user's company. It also
caches the result.