NoSQL è anche conosciuto con il nome di database non relazionale
NoSQL è una classe di sistemi di gestione di database (DBMS) che non segue le regole di un DBMS relazionale e non permette di utilizzare il linguaggio SQL per interrogare i dati. Per essere più corretti, NoSQL ha un significato leggermente meno vincolante - infatti andrebbe interpretato come 'non solo SQL", in quanto può riferirsi anche a DBMS che hanno una capacità, limitata, di interoperabilità con il linguaggio SQL.
Le caratteristiche principali di database noSQL sono la progettazione specifica per carichi elevati e il supporto nativo per la scalabilità orizzontale, la tolleranza agli errori e la memorizzazione dei dati in modo denormalizzato. Infatti un DB noSQL non salva i dati in uno schema strutturato di righe e tabelle, ma archivia ogni elemento singolarmente con una chiave univoca (usa valori-chiave), e non garantisce la coerenza dei dati. Questa impostazione, pur presentando alcuni svantaggi rispetto ad un RDBMS, fornisce un approccio molto più flessibile alla memorizzazione dei dati rispetto a un database relazionale, un controllo migliore e una maggiore semplicità nelle applicazioni.
Per questo l'uso di database NoSQL è indicato per database molto grandi, che soffrono maggiormente i problemi di prestazione causati dalle limitazioni di SQL e dal modello relazionale di database. Alcune delle implementazioni più conosciute di NoSQL infatti sono Cassandra di Facebook, BigTable di Google e SimpleDB e Dynamo di Amazon.
SQLSimpleDBRedisMongoDBFirebaseFat-Free FrameworkDynamoDBDatabase relazionaleCouchDBCouchbaseCassandraBigTable
Registrati per scrivere o modificare le wiki.
La GeekandWiki nasce come strumento di condivisione della conoscenza all'interno di GeekandJob. Abbiamo deciso di trasformarlo in un progetto aperto e collaborativo, perché crediamo che il modo migliore di valorizzare le competenze sia condividerle.
Unisciti ad altri professionisti del settore tech e digital, e dai il tuo contributo alla GeekandWiki.
Registrati