in reply to Integrated non-relational databases ?

I'm not sure what exactly it is you're wanting. The mnesia examples don't look very impressive compared to some of the things I've seen done with Perl. So I may be missing your point here, but I'll mention some options for you to consider besides DBI and the DBIx modules.

If you don't need it to be relational, what's wrong with tied hashes, DBM::Deep, Persistent, or Storable? Is Rosetta more what you'd like?

After a quick look at CPAN's tools for data persistence that don't seem to involve SQL or RDBMS software, XML::Simple, Data::Table, AsciiDB::TagFile, DBM::DBass, DBM::Any, and Data::CTable look interesting, too.

Tie::LDAP gives you directory service access instead of a database interface, which could come in quite handy for data with complex schemata that get updated infrequently.

  • Comment on Re: Integrated non-relational databases ?

Replies are listed 'Best First'.
Re^2: Integrated non-relational databases ?
by rootcho (Pilgrim) on Sep 26, 2007 at 02:00 UTC
    Mnesia can handle much bigger DB and is ACID,transaction based, replicated and can span several computers. Didn't know DBM::Deep can handle so much records... but I suspect over 1 milion it wont be that fast.
      DBM::Deep has ACID transactions and can handle data as large as your Perl can address. If you have a 32-bit Perl, you'd limited to files of 2G. If you have a 64-bit Perl, then you have 64-bits of addressability.

      Beyond just having ACID transactions, it's PurePerl and handles Perl datastructures in a way that nothing else does. The point is that the rest of your program doesn't even know that it's working with a DBM::Deep datastructure vs. a normal Perl datastructure.


      My criteria for good software:
      1. Does it work?
      2. Can someone else come in, make a change, and be reasonably certain no bugs were introduced?
      Much bigger than which?

      Tie::LDAP for one can do all that. It's non-SQL. LDAP, including OpenLDAP, can span about as many computers as you can afford for your data center. It uses structured and schema-restricted data that can form a tree or a graph and not just a table. Using Tie::LDAP, you access it from the language.

      PostgreSQL is ACID, transaction based, and can be replicated, but it does use SQL.

      Most importantly, where's the patch?