CARACTERÍSTICAS
Características principales de Couchbase frente a MongoDB
- Qué incluye
- Flexibilidad JSON
- Caché gestionada integrada
- Sincronización móvil, periférica y entre pares
- SQL
- Búsqueda nativa de texto completo
- Búsqueda vectorial nativa
- Replicación maestro-maestro XDCR
- Fragmentación automática
- Arquitectura "nada compartido" sin maestro
- Transacciones ACID
- Escala multidimensional
- Búsqueda vectorial en el móvil
- Motor de almacenamiento en columnas
- Ingesta multifuente y sin ETL
- Análisis en tiempo real con escritura en el clúster de origen
- Couchbase
- MongoDB
- BSON
- Basado en Lucene y sólo disponible en Atlas
CLIENTES
La opinión de los clientes
-
"Vemos tiempos de respuesta muy consistentes de 500 microsegundos de Couchbase incluso a muy gran escala".
Responsable técnico, Cisco100B+ sesiones de usuario al año500 tiempos de respuesta de microsegundos -
"Descubrimos que la tecnología de replicación entre centros de datos para Couchbase era superior, especialmente para grandes cargas de trabajo".
Claus Moldt, CIO, FICO<1 ms de respuesta24x365 tiempo de actividad de la aplicación -
"Con menos de la mitad de servidores, podemos aumentar el rendimiento y conseguir una arquitectura mucho más escalable".
Amir Ish-Shalom, Director de Operaciones, Viber15 mil millones de llamadas y mensajes al día60% reducción del total de servidores
Fragmento de código
Comparación de consultas equivalentes en SQL++ de Couchbase y MQL de MongoDB
/* equivalent to the Mongo example */
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
// equivalent to the SQL++ example
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 }}]})