A while back I created a log parser. The logs can be several thousands of lines up to millions of lines. I store the parsed entries in an array of hash refs.

I am looking for suggestions on how to store my output, so that I can quickly read it back in if the script is run again (this prevents the need to re-parse the log).

The end goal is to have a web interface that will allow users to create queries (basically treating the parsed output like it existed within a database).

I have already considered writing the output of `Data::Dumper` to a file.

Here is an example array entry printed with `Data::Dumper`:

```
$VAR = 
          {
            'weekday' => 'Sun',
            'index' => 26417,
            'timestamp' => '1316326961',
            'text' => 'sys1  NSP
Test.cpp      1000
This is a example error message.
',
            'errname' => 'EM_TEST',
            'time' => {
                        'array' => [
                                     2011,
                                     9,
                                     18,
                                     '06',
                                     22,
                                     41
                                   ],
                        'stamp' => '20110918062241',
                        'whole' => '06:22:41',
                        'hour' => '06',
                        'sec' => 41,
                        'min' => 22
                      },
            'month' => 'Sep',
            'errno' => '2261703',
            'dayofmonth' => 18,
            'unknown2' => '1',
            'unknown3' => '1',
            'year' => 2011,
            'unknown1' => '0',
            'line' => 219154
          },`

```

Is there a more efficient way of accomplishing my goal?