Redis + MongoDB vs. Couchbase : Comparaison des performances de référence
Performance et gestion supérieures
CARACTÉRISTIQUES
Principales fonctionnalités de Couchbase par rapport à Redis et MongoDB
CLIENTS
Histoires de réussite : Couchbase plutôt que MongoDB et Redis

“ Avec moins de la moitié des serveurs, nous pouvons améliorer les performances et bénéficier d'une architecture bien plus évolutive. ”
Amir Ish-Shalom, Directeur principal des opérations, Viber
15
milliards d'événements d'appels et de messages/jour
60%
réduction du nombre total de serveurs

"Couchbase est un magasin de données distribué hautement évolutif qui joue un rôle essentiel dans les systèmes de mise en cache de LinkedIn.
Michael Kehoe, Ingénieur en chef de la fiabilité des sites, LinkedIn
10M+
requêtes par seconde
<4ms
latence moyenne pour plus de 2,5 milliards d'articles

“Aucune des autres solutions n'a approché les vastes capacités d'entreprise de Couchbase.”
Aviram Agmon, CTO, Maccabi Health Care
2.3
un million de clients sur une seule application
0
temps d'arrêt pour des milliers de connexions quotidiennes
Extrait de code
Le SQL++ et l'API unique de Couchbase surpassent Redis/MongoDB
- Couchbase clé-valeur
- Clé-valeur Redis
- Requête Couchbase SQL++
- Langage de requête MongoDB
- Redis
// scope/collection permettent une organisation de données plus flexible
const bucket = cluster.bucket('comptes-clients');
const scope = bucket.scope('locataire1');
const collection = scope.collection('factures');
const result = await collection.get('clé');
// Redis manque de portée et de capacité de collection
const redisClient = redis.createClient({ ... });
redisClient.connect();
const value = await redisClient.get('key');
/* équivalent à l'exemple Mongo */
SELECT SUM(value * volume) AS val, symbol
FROM db.stocks
WHERE symbol IN ( "AAPL", "GOOG" ) AND value > 0
GROUP BY symbol
ORDER BY val DESC, symbol ASC
// équivalent à l'exemple SQL++
db.stocks.aggregate([
{ "$match": {
"$and": [
{"symbol": {
"$in": [
"AAPL",
"GOOG"]}},
{ "value": {
"$gt": 0 }}]}},
{ "$group": {
"_id": {
"symbol": "$symbol" },
"sum(value * volume)": {
"$sum": {
"$multiply": [
"$value",
"$volume"]}}}},
{ "$project": {
"_id" : 0,
"sum(value * volume)" : "$sum(value * volume)",
"symbol" : "$_id.symbol"}}
{ " $sort " : {
" sum(value * volume) " : -1,
" symbol " : 1 }}]})
// Redis manque d'un langage de requête complexe comme SQL



