MongoDB [DATABASE]

Leggendo la dichiarazione (qui l’articolo su Mashable) sul donwtime di Foursquare di questi giorni, scopro che loro utilizzano MongoDB come backend. Questo database (opensource) viene utilizzato da molti servizi online che necessitano di scalabilità e velocità (bit.ly, Foursquare,SourceForge, e tanti altri indicati qui).

The goal of MongoDB is to bridge the gap between key-value stores (which are fast and highly scalable) and traditional RDBMS systems (which provide rich queries and deep functionality).[1] MongoDB is designed for problems that aren’t easily solved by traditional RDBMSs, including problems that require databases to span many servers. (fonte wikipedia)

Sul sito di MongoDB c’è la possibilità di provare da shell alcuni comandi e rendersi realmente conto della semplicità di utilizzo avendo un buon background con la manipolazione dei dati in formato JSON (e dopo anni di jquery e applicazioni web ne so abbastanza).

Per intenderci, una ricerca invece di farla con “select * from db” la si richiama con
> db.mydocumentname.find();
mentre l’inserimento di dati viene completato con un
> db.mydocumentname.insert({‘character’ : [‘firstname’:’donal’,’lastname’:’duck’], ‘type’:’duck’})

Questo DB offre incredibili prestazioni e possibilità di crescita in funzione delle proprie necessità e Event Brite lo ha scelto per creare un suo sistema interno di statistiche e pageviews in tempo (qui il blog).

Se qualcuno vuole provarlo, c’è anche la tabella di confronto con i comandi SQL e questo aiuta sicumranete a capirne la semplicità.
La mia curiosità cresce e potrei già aver trovato un paio di applicazioni su cui provarlo (il mio personalissimo servizio di url shortner tyl.me o statistiche per Smappo).