A tied hash is just one of many dozens of ways of doing this. Maybe you settled on the technology prematurely before considering the consequences. What are your real requirements? What will you be doing with the data? How are you accessing it? Maybe it's time for a real database (like DBD::SQLite).