Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl: the Markov chain saw

Re: Efficient processing of large directory

by Elliott (Pilgrim)
on Oct 03, 2003 at 13:36 UTC ( #296228=note: print w/replies, xml ) Need Help??

in reply to Efficient processing of large directory

Thank you all for your advice. My reading of your answers is that two approaches would help:
  • Reorganise into subdirectories as I originally thought
  • Use while instead of foreach
I have already converted to using while but I haven't had the chance to check for improvement yet. Can I have opinions on whether using both solutions together is worthwhile (pun not intended!)?

BTW, the file names are email addresses (opt-in list, no spam here I promise!!) with \W characters removed. I was planning to pick 2nd and 4th chars to name the subdirectories in order to avoid grubbiness. Any thoughts on that?

Replies are listed 'Best First'.
Re: Re: Efficient processing of large directory
by tilly (Archbishop) on Oct 05, 2003 at 04:04 UTC
    Switch to a dbm like DB_File instead of lots of small files. Particularly if you use a BTree, you will get much better organized usage of disk.

    But do keep text backups in case an upgrade breaks DB_File.

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://296228]
and all is quiet...

How do I use this? | Other CB clients
Other Users?
Others chanting in the Monastery: (8)
As of 2018-06-20 14:10 GMT
Find Nodes?
    Voting Booth?
    Should cpanminus be part of the standard Perl release?

    Results (116 votes). Check out past polls.