Una delle critiche che ultimamente sento fare una un certa parte (tendenziosa IMHO) del mondo dello sviluppo è che i database relazionali non sono in grado di scalare, ed è per questo che Facebook e servizi simili stanno usando ed andando verso soluzioni “NoSQL”, cercando di eliminare l’uso di database relazionali, perchè “non scalano”.
A parte che come ho già detto e dimostrato su un articolo pubblicato su Computer World Italia queste idee balzane derivano da semplice ignoranza in materia, senza voler dare in alcun modo un giudizio negativo in merito, uso la parola ignoranza in modo neutro per identificare una “mancanza di una conoscenza sufficiente” dell’argomento. Oggi arriva una notiza che penso possa essere un buon esempio di come, al contrario, un database (ben) progettato e manutenuto sia in grado di scalare oltre ogni limite “normale”: Hotmail utilizza SQL Server 2008 come database di backend per la memorizzazione e la gestione dei dati ed attualmente la dimensione ha raggiunto i 155 Petabyte.
http://www.ugiss.org/Content/Article/Il-pi%C3%B9-grosso-sistema-al-mondo-basato-su-SQL-Server.aspx
Sarebbe bello che la prossima volta che chiunque sostenga che i db non scalano, si faccia un attimo due conti e si chieda se effettivamente sta progettando sistemi che hanno necessità di gestire più di 2 Petabyte al giorno di crescita per un totale di 155 PetaByte totali. :-)
Per il resto, sarei ben felice di avere una reale proposta alternativa ai db relazionali, ma finche qualcuno non si mette a fondare tale proposta su solide basi matematiche, non credo che si possa avere realmente una possibilità alternativa.
Un’ultima nota di colore: sembra che questa necessità di avere basi matematiche spaventi ai più. Sarà per questo che nell’informatica tantissimi si firmano “Architect” e ben pochi “Engineer”? :). Su, ricordiamoci che nel mondo c’è bisogno di entrambi!