Está en la página 1de 18

Guía de arquitectura

de MongoDB
Los conceptos fundamentales que sustentan la
arquitectura de MongoDB
Guía de arquitectura
de MongoDB

Introducción
Los datos y el software están en el corazón de cada ° Las cargas de trabajo transaccionales,
negocio. Pero para muchas organizaciones, analíticas, de búsqueda y móviles, que
aprovechar todo el potencial de la economía antes estaban separadas, convergen para
digital sigue siendo un desafío importante. Desde crear aplicaciones ricas basadas en datos
el inicio de MongoDB, hemos entendido que los y experiencias del cliente. Sin embargo,
mayores desafíos que enfrentan los cada carga de trabajo ha estado
desarrolladores están relacionados con el trabajo tradicionalmente impulsada por su base
con los datos: de datos y creó silos de datos duplicados
unidos con canalizaciones ETL frágiles, a
° Las demandas de mayor productividad y las que acceden diferentes API de
tiempo de comercialización más rápido desarrolladores.
son frenadas por modelos de datos
relacionales rígidos que no coinciden con Para hacer frente a algunos de estos desafíos, se
el código moderno e imponen han adoptado las bases de datos no tabulares (a
interdependencias complejas entre los veces llamadas NoSQL o no relacionales)
equipos de ingeniería. rápidamente durante la última década. Pero
° Las organizaciones no pueden trabajar con muchas de estas bases de datos NoSQL son
la cantidad masiva y en rápido crecimiento simplemente apósitos, que ofrecen un conjunto
de datos generados por las aplicaciones de funciones de nicho.
modernas, incluidas series temporales,
El problema es que las bases de datos NoSQL
datos geoespaciales y polimórficos, ni
típicas hacen una o dos cosas bien. Pueden
extraer información de ellos.
ofrecer más flexibilidad en el modelo de datos
° Las bases de datos heredadas monolíticas y
que las bases de datos tradicionales o escalar
frágiles están inhibiendo el cambio
fácilmente. Pero, para ello, descartan las
generalizado a sistemas distribuidos y
características más valiosas de las bases de
computación en la nube que brindan la
datos relacionales. A menudo, sacrifican la
resiliencia y la escala que exigen los
integridad de los datos y la capacidad de
negocios digitales y respaldan las nuevas
exigencias reguladoras para la privacidad trabajar con datos de la manera necesaria para
de datos. crear aplicaciones ricas y valiosas, ya sean
nuevos puntos de contacto digitales con los
clientes de una organización o procesos
empresariales de backend centrales
modernizados.

2
Guía de arquitectura
de MongoDB

El modelo de documento
MongoDB se lanzó en 2009 como una clase

Compatibilidad
completamente nueva de base de datos de
propósito general y rápidamente se estableció
como una de las bases de datos más populares mejorada con datos
entre los desarrolladores. MongoDB conserva
los mejores aspectos de las bases de datos
de series temporales
relacionales y NoSQL al tiempo que proporciona Los datos de series temporales son los que
una base tecnológica que permite a las representan cómo cambia un sistema, un proceso o
organizaciones satisfacer las demandas de las un comportamiento a lo largo del tiempo. Se puede
aplicaciones modernas. Lo hace al reemplazar capturar en intervalos constantes, como una
las tablas rígidas de las bases de datos medición de dispositivo por segundo, o en
relacionales con documentos flexibles que se intervalos irregulares, como con alertas y auditorías
adaptan a la forma en que los desarrolladores de eventos. Los datos de series temporales son
piensan y codifican. En lugar de almacenar datos críticos para las aplicaciones modernas, en
en columnas y filas, las bases de datos de particular para IoT, comercio de acciones, flujos de
documentos almacenan datos como JSON clics y redes sociales. Con el cambio de sistemas
(Notación de Objetos de JavaScript). Una base por lotes a sistemas en tiempo real, la captura y el
de datos de documentos puede almacenar análisis eficientes de datos de series temporales
cualquier tipo de datos y se puede modificar permiten que las organizaciones detecten y
fácilmente la estructura de los documentos. Esto respondan mejor a los eventos antes que sus
permite que los desarrolladores sean mucho competidores, mejoren la eficiencia operativa y
más productivos y creen o iteran sus reduzcan los costos y riesgos.
aplicaciones más rápido. Se puede agregar
nuevos campos sin afectar otros documentos en Gracias a la flexibilidad de MongoDB, los equipos
la colección, el equivalente MongoDB de una han estado utilizando la base de datos para
tabla en una base de datos relacional. Y se almacenar datos de series temporales durante
puede modelar los datos de cualquier forma que años. Sin embargo, modelar correctamente los
se adapte a la aplicación, por ejemplo, como datos para lograr una solución eficaz no siempre
pares clave-valor, como bordes o nodos de un fue sencillo. Con las series temporales, un nuevo
gráfico, o como estructuras anidadas que tipo de colección introducido con MongoDB 5.0, y
representan relaciones. las nuevas funciones, como la indexación en
clúster y las funciones de ventana, los equipos
pueden trabajar y almacenar datos de series
temporales sin preocuparse por la optimización del
modelo de bajo nivel. MongoDB optimizará
automáticamente su esquema para una alta
eficiencia de almacenamiento, consultas de baja
latencia y análisis en tiempo real contra datos
temporales.

3
Guía de arquitectura
de MongoDB

Como los desarrolladores han experimentado


los beneficios del modelo de datos de
documentos por sí mismos, se ha convertido
en la alternativa más popular al modelo
tabular utilizado por las bases de datos
relacionales tradicionales.
Las tres ventajas principales de ese
modelo son:

1. Intuitivo: más
rápido y fácil para Con el modelo de datos de documentos, no
los desarrolladores es necesario descomponer los datos en
tablas, ejecutar JOIN costosos o integrar una capa
Se asignan los documentos en la base de datos separada de mapeo relacional de objetos (ORM).
directamente a los objetos en su código, por lo En general, los datos a los que se accede en
que es mucho más natural trabajar con ellos. conjunto se almacenan juntos, por lo que tiene
menos código para escribir y sus usuarios
El siguiente ejemplo de un documento JSON en
obtienen un mayor rendimiento.
MongoDB demuestra cómo se modela un objeto
de cliente en una estructura de documento único
con datos relacionados incrustados como
subdocumentos y matrices. Este enfoque colapsa
lo que de otro modo serían siete tablas principal-
secundaria separadas vinculadas por claves
foráneas en una base de datos relacional.
“La parte más hermosa
es el modelo de datos.
Todo es un documento
JSON natural. Entonces,
para los desarrolladores, es
fácil, realmente fácil,
trabajar rápidamente.
Dedican tiempo a crear
valor comercial en lugar de
modelar datos.”
— Filip Dadgar, Gerente de TI, Toyota
Material Handling Europe

4
Guía de arquitectura
de MongoDB

2. Esquema flexible: Con la validación de esquema, puede aplicar

adaptación
estándares de gobierno de datos a un esquema de
documento mientras mantiene los beneficios de
dinámica al cambio un modelo de datos flexible en desarrollo.

El esquema de un documento es dinámico y


autodescriptivo, por lo que no necesita predefinirlo 3. Universal: los
en la base de datos. Los campos varían de un documentos
JSON están por
documento a otro, y eso puede modificar la
estructura en cualquier momento, lo que le permite
integrar continuamente la nueva funcionalidad de la todas las partes
aplicación sin tener que tratar con migraciones de
esquema disruptivas. Ligero e independiente del idioma, JSON se ha
convertido en un estándar establecido para la
Cuando necesita realizar cambios en el modelo de
comunicación y el almacenamiento de datos. Los
datos, la base de datos de documentos continúa
documentos le permiten estructurar los datos de
almacenando los objetos actualizados sin la necesidad
cualquier forma que necesite su aplicación:
de realizar costosas operaciones de "ALTER TABLE"
objetos enriquecidos, pares clave-valor, tablas,
(CAMBIAR TABLA), actualizar una capa de middleware
datos geoespaciales y de series temporales, y los
ORM separada y coordinar todos estos cambios entre
nodos y bordes de un gráfico. Como resultado de
múltiples desarrolladores, DBA y equipos de
estas propiedades, atiende muchas más clases de
operaciones. Los documentos permiten que existan
aplicaciones con una sola base de datos.
múltiples versiones del mismo esquema en el mismo
espacio de tablas. Las aplicaciones antiguas y nuevas MongoDB almacena datos como documentos
pueden coexistir. JSON en una representación binaria llamada
BSON (JSON binario). A diferencia de la mayoría
MongoDB también ofrece validación de esquema para
de las bases de datos que almacenan datos JSON
que pueda hacer cumplir las reglas que rigen la
como cadenas y números primitivos, la
estructura de sus documentos. Esto es útil a medida
codificación BSON amplía la representación JSON
que sus aplicaciones pasan a producción porque puede
para incluir tipos adicionales como int, long, date,
gobernar su esquema sin tener que escribir controles
float point y decimal128. Esto facilita para las
en la capa de la aplicación.
aplicaciones que usan MongoDB procesar,
clasificar y comparar datos de manera confiable.

5
Guía de arquitectura
de MongoDB

El trabajo con datos de los


documentos
Algunas diferencias clave entre las bases de Esto sigue siendo posible ya sea que se esté
datos son la expresividad del lenguaje de manipulando datos en un solo documento o con la
consulta, la riqueza de la indexación y los arquitectura de escalamiento horizontal de MongoDB,
controles de integridad de datos. en múltiples documentos y distribuidos
geográficamente en múltiples fragmentos.
La API de consulta de MongoDB es completa y
expresiva. Las consultas ad hoc, la indexación y las Con una sólida consistencia de datos, MongoDB
agregaciones en tiempo real brindan formas elimina la complejidad de la aplicación impuesta por
poderosas de acceder, agrupar, transformar y los sistemas NoSQL eventualmente consistentes. Las
analizar datos. Se puede unificar consultas en garantías de consistencia de MongoDB son totalmente
bases de datos, admitir cargas de trabajo ajustables, lo que le permite equilibrar la actualización
transaccionales y datos archivados en su lago de de los datos con el rendimiento.
datos al utilizar la misma API de consulta y drivers,
Para facilitar que las empresas actúen sobre los datos
todo con una sola cadena de conexión.
en tiempo real, muchos desarrolladores están
La cartera de agregación de MongoDB le creando canalizaciones de datos totalmente reactivas
permite transformar y analizar datos. Los basadas en eventos. MongoDB va más allá de muchas
documentos ingresan a una cartera de varias otras bases de datos con funciones como Change
etapas que los transforma en un resultado Streams, que detecta automáticamente y notifica a las
agregado. Las etapas de cartera más básicas aplicaciones consumidoras sobre cualquier
proporcionan filtros que funcionan como modificación de datos en la base de datos.
consultas y transformaciones de documentos
La API de consulta de MongoDB absuelve a los
que modifican la forma del documento de
desarrolladores de tener que investigar, aprender
salida. Otras operaciones de cartera
y mantenerse actualizados sobre múltiples formas
proporcionan herramientas para agrupar y
de trabajar con datos en diferentes cargas. Es más
clasificar documentos por campos específicos,
natural de usar que SQL porque se siente como
así como herramientas para agregar el
una extensión de los lenguajes de programación
contenido de matrices, incluidas las de
que ya están usando los desarrolladores. Para
documentos. Además, las etapas de cartera
acelerar aún más la productividad de los
pueden usar operadores para tareas como
desarrolladores, MongoDB proporciona drivers
calcular un promedio o concatenar una cadena.
nativos para marcos y lenguajes de programación
La cartera proporciona una agregación de datos
populares. Los drivers compatibles incluyen Java,
eficiente mediante operaciones nativas dentro
JavaScript, C#/.NET, Go, Python, PHP, Scala, Rust y
de MongoDB y es el método preferido para la
más. Todos los drivers MongoDB admitidos están
agregación de datos en MongoDB.
diseñados para ser idiomáticos para el lenguaje de
Con las transacciones ACID, se mantienen las programación dado. Esto elimina la necesidad de
mismas garantías de aislamiento de capas de abstracción ORM engorrosas y frágiles.
instantáneas y de todo o nada que con las
bases de datos relacionales.

6
Guía de arquitectura
de MongoDB

Arquitectura distribuida:
escalable, resistente y de
misión crítica
A través de conjuntos de réplicas y fragmentación para identificar aquellos miembros del conjunto
nativa, MongoDB le permite escalar sus aplicaciones de réplicas que han aplicado las actualizaciones
con disponibilidad permanente. Se puede distribuir más recientes de la réplica principal
datos para el acceso de usuarios de baja latencia ° Heartbeat y estado de conectividad con la
mientras se aplican controles de soberanía de datos mayoría de los demás miembros del conjunto
para regulaciones de privacidad de datos como RGPD. de réplicas
° Prioridades definidas por el usuario asignadas a
los miembros del conjunto de réplicas
Disponibilidad y
protección de datos con
Al ampliar la protección de datos, los desarrolladores
configuran conjuntos de réplicas para proporcionar
conjuntos de réplicas visibilidad geográfica y durabilidad multinodo
ajustable. A través de la preocupación de escritura de
Los conjuntos de réplicas de MongoDB le permiten MongoDB, se asegura de que las operaciones de
crear hasta 50 copias de sus datos, que se escritura se propaguen a la mayoría de las réplicas en
aprovisionan en nodos, centros de datos y regiones un clúster. Con MongoDB 5.0, la garantía de
geográficas independientes. durabilidad predeterminada se elevó a la
preocupación de escritura mayoritaria (w:majority). El
Los conjuntos de réplicas están diseñados
éxito de escritura ahora solo se reconocerá en la
predominantemente para la resiliencia. Si un nodo
aplicación una vez que se haya confirmado y
principal sufre una interrupción o se desconecta por
persistido en el disco en la mayoría de las réplicas.
mantenimiento, el clúster de MongoDB elegirá
automáticamente un reemplazo en unos segundos, La elección del nuevo valor predeterminado frente al valor
cambiará las conexiones del cliente e intentará otra predefinido w:1 anterior permite una garantía de
vez cualquier operación que no funcionó. durabilidad más sólida, en la que los datos reconocidos
pueden sobrevivir a las elecciones del conjunto de réplicas
El proceso de elección del conjunto de réplicas
y fallas completas del nodo. La nueva configuración
está controlado por sofisticados algoritmos
predeterminada de w:majority es totalmente ajustable,
basados​en una implementación extendida del
por lo que puede mantener la configuración predefinida
protocolo de consenso Raft. Antes de promocionar
anterior de w:1 o cualquier preocupación de escritura
una réplica secundaria, los algoritmos de elección
personalizada que haya configurado previamente.
evalúan una variedad de parámetros que incluyen:
También se puede crear preocupaciones de escritura
° Análisis de identificadores de elección, marcas
de tiempo y persistencia de diarios personalizadas que se dirijan a miembros específicos de
un conjunto de réplicas, implementadas localmente y en
regiones remotas.

7
Guía de arquitectura
de MongoDB

Esto asegura que las escrituras solo se reconozcan Con políticas sofisticadas como lecturas
una vez que se hayan cumplido las políticas protegidas, el clúster enrutará automáticamente
personalizadas, como escribir en al menos un las consultas a los dos nodos más cercanos (medidos
servidor principal y una réplica en una región y al por la distancia de ping), devolviendo resultados de
menos una réplica en una segunda región. Esto la réplica más rápida. Esto ayuda a minimizar las
reduce el riesgo de pérdida de datos en caso de una consultas que esperan en un nodo que, de lo
falla regional completa. contrario, podría estar ocupado, lo que reduce la
latencia de lectura de los percentiles 95 y 99. Tenga
Más allá de la resiliencia, los conjuntos de réplicas
en cuenta que las lecturas protegidas solo están
también se pueden usar para escalar las
disponibles en clústeres compartidos.
operaciones de lectura, al enrutar, de modo
inteligente, las consultas a una copia de los datos
que está físicamente más cerca del usuario.

Escalar hacia arriba, hacia afuera y


entre niveles de almacenamiento
Como la mayoría de las bases de datos, se escala También tiene la flexibilidad de refinar o cambiar su
MongoDB verticalmente al moverse a tamaños de clave fragmentada, que determina cómo se
instancia más grandes o más pequeños. Como distribuyen los datos en un clúster fragmentado, a
sistema distribuido, MongoDB puede realizar un pedido sin afectar la disponibilidad del sistema. A
reinicio continuo del conjunto de réplicas, lo que le medida que se cambia su clave de fragmento o
permite moverse entre diferentes instancias sin cambia la topología del clúster, MongoDB
tiempo de inactividad de la aplicación. reequilibrará automáticamente los datos en los
fragmentos según sea necesario sin intervención
A través de la fragmentación nativa, MongoDB
manual.
también puede escalar su base de datos a través de
múltiples nodos para manejar cargas de trabajo de Simplemente aplicando hash a un valor de clave
escritura intensiva y tamaños de datos crecientes. La principal, muchas bases de datos distribuidas rocían
fragmentación con MongoDB le permite escalar sin datos aleatoriamente en un grupo de nodos, lo que
problemas la base de datos a medida que sus impone penalizaciones de rendimiento cuando se
aplicaciones crecen más allá de los límites de consultan datos o agrega complejidad a la aplicación
hardware de un solo servidor, y lo hace sin agregar cuando necesita ubicar datos en una región
complejidad a la aplicación. específica. Al exponer múltiples políticas de
fragmentación a los desarrolladores, MongoDB
Para responder a las cambiantes demandas de la
ofrece un mejor enfoque. Los datos se distribuyen
carga de trabajo, puede agregar y eliminar
de acuerdo con los patrones de consulta o los
fragmentos en cualquier momento.
requisitos de ubicación de los datos, lo que le brinda
una escalabilidad mucho mayor en un conjunto más
diverso de cargas de trabajo.

8
Guía de arquitectura
de MongoDB

La fragmentación nativa de MongoDB le ofrece o Fragmentación por zonas:


las siguientes opciones: Permite a los desarrolladores
definir reglas específicas que rigen
la ubicación de los datos en un
o Fragmentación a distancia: Los clúster fragmentado.
documentos se dividen en fragmentos
Más allá del escalado vertical y horizontal,
según el valor de la clave de fragmento. Es
probable que los documentos con valores MongoDB también ofrece escalado por niveles.
de clave de fragmento cercanos entre sí se Cuando se trabaja en la nube, MongoDB Atlas
coubiquen en el mismo fragmento. Este Online Archive clasificará automáticamente los
enfoque es adecuado para aplicaciones datos antiguos fuera de la base de datos y en el
que necesitan optimizar las consultas almacenamiento de objetos en la nube. Los datos
basadas en rangos, como la ubicación archivados permanecen totalmente accesibles
conjunta de datos para clientes en una con consultas federadas que abarcan el
región específica en un conjunto específico almacenamiento de objetos y bases de datos en
de fragmentos. una sola cadena de conexión. Este enfoque le
o Fragmentación hash: Se distribuyen
los documentos de acuerdo con un permite escalar el almacenamiento de datos de
hash MD5 del valor de la clave de manera más económica al moverlo a un nivel de
fragmento. Este enfoque asegura una menor costo sin perder el acceso a los datos y sin
distribución uniforme de las escrituras lidiar con canalizaciones ETL lentas y complejas.
en los fragmentos, lo que suele ser
óptimo para ingerir flujos de series
temporales y datos de eventos.

Zona 4
Frankfurt

Zona 2
N. Virginia Zona 5
Zona 1
Tokio
N. California

Zona 3
Latencia aproximada de escritura São Paulo

Óptimo (0 – 100 ms)


Zona 6
Sídney
Aceptable (101 – 249 ms)

Aceptable (101 – 249 ms)

No Óptimo (250 ms+)

Figura 1: Servicio de aplicaciones siempre activas, distribuidas globalmente y de escritura en todas partes con MongoDB Atlas Global Clusters

9
Guía de arquitectura
de MongoDB

Privacidad y seguridad
Con la creciente economía digital viene un Con el cifrado de nivel de campo (FLE) del lado
aumento en la supervisión gubernamental de la del cliente, se tiene acceso a algunos de los
privacidad y la seguridad de los datos. MongoDB controles de protección de datos más avanzados
incluye amplias capacidades para defender, del mundo. FLE hace que sea aún más seguro
detectar y controlar el acceso a los datos: almacenar sus datos más confidenciales en la
nube porque es completamente inaccesible para
° Autenticación: MongoDB ofrece un
cualquier persona que no tenga las claves de
sólido mecanismo de desafío-respuesta
cifrado, incluidos aquellos que ejecutan la base
basado en SCRAM-256, junto con la
integración a la infraestructura de de datos por usted.
seguridad empresarial, incluidos LDAP, FLE también facilita el cumplimiento de las
Windows Active Directory, Kerberos, condiciones de "derecho al olvido" en las
certificados x.509 y AWS IAM. regulaciones de privacidad, como el RGPD y la
° Autorización: El control de acceso CCPA. Basta con destruir la clave del cliente y los
basado en roles (RBAC) le permite datos personales asociados se volverán inútiles.
configurar permisos granulares para un
Con FLE, se puede cifrar selectivamente campos
usuario o aplicación en función de los
de documentos individuales, cada uno
privilegios que necesitan para hacer su
trabajo. opcionalmente protegido con su propia clave y
descifrado sin problemas en el cliente. En
° Auditoría: Para el cumplimiento
MongoDB, FLE está totalmente separado de la
normativo, los administradores de seguridad
base de datos, lo que lo hace transparente para el
pueden usar el registro de auditoría nativo
servidor. En cambio, se maneja exclusivamente
de MongoDB para registrar toda la actividad
dentro de los drivers MongoDB en el cliente.
y los cambios de la base de datos.
Todos los campos cifrados en el servidor
° Aislamiento de red: Para los usuarios
(almacenados en la memoria, en los registros del
que ejecutan bases de datos totalmente
sistema, en reposo y en las copias de seguridad) se
administradas en MongoDB Atlas, los
representan como texto cifrado, lo que los hace
datos de usuario y los sistemas
ilegibles para cualquier parte que no tenga acceso
subyacentes están completamente
aislados de otros usuarios. Los recursos al cliente y las claves necesarias para descifrar los
de la base de datos están asociados con datos. Este es un enfoque diferente y más
un grupo de usuarios, contenido en su completo que el cifrado de columnas utilizado en
propia nube privada virtual (VPC). Solo se muchas bases de datos relacionales. La mayoría de
puede otorgar el acceso mediante la lista esas bases de datos maneja el cifrado del lado del
blanca de IP o la interconexión de VPC. servidor, los datos siguen siendo accesibles para
Cifrado en todas partes: Los datos de los administradores que tienen acceso a la
° instancia de la base de datos, incluso si no tienen
MongoDB se cifran mientras están en
movimiento a través de la red, en uso en la privilegios de acceso de cliente.
base de datos y en reposo, ya sea en el
disco o en las copias de seguridad.

10
Guía de arquitectura
de MongoDB

Una plataforma para todas


las cargas de trabajo
Sobre la base del modelo de datos de En esencia, MongoDB Atlas proporciona una base de
documentos de MongoDB, la expresiva API datos de uso general (Atlas Database) para
de consulta y el ADN de los sistemas aplicaciones modernas. Casi todas las aplicaciones
distribuidos, la plataforma de datos de necesitan una base de datos rápida que pueda
aplicaciones MongoDB Atlas ofrece un ofrecer tiempos de respuesta de milisegundos de un
conjunto cohesivo e integrado de datos y solo dígito. Y con su modelo de datos de documentos
servicios de bases de datos. Atlas agiliza la flexible, garantías transaccionales, API de consulta
forma en que los equipos trabajan con los rica y expresiva, y soporte nativo para escalado
datos, específicamente en el contexto de la vertical y horizontal, Atlas Database se puede
creación de software y sistemas que brindan emplear para prácticamente cualquier caso de uso, al
experiencias en tiempo real tanto a los reducir la necesidad de bases de datos especializadas
clientes finales como a los usuarios internos. incluso cuando cambian los requisitos. El escalado
Las características clave de la plataforma de automático del clúster ajusta tanto la computación
datos de aplicaciones de MongoDB incluyen: como el almacenamiento en respuesta a la carga de
la aplicación, lo que elimina la necesidad de
° Un plano de datos con la capacidad de monitorear la utilización y reaccionar ante las
admitir una amplia variedad de tipos de necesidades de escalamiento.
aplicaciones que se desarrolla, implementa
y evoluciona de forma independiente para Atlas Database está disponible en más de 80
abordar una amplia variedad de tipos de regiones en AWS, Google Cloud Platform y Azure.
aplicaciones y casos de uso La mejor infraestructura y automatización de
bases de datos de su clase aseguran
° Una experiencia unificada y coherente
disponibilidad continua, escalabilidad elástica y
para desarrolladores, analistas de datos,
cumplimiento de los estándares de privacidad y
científicos de datos y funciones de apoyo
seguridad de datos más exigentes. El tiempo de
críticas, como equipos de operaciones,
equipos de seguridad e ingenieros de actividad está respaldado por un acuerdo de
datos nivel de servicio del 99,995 %.

° Distribución global de datos en nubes


múltiples, basada en la fragmentación
nativa de MongoDB, para admitir los
requisitos de residencia de datos y
proporcionar flexibilidad de
implementación
° Movimiento transparente de datos
entre servicios y gestión automatizada
del ciclo de vida de los datos

11
Guía de arquitectura
de MongoDB

Más allá de ofrecer bases de datos MongoDB


totalmente administradas en la nube, Atlas
ofrece servicios complementarios adicionales
que permiten a las organizaciones admitir una
amplia gama de cargas de trabajo de datos de
análisis en tiempo real y aplicaciones.

Modelo de documento

Pares de valores Geoespacial


clave

Relaciones Gráficos

Objetos

Análisis en
Interfaz unificada
Transaccional tiempo real

Búsqueda Móvil

Arquitectura
Seguridad distribuida

Nubes múltiples

Figura 2: Plataforma de datos de aplicación de MongoDB

12
Guía de arquitectura
de MongoDB

Análisis en tiempo real


Atlas Database le permite implementar un nodo
La mejor manera de ejecutar
de análisis de solo lectura para atender más MongoDB en la nube
consultas de análisis con uso intensivo de
recursos. Se apunta fácilmente a los nodos de Atlas Database ofrece MongoDB como un servicio de
análisis al configurar la preferencia de lectura y pago por uso facturado por hora. Para implementarlo, se
asegurar de manera efectiva que las consultas de usa una GUI o la API de administración para seleccionar
análisis que aprovechan la canalización de el proveedor de nube pública, la región, el tamaño de la
agregación integrada de MongoDB nunca instancia y las funciones que necesita. Atlas Database
compitan por los recursos de la base de datos ofrece:
con sus cargas de trabajo operacionales. Los
nodos de análisis, como todos los nodos de solo o Aprovisionamiento automatizado de
bases de datos e infraestructura junto
lectura dentro de un clúster de MongoDB, no
con escalado automático, para que los
participan en las elecciones y nunca pueden ser
equipos puedan obtener los recursos
elegidos para el clúster principal. de bases de datos que necesitan,

Atlas Search
cuando los necesitan, y escalar de
manera elástica en respuesta a las
demandas de las aplicaciones.
Atlas Search está integrado en MongoDB Atlas, lo
o Seguridad permanente para proteger
que facilita la creación de capacidades de los datos, incluido el aislamiento de la
búsqueda rápidas de texto completo sobre sus red, los controles de acceso
datos de MongoDB sin necesidad de aprender una detallados, la auditoría y el cifrado de
API diferente o implementar una tecnología de extremo a extremo hasta el nivel de
búsqueda separada. Atlas Search se basa en los campos individuales.
Apache Lucene, la biblioteca estándar de la o Certificaciones con estándares
industria. Los índices de búsqueda se ejecutan globales para respaldar el
junto con la base de datos y se mantienen cumplimiento, incluidos ISO 27001,
sincronizados automáticamente. Las capacidades SOC 2 y más. Se puede utilizar el Atlas
admitidas incluyen búsqueda aproximada, Database para cargas de trabajo
autocompletar, facetas y filtros, puntuación sujetas a HIPAA, PCI-DSS o RGPD.
personalizada, analizadores para más de 30 o Replicación integrada tanto dentro
idiomas y más. como entre regiones para una
disponibilidad permanente, incluso
Atlas Data Lake ante interrupciones regionales
completas.
Atlas Data Lake es un servicio de consulta bajo o Clústeres globales para bases de
demanda que le permite analizar datos en el datos totalmente administradas y
distribuidas globalmente que brindan
almacenamiento de objetos en la nube (Amazon
lecturas y escrituras receptivas y de
S3) al utilizar la API de consulta de MongoDB.
baja latencia a los usuarios en
No hay infraestructura para configurar o cualquier lugar,
administrar.
Continúa en la página siguiente »
13
13
Guía de arquitectura
de MongoDB

Atlas Data Lake paraleliza automáticamente las con sólidos controles de soberanía de
operaciones al desglosar las consultas y dividir el datos para el cumplimiento normativo. Los
trabajo entre múltiples nodos de cómputo. Atlas clústeres globales le permiten
Data Lake también optimiza automáticamente las implementar rápidamente la
cargas de trabajo utilizando la computación en la fragmentación por zonas mediante una
región más cercana a sus datos. Esto es útil para interfaz de usuario visual o la API de
la residencia de datos, ya que le otorga la administrador de Atlas. Cada zona es parte
capacidad de especificar la región en la que se del mismo clúster, por lo que se pueden
deben procesar sus datos. consultar globalmente, pero los datos se
anclan a fragmentos en regiones
La compatibilidad con consultas unificadas le específicas según las políticas de
permite combinar y analizar datos en S3 y sus localización de datos.
clústeres de bases de datos de Atlas, junto con una ° Los clústeres de nubes múltiples le
sola consulta. Además, se conservan fácilmente los permiten distribuir los datos en una sola
resultados de las agregaciones en el base lógica entre múltiples proveedores
almacenamiento de objetos o en su base de datos de nube para redundancia entre nubes,
en la nube. Los formatos de datos admitidos un alcance geográfico aún más amplio y
incluyen JSON, BSON, CSV, TSV, Avro, ORC y migraciones sin problemas entre
Parquet. proveedores. También se pueden utilizar
los clústeres de nubes múltiples para
Atlas Charts aprovechar fácilmente los mejores
servicios de cada proveedor de la nube
Atlas Charts es un servicio de visualización de en sus datos operacionales en vivo; por
datos que admite de forma nativa datos JSON ejemplo, los usuarios que ejecutan
ricamente estructurados. Cree fácilmente tablas, principalmente en AWS pueden crear
gráficos y paneles en una interfaz de arrastrar y rápidamente una réplica en Google Cloud
soltar, y compártalos con otros usuarios para para aprovechar la última IA de
colaborar o intégrelos directamente en sus Google/servicios de ML.
aplicaciones para crear experiencias de usuario ° Copias de seguridad completamente
atractivas. Atlas Charts se configura para leer administradas con recuperación de un
desde análisis o nodos secundarios, lo que momento dado para proteger contra la
asegura que no afecte las cargas de trabajo corrupción de datos y la capacidad de
operacionales. Las fuentes de datos admitidas consultar las copias de seguridad en el
incluyen una o más implementaciones de Atlas lugar sin restauraciones completas.
Database, Atlas Data Lake o una combinación de ° Monitoreo detallado, métricas en tiempo
ellos. real, generador de perfiles de consultas y
alertas personalizables para una
Realm Sync visibilidad completa del rendimiento.

Realm Sync ofrece sincronización de datos


bidireccional entre los clústeres de Atlas Database
y Realm, una base de datos móvil ligera y de
código abierto. Continúa en la página siguiente »

14
Guía de arquitectura
de MongoDB

Realm es una alternativa más fácil de usar para los o Recomendaciones inteligentes de
desarrolladores que los almacenes de datos índices y esquemas con Performance
integrados, como SQLite o Core Data. Esta solución Advisor, que analiza los registros de
conjunta ayuda a solucionar los desafíos únicos de consultas lentas de las recolecciones
crear aplicaciones sin conexión para dispositivos de su base de datos y proporciona
móviles, lo que simplifica el almacenamiento de sugerencias clasificadas por impacto
datos en el dispositivo, permitiendo el acceso a los en el rendimiento de su base de
datos incluso sin conexión, y actualizaciones datos.
bidireccionales cuando se establece una conexión. o Parches automatizados y
Los SDK de Realm brindan a los desarrolladores las actualizaciones con un solo clic para
herramientas necesarias para acceder a los datos nuevas versiones principales de la
almacenados en MongoDB Atlas directamente base de datos, lo que le permite
desde el cliente e interactuar con el conjunto más aprovechar los recursos más recientes
amplio de servicios de la plataforma. de MongoDB.
o Archivado automático de datos

GraphQL antiguos de sus clústeres de bases de


datos en vivo al almacenamiento de
objetos en la nube completamente
Genere automáticamente un esquema JSON para sus administrado con Online Archive. La
colecciones MongoDB y habilite GraphQL para sus consulta federada le permite analizar
aplicaciones MongoDB con un simple clic. Al realizar los datos de su base de datos
consultas en un solo punto final para obtener operacional y los datos históricos en el
exactamente los datos que necesita, puede crear almacenamiento de objetos juntos y
aplicaciones de alto rendimiento. Cuando usa en el lugar con una sola consulta para
GraphQL junto con otras funciones de desarrollo de obtener información más rápida. Las
aplicaciones de MongoDB, como la autenticación consultas se enrutan automáticamente
integrada y el control de acceso a datos, también es al servicio de datos apropiado sin
fácil proteger su aplicación. tener que pensar en el movimiento de
datos, la replicación o ETL.

Arquitectura impulsada o Migración en vivo para mover una


base de datos MongoDB
por eventos autoadministrada al servicio Atlas o
para mover bases de datos Atlas entre
Como parte de los servicios más amplios proveedores de la nube.
disponibles para los usuarios de Atlas, las o Un nivel gratuito perpetuo de 512 MB.
funciones le permiten definir y ejecutar la lógica
del lado del servidor sin tener que aprovisionar o Atlas Database brinda servicio a un amplio
administrar servidores, lo que facilita la rango de cargas de trabajo para empresas
integración con servicios en la nube, la creación emergentes, compañías de Fortune 500 y
de API y más. Atlas Triggers le permite ejecutar agencias gubernamentales, incluidas
funciones automáticamente en tiempo real, en aplicaciones de misión crítica que manejan
respuesta a cambios en la base de datos o datos altamente confidenciales en industrias
eventos de autenticación de usuarios, o en reguladas.
intervalos preestablecidos.
15
Guía de arquitectura
de MongoDB

MongoDB para aplicaciones


de misión crítica en su centro
de datos
Si necesita ejecutar MongoDB en su propia Con Ops Manager, se puede automatizar la
infraestructura autoadministrada para cumplir implementación, el monitoreo, la copia de
con los requisitos reglamentarios o comerciales, seguridad y el escalado de MongoDB. También se
MongoDB Enterprise Advanced es un paquete administra el ciclo de vida completo de sus bases
ajustado con precisión de software avanzado, de datos MongoDB a través de una poderosa GUI
soporte, certificaciones y otros servicios que o programáticamente con API para permitir la
pueden ayudarlo. Se puede utilizar Enterprise integración con sus herramientas de
Advanced para impulsar una base de datos Infraestructura como código (IaC).
MongoDB detrás de una sola aplicación, o para
Los usuarios de Kubernetes pueden usar MongoDB
crear su propio servicio de base de datos
Enterprise Operator para Kubernetes, que se
privado y exponerlo a sus equipos de desarrollo.
integra con MongoDB Ops Manager para
Como parte de la suscripción MongoDB Enterprise automatizar y administrar clústeres de MongoDB.
Advanced, MongoDB Enterprise Server es una Le brinda control total sobre su implementación
versión del software de base de datos que incluye de MongoDB desde un único plano de control de
un motor de almacenamiento en memoria para un Kubernetes. Puede usar el operador con
alto rendimiento y una baja latencia predecible; Kubernetes ascendente o con cualquier
opciones de seguridad avanzadas, como controles distribución popular, como Red Hat OpenShift o
de acceso LDAP y Kerberos; auditoría integral; y un Pivotal Container Service (PKS).
motor de almacenamiento cifrado para proteger
MongoDB Connector para BI le permite usar
los datos en reposo.
MongoDB como fuente de datos para sus
MongoDB Ops Manager simplifica las tareas de plataformas de análisis y BI basadas en SQL
administración asociadas con la ejecución de existentes, como Tableau, Microstrategy, Looker
MongoDB en las instalaciones o en una nube y más. Se incluye con MongoDB Enterprise
privada. avanzado y está disponible en un modelo de pago
por uso para clústeres de bases de datos Atlas.

16
Guía de arquitectura
de MongoDB

Ejecute MongoDB gratis con


nuestras herramientas
MongoDB Community Server es la versión gratuita También lo ayuda a identificar problemas antes
disponible en la fuente del software de la base de de que se conviertan en emergencias y
datos. Se ha descargado cientos de millones de optimizar las operaciones. Con Cloud Manager,
veces e incluye toda la funcionalidad principal de se puede monitorear tendencias, ver
la base de datos (modelo de documento flexible, características de carga de trabajo en vivo,
API de consulta expresiva, replicación y configurar alertas y obtener sugerencias de
fragmentación) para respaldar la creación de una optimización de rendimiento.
amplia variedad de aplicaciones.

Conectores
MongoDB Compass
MongoDB Connector para Apache Spark expone
Se puede interactuar fácilmente con sus datos de todas las bibliotecas de Spark, incluidas Scala, Java,
MongoDB al usar MongoDB Compass, la GUI para Python y R. Los datos de MongoDB se materializan
MongoDB. A través de Compass, se puede como marcos de datos y conjuntos de datos para
explorar y manipular datos, crear consultas y el análisis con aprendizaje automático, gráficos,
canales de agregación visualmente desde la GUI y transmisión y API de SQL.
exportarlos como código a su aplicación, ver y
Con MongoDB Connector para Apache Kafka, se
crear índices, crear reglas de validación de
crea carteras de datos sólidas que mueven
esquemas y más.
eventos entre sistemas en tiempo real, utilizando
MongoDB como fuente y receptor para Kafka. El
Cloud Manager conector es compatible con MongoDB y
verificado por Confluent.
Cloud Manager es la plataforma de Puede usar cualquier distribución de Kubernetes
administración basada en la nube que le para administrar el ciclo de vida completo de sus
permite implementar, monitorear, respaldar y clústeres de MongoDB, dondequiera que elija
escalar MongoDB. Le permite automatizar ejecutarlos, desde la infraestructura local hasta la
tareas de administración como nube pública. Con las integraciones de
implementación, monitoreo y alertas, escalado, Kubernetes de MongoDB, se ejecuta y escala sus
actualizaciones, copias de seguridad y clústeres con facilidad, independientemente de la
optimización del rendimiento. topología de infraestructura elegida.

17
Guía de arquitectura
de MongoDB

Para empezar
Todas las industrias se encuentran en medio de En esta guía, exploramos los conceptos
la transformación digital. Muchas empresas no fundamentales que sustentan la arquitectura de
aprovechan todo el potencial de sus inversiones MongoDB. Se encuentran otras guías sobre temas
porque no logran modernizar su arquitectura de como el rendimiento, las operaciones y las
datos. Al paso que construye o rehace su mejores prácticas de seguridad en MongoDB.com.
empresa para un mundo digital, la velocidad
importa, medida por la rapidez con la que crea
aplicaciones, las escala y obtiene información de Se puede comenzar ahora con MongoDB al:
los datos que generan. Estas son las claves de 1. Revisar el documento técnico de
las aplicaciones que brindan mejores orientación de casos de uso para
experiencias al cliente; habilitan conocimientos identificar casos de uso aplicables para
más profundos basados​en datos; y hacen MongoDB.
posibles nuevos productos o modelos de
2. Puesta en marcha de un clúster de
negocio. MongoDB le permite atender a las MongoDB completamente administrado
demandas de las aplicaciones modernas con en el nivel gratuito de Atlas o descarga
una plataforma de datos de aplicaciones de MongoDB para el desarrollo local.
completa que incluye todos los servicios
3. Revisión de los manuales y tutoriales de
complementarios que necesitan los
MongoDB en nuestra documentación.
desarrolladores.

Puerto seguro
El desarrollo, el lanzamiento y el momento de cualquier característica o funcionalidad descrita para nuestros
productos de quedan a nuestra discreción exclusiva. Esta información solo tiene la intención de delinear la
dirección general de nuestro producto y no se debe confiar en ella para tomar una decisión de compra, ni es
un compromiso, promesa u obligación legal para entregar cualquier material, código o funcionalidad.

© 2021 MongoDB, Inc. MongoDB y el logo MongoDB son marcas registradas


de MongoDB, Inc. Publicado en noviembre de 2021.

18

También podría gustarte