2010-09-16 17 views
10

C'era un articolo su Hacker News un paio di giorni fa, che ha raggiunto la prima pagina intitolato qualcosa come
"2 casi quando non utilizzare MongoDB" ma davvero non riesco a trovare più ...Quando NON usare NoSQL?

  1. Qualcuno sa dove posso trovare l'articolo sopra descritto?
  2. Quali casi ci sono quando NoSQL fallisce?
+0

Vedere anche http://stackoverflow.com/questions/4448194/mongodb-vs-mysql/4448292 – clyfe

risposta

5

Usiamo MongoDB per la memorizzazione di tonnellate e tonnellate di dati di analisi per i quali non ci importa se alcune cose a volte si perde in un crash del server. I dati si adattano molto bene a MongoDB e sarebbe stato un incubo se avessimo usato un database SQL per questo. Ma per le transazioni bancarie non prenderemo nemmeno in considerazione MongoDB. Il blocco della scrittura potrebbe essere un problema per alcune persone. D'altra parte MongoDB supporta la condivisione facile, molto più facile che con SQL. Sharding ci consente di scalare orizzontalmente il che è un vantaggio enorme per i nostri dati.

  1. http://news.ycombinator.com/item?id=1691748
+2

Bella ricerca, ma l'articolo effettivo sembra essere qui: http://ethangunderson.com/blog/two-reasons -to-not-use-mongodb/ –

+2

È il txt spek rly reqyrd? –

+1

2 b fair, OP lo ha schuato in Q. :) –

0

Per qualsiasi definizione ragionevole "NoSQL" dovrebbe includere non SQL RDBMS nel suo campo di applicazione (perché non c'è alcun motivo per il suono perché il modello relazionale non può affrontare gli stessi requisiti altri modelli NoSQL). Se lo accetti, non c'è limite a ciò che i DBMS NoSQL potrebbero fare. Non avremmo più bisogno di SQL - mai!

Purtroppo, sembra esserci un'ipotesi comune tra i leader di NoSQL che "NoSQL" debba significare "non relazionale". Questo è molto sfortunato perché se il modello relazionale viene ignorato, NoSQL non sostituirà mai SQL per molti scopi. (Do per scontato che la ricerca a lungo termine, relazionale sostituzione modello per SQL sarebbe in realtà una buona cosa :)

+0

Tipico odio contro SQL SQL –

+0

Non odio SQL ma cerco di mantenere una mentalità aperta su alternative migliori a quella che è dopo tutto una lingua di 30 anni e paradigma con alcuni difetti altamente scomodi. – sqlvogel

+0

Potresti aggiungere qualche link a un DB NoSQL relazionale che ti piace? Ne ho trovati alcuni, ma niente era davvero eccitante, ma forse potresti indicarmi cose più interessanti. – maaartinus

0

Se non si desidera utilizzare NoSQL in genere quando si ....

... non voglio usare SQL! /hardy har har

La maggior parte delle soluzioni NoSQL che ho visto sembrano cadere nell'approccio del negozio di valore chiave e non sono relazionali. Tendono a rinunciare alle proprietà ACID.

Quindi, quando si valuta un sistema di database, quando non si bisogno ACID, quando non si vuole algebra relazionale, quando si fa hanno bisogno di un negozio di KV, allora l'approccio NoSQL È tuo amico.

Si noti inoltre che esiste un'ampia varietà di sistemi "NoSQL" e che tutti lavorano con approcci leggermente diversi.

+4

Perché pensi che 'NoSQL' non implichi alcun' ACID'? Personalmente ho creato un'app su "BerkeleyDB" (che non è relazionale) con il supporto completo delle transazioni. – Quassnoi

+1

@Quassnoi: perché nessun ACID è una delle tendenze comuni di NoSQL. –