I've got a cron job which runs '/usr/libexec/locate.updatedb' every night and then I simply run "locate <fragment_of_filename>" in the terminal when I'm searching for something. It's phenomenally fast and, for me, once a day is as up-to-date as I need it.