Se følgende links
- CouchDB vs MongoDB
- MongoDB eller CouchDB - egnet til produktion?
- DB-Engines - Comparison CouchDB vs. MongoDB
Opdater :Jeg fandt en god sammenligning af NoSQL databaser.
MongoDB (3.2)
- Skrevet i:C++
- Hovedpointe:JSON-dokumentlager
- Licens:AGPL (drivere:Apache)
- Protokol:Brugerdefineret, binær (BSON)
- Master/slave-replikering (automatisk failover med replikasæt)
- Sharding indbygget
- Forespørgsler er javascript-udtryk
- Kør vilkårlige javascript-funktioner på serversiden
- Har geospatial indeksering og forespørgsler
- Flere lagringsmotorer med forskellige ydeevnekarakteristika
- Ydeevne i forhold til funktioner
- Dokumentvalidering
- Journalist
- Kraftfuld aggregeringsramme
- På 32bit-systemer, begrænset til ~2,5 Gb
- Tekstsøgning integreret
- GridFS til at gemme big data + metadata (faktisk ikke en FS)
- Datacenterbevidst
Bedst brugt :Hvis du har brug for dynamiske forespørgsler. Hvis du foretrækker at definere indekser, ikke kort/reducere funktioner. Hvis du har brug for god ydeevne på en stor DB. Hvis du ville have CouchDB, men dine data ændrer sig for meget, fylder diske op.
For eksempel :For de fleste ting, du ville gøre med MySQL eller PostgreSQL, men at have foruddefinerede kolonner holder dig virkelig tilbage.
CouchDB (1.2)
- Skrevet på:Erlang
- Hovedpointe:DB-konsistens, brugervenlighed
- Licens:Apache
- Protokol:HTTP/REST
- Tovejs (!) replikering,
- kontinuerlig eller ad hoc,
- med konfliktregistrering,
- altså master-master replikering. (!)
- MVCC - skriveoperationer blokerer ikke læsninger
- Tidligere versioner af dokumenter er tilgængelige
- Kun nedbrud (pålideligt) design
- Skal komprimeres fra tid til anden
- Visninger:indlejret kort/reducer
- Formattering af visninger:lister og programmer
- Dokumentvalidering på serversiden er mulig
- Godkendelse mulig
- Opdateringer i realtid via '_changes' (!)
- Håndtering af vedhæftede filer
Bedst brugt :Til akkumulering af, lejlighedsvis skiftende data, som foruddefinerede forespørgsler skal køres på. Steder, hvor versionering er vigtig.
For eksempel :CRM, CMS-systemer. Master-master-replikering er en særlig interessant funktion, der tillader nem implementering af flere steder.