Database
 sql >> Database >  >> RDS >> Database

Basi di dati relazionali e non relazionali – Parte 3

Nella prima e nella seconda parte di questa serie di blog, abbiamo riscontrato alcune differenze fondamentali tra la scalabilità dei database relazionali e non relazionali. In questo post, ti mostrerò come utilizzare correttamente questi database e ti parlerò anche di alcune note aziende che utilizzano questi database.

Database relazionale

Nella prima parte di questa serie di blog, ho parlato delle proprietà dell'ACID. Queste proprietà sono importanti per mantenere una stretta integrazione transazionale. Ci sono alcuni settori come quello bancario, al dettaglio, ecc., dove ogni transazione richiede proprietà ACID. Nelle transazioni bancarie, se viene accreditato un conto, se ne deve addebitare un altro. L'aggiornamento parziale non è mai consentito, poiché influirà sull'integrità dei dati:in questo scenario vengono utilizzati Oracle, SQL Server, MySQL e altri RDBMS.

Database non relazionale (DB NoSQL)

Nella prima parte di questa serie di blog ho parlato anche delle proprietà BASE. Questi sono importanti per mantenere i dati coerenti su tutti i nodi in un database. Qualsiasi informazione che non richieda una rigorosa integrità dei dati può essere archiviata in un DB NoSQL. Ad esempio, i contenuti di un sistema motore di ricerca possono essere archiviati in un database non relazionale, perché è facile recuperare rapidamente le informazioni. Un buon esempio di un sistema di motori di ricerca è Google. Google di solito memorizza le sue pagine Web memorizzate nella cache in un livello Web che viene aggiornato periodicamente. Questi database possono archiviare terabyte di dati storici (ad esempio le transazioni con carta di credito di una banca negli ultimi 5 anni) in un ambiente distribuito. È facile analizzare ed estrarre dati in un DB NoSQL utilizzando il software di data warehouse HIVE simile a SQL. I DB NoSQL possono essere utilizzati per archiviare enormi volumi di dati non strutturati e sono adatti anche per l'analisi del testo.

Ho elencato alcune delle principali organizzazioni che utilizzano questi database:

Banche dati relazionali

SQL Server:LG Electronics, MySpace, Hilton Hotels.

ORACLE:British Telecom, MasterCard, Reliance Ltd.

MySQL:Facebook, Twitter, LinkedIn. Facebook utilizza MySQL per memorizzare le interazioni dell'utente come aggiornamenti di stato, condivisioni, Mi piace e così via

Database non relazionali

CouchBase:LinkedIn, AdAction.

Cassandra:Facebook, Twitter, Digg.

MongoDB:LinkedIn, Pearson.

Neo4j:Cisco, eBay, ecc.

Come hai visto, aziende come Facebook, Twitter e LinkedIn utilizzano database sia relazionali che non relazionali, in base alle loro esigenze.

Ora vorrei tornare alla prima parte di questa serie e rispondere alle seguenti domande:

I database relazionali sono in grado di gestire big data?

I database relazionali sono scalabili?

I database relazionali sono adatti ai requisiti dei dati dell'età moderna? Come l'analisi in tempo reale, la gestione di dati non strutturati?

La risposta a tutte queste domande è un veemente “SI”. I database relazionali non stanno scomparendo in questo mondo sociale. In base alla natura e alla complessità del set di dati, dovrebbe essere utilizzato il database giusto. Sia i database relazionali che quelli non relazionali hanno i loro vantaggi e svantaggi. L'ambiente impostato correttamente può utilizzare i database relazionali e non relazionali in modo appropriato come hanno fatto Facebook, Twitter e LinkedIn.