In your case I'd use something like a SQL database with DBIx::TextIndex or Plucene. The main reason I recommended a daemon for him is because it could be highly optimized for the types of relationships he's modeling.
in reply to Writing a Perl Daemon (was: Basic Perl trumps DBI? Or my poor DB design?)
in thread Basic Perl trumps DBI? Or my poor DB design?
But if you're going down the persistent network daemon route, I'd start with something like Net::Daemon. Its a very nice framework to start building on.