Beefy Boxes and Bandwidth Generously Provided by pair Networks
laziness, impatience, and hubris
 
PerlMonks  

Re: What is your favourite Linux or cross-platform database? (postgresql)

by erix (Vicar)
on Mar 25, 2010 at 15:22 UTC ( #830881=note: print w/ replies, xml ) Need Help??


in reply to What is your favourite Linux or cross-platform database?

PostgreSQL (http://www.postgresql.org/, see also http://wiki.postgresql.org/)

  • BSD license ( ultra-free )
  • pgAdmin is nice enough; psql, the commandline client, is great.
  • *very* active & helpful community; reported bugs often fixed within hours. There is often instant help at #postgresql / freenode.
  • SQL:2011 ( see: SQL Conformance )
  • ultrareliable: yes
  • DBD::Pg (see: DBD::Pg )

Postgres is supported on a wide range of platforms (see the distributed buildfarm status page (which continually tests if compiling is still faultless) - not even all platforms are represented)

SQLite is only good for 1-person use, and then only with limited data size (the SQLite website honestly admits this). It is therefore IMHO not really a serious candidate for the epithet 'database', but YMMV, and you can see from the other replies that the opinions vary as well. SQLite is also good for embedded use, where postgres is not usable.

update: Added mild SQLite bashing & some wordsmithing.

update (2012.10.27): s/SQL:2008/SQL:2011/g;


Comment on Re: What is your favourite Linux or cross-platform database? (postgresql)
Re^2: What is your favourite Linux or cross-platform database? (postgresql)
by Steve_BZ (Hermit) on Mar 26, 2010 at 13:38 UTC

    Hi Erix,

    I guess I am being increasingly drawn to PostgreSQL, but I hadn't really considered SQLite until it came up in this discussion so prominently. I looked at the limits http://sqlite.org/limits.html, but they are really design limits, not data limits. For instance it doesn't seem to limit the number of rows in a table, just the number of columns. Have I got that right? And maybe the blob limit is a bit low if you want to embed videos or HiRes photos, but not if you just store a URI to the media which could be held in a directory.

    I'd be interested in any other details you have.

    As you see from my other posts I currently have Firebird, with DBD::InterBase, and the DBD just crashes too regularly for comfort.

    Thanks.

    Steve

      Per the 80/20 rule, I would go with SQLite for the majority case and then postgresql for the minority case. For the outlier 110+, Cassandra is looking good these days for NoSQL. For the majority NoSQL solution, I would vote for the module called y_serial at http://yserial.sourceforge.net -- definitely the easiest to implement, and fast in terms of development time. As for the BLOB issue, yserial seems to handle it well via compression. From a database performance perspective, you want BLOB under 2M, otherwise one is better off using files.

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://830881]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others drinking their drinks and smoking their pipes about the Monastery: (7)
As of 2014-08-28 08:38 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    The best computer themed movie is:











    Results (259 votes), past polls