SlideShare a Scribd company logo
1 of 89
A Z U R E C O S M O S D B
F U N D A M E N TA L S
James Whittaker - @docjamesw
“We are reducing the world to data”
L A S A P L I C A C I O N E S
M O D E R N A S E N F R E N TA N
N U E V O S D E S A F Í O S
Administrar y sincronizar datos distribuidos en todo el mundo
Entregar personalización que responde muy adecuadamente y
en tiempo real
Procesamiento y análisis de muchos datos complejos
Escalación tanto de rendimiento como de almacenamiento con
base en demanda global
Entrega de baja latencia a usuarios globales
Modernización de aplicaciones y datos existentes
SQL: MongoDB
API de
tabla
Distribución global
Escalabilidad horizontal elástica
de almacenamiento y rendimiento
Baja latencia garantizada en el percentil 99
SLAs completos
Cinco modelos de consistencia
bien definidos
A Z U R E C O S M O S D B
DocumentoFamilia de columnas
Valor de clave Gráfico
Un servicio de base de datos globalmente distribuido, escalable
masivamente y multi-modelo
C A R A C T E R I S T I C A S P R I N C I PA L E S
D I S T R I B U C I Ó N G LO B A L
PONGA SUS DATOS DONDE ESTÁN SUS USUARIOS
Replique automáticamente todos los datos de todo el mundo,
y en más regiones que Amazon y Google combinados.
• Disponible en todas las regiones de Azure
• Conmutación por error manual y automática
• Replicación multi-región automática y sincrónica
E S C A L A B I L I D A D E L Á S T I C A D E A L M A C E N A M I E N TO Y
R E N D I M I E N TO
SE ESCALA EN LA MEDIDA EN QUE SUS APLICACIONES
NECESITEN CAMBIAR
Independientemente y elásticamente escale almacenamiento
y rendimiento en todas las regiones, incluso durante ráfagas
de tráfico imprevisibles - con una base de datos que se
adapta a las necesidades de su aplicación.
• Escale el rendimiento de forma elástica de 10 a 100s de
millones de solicitudes/seg en múltiples regiones
• Soporte para solicitudes/seg para distintas cargas de trabajo
• Pague sólo por el rendimiento y el almacenamiento que
necesita
B A J A L AT E N C I A G A R A N T I Z A D A
PROPORCIONAR A LOS USUARIOS DE TODO EL
MUNDO ACCESO RÁPIDO A DATOS
Servir a <10 ms de lectura y <15 ms solicitudes de
escritura en el 99o percentil de la región más cercana
a los usuarios, mientras se entregan los datos a nivel
mundial.
Robusta Obsolescencia limitada Sesión Prefijo consistente Eventual
C I N C O M O D E LO S D E C O N S I S T E N C I A B I E N D E F I N I D O S
ELEGIR EL MEJOR MODELO DE CONSISTENCIA PARA SU APLICACIÓN
Ofrece cinco modelos de consistencia
Proporciona control sobre las compensaciones de
rendimiento-consistencia, respaldado por amplios SLAs.
Un modelo de programación intuitiva que ofrece baja latencia
y alta disponibilidad para su aplicación a escala del planeta.
M Ú LT I P L E S M O D E LO S D E D ATO S Y A P I S
UTILICE EL MODELO QUE MEJOR SE ADAPTE A SUS
NECESIDADES, Y LAS APIS, HERRAMIENTAS Y MARCOS DE
TRABAJO QUE PREFIERA
Familia de columna Documento
Valor de clave
API de
tabla
SQL:
MongoDB
Gráfico
Cosmos DB ofrece una multitud de APIs para el acceso y la consulta
de datos incluyendo, SQL, diversas APIs OSS populares y soporte
nativo para cargas de trabajo de NoSQL.
Uso de datos de valor de clave, tabulares, gráficos y de documentos
Los datos se indexan automáticamente, sin esquema o índices
secundarios necesarios
Consultas ultrarrápidas sin ningún retraso
M A N E J E C U A LQ U I E R T I P O D E D ATO S S I N
R E Q U E R I R D E E S Q U E M A O I N D E X A C I Ó N
El servicio sin esquema de Azure Cosmos DBs indexa automáticamente
todos sus datos, independientemente del modelo de datos, para
entregar consultas rapidísimas.
Ítem Color
Seguro para
microondas
Capacidad
Líquida
CPU Memoria
Almacen
amiento
Taza
geek
Grafito Sí 16ox ??? ??? ???
Taza de
grano de
café
Cuero No 12oz ??? ??? ???
Surface
book
Gris ??? ??? 3.4 GHz
Intel
Skylake
Core i7-
6600U
16GB 1 TB SSD
• Administración automática de índice
• Auto-indexación automática sincrónica
• No se necesitan esquemas ni índices secundarios
• Funciona a través de cada modelo de datos
GEEK
S L A S C O M P L E TO S
EJECUTE SUS APLICACIONES EN UNA INFRAESTRUCTURA DE CLASE
MUNDIAL
Azure Cosmos DB es el único servicio con SLAs respaldados financieramente
para una latencia de milisegundos en el 99o percentil, 99,999% de HA y
rendimiento y consistencia garantizados
HALatencia
<10 ms
Percentil 99o
99.999%
Rendimiento Consistencia
Garantizado Garantizado
C O N F Í E S U S D ATO S A L A S E G U R I D A D Y
C O N F O R M I D A D L Í D E R E S E N L A I N D U S T R I A
Azure es la nube más confiable del mundo, con más
certificaciones que cualquier otro proveedor de nube.
• Seguridad de nivel empresarial
• Cifrado en reposo
• El cifrado es activado automáticamente de manera
predeterminada
• Certificación completa de conformidad de Azure
D ATO S D I S T R I B U I D O S Y
D I S P O N I B L E S E N TO D O E L M U N D O
Ponga sus datos donde están sus usuarios para brindar
acceso en tiempo real y servicio ininterrumpido a los
clientes en cualquier parte del mundo.
• Replicación de datos global "turnkey" en todas las
regiones de Azure
• Experiencia de baja latencia garantizada para usuarios
globales
• Resiliencia para alta disponibilidad y recuperación ante
desastres
G E N E R E E X P E R I E N C I A S D E
C L I E N T E E N T I E M P O R E A L
Ofrece aplicaciones sensibles a la latencia con
personalización, licitación y detección de fraudes.
• Los modelos de aprendizaje de máquina generan
recomendaciones en tiempo real a través de
catálogos de productos
• Análisis de productos en milisegundos
• La baja latencia garantiza un alto rendimiento de
las aplicaciones en todo el mundo
• Modelos de consistencia sintonizables para
obtener conocimientos rápidos
Servicio de recomendaciones en línea
Ruta de acceso ACTIVA
Motor de recomendaciones sin conexión
Ruta de acceso INACTIVA
I D E A L PA R A J U E G O S Y
C O M E R C I O E L E C T R Ó N I C O
Mantener la calidad del servicio durante períodos de
alto tráfico que requieren escalabilidad y
rendimiento masivos.
• La escalación instantánea y elástica maneja las
ráfagas de tráfico
• Experiencia de usuario global ininterrumpida
• Acceso y procesamiento de datos de baja latencia
para bases de usuarios grandes y cambiantes
• Alta disponibilidad a lo largo de múltiples centros
de datos
T E L E M E T R I A D E S D E I OT
Las cargas de trabajo de sensor de IoT que son
diversas e imprevisibles requieren una plataforma
de datos que responda adecuadamente
• Manipulación perfecta de cualquier salida o
volumen de datos
• Los datos se ponen a disposición de manera
inmediata y son automáticamente indexados
• Alto número de escrituras por segundo, con
rendimiento estable de ingesta y consultas
D E S A R R O L LO S I M P L I F I C A D O
C O N A R Q U I T E C T U R A S I N
S E R V I D O R
Experimente una disminución en el tiempo de
implementación, una mejor escalabilidad y la libertad
de la administración de marco de trabajo con micro-
servicios orientados hacia eventos.
• Manipulación perfecta de cualquier salida o
volumen de datos
• Los datos se ponen a disposición de manera
inmediata y son automáticamente indexados
• Alto número de escrituras por segundo, con
rendimiento estable de ingesta y consultas
• Feeds de cambio resilientes y en tiempo real
siempre conectados y accesible
• Integración nativa con Azure Functions
N O S Q L L I F T & S H I F T
Facilite la modernización de datos con una migración
de perfecta de cargas de trabajo de NoSQL hacia la
nube.
• Las APIs de Azure Cosmos DB APIs para MongoDB
y Cassandra traen datos de aplicaciones desde
cualquier lugar hacia Azure Cosmos DB
• Aproveche las herramientas, controladores y
bibliotecas existentes y continúe utilizando los
SDKs de las aplicaciones existentes
• Geo-replicación "turnkey"
• No requiere infraestructura o administración de
VM
.NET
M O D E LO D E R E C U R S O S
Cuenta
Base de
datos
Base de
datos
Base de
datos
Base de
datos
Base de
datosContenedor
Base de
datos
Base de
datosÍtem
U R I Y C R E D E N C I A L E S D E C U E N TA
********.azure.com
IGeAvVUp …
C R E A R U N A C U E N TA
Cuenta
Base de
datos
Base de
datos
Base de
datos
Base de
datos
Base de
datosContenedor
Base de
datos
Base de
datosÍtem
R E P R E S E N TA C I O N E S D E B A S E D E D ATO S
Cuenta
Base de
datos
Base de
datos
Base de
datos
Base de
datos
Base de
datosContenedor
Base de
datos
Base de
datosÍtem
Base de
datos
Base de
datosContenedor
Base de
datos
Base de
datosÍtem
R E P R E S E N TA C I O N E S D E C O N T E N E D O R
Cuenta
Base de
datos
Base de
datos
Base de
datos
Base de
datos
Base de
datosContenedor
Base de
datos
Base de
datosÍtem
= Colección Gráfico Tabla
C R E A C I Ó N D E C O L E C C I O N E S - S Q L A P I
Cuenta
Base de
datos
Base de
datos
Base de
datos
Base de
datos
Base de
datosContenedor
Base de
datos
Base de
datosÍtem
R E C U R S O S A N I V E L D E C O N T E N E D O R
Cuenta
Base de
datos
Base de
datos
Base de
datos
Base de
datos
Base de
datosContenedor
Base de
datos
Base de
datosÍtem ConflictoSproc Triggers UDF
TO P O LO G I A Y PA R T I C I O N A M I E N TO
TO P O LO G Í A D E S I S T E M A
Resource
Manager
Language
Runtime(s)
Hosts
Query
Processor
RSM
Index Manager
Bw-tree++/ LLAMA++
Log Manager
IO Manager
Resource Governor
Transport
Database engine
Admission control
…
…
Planeta tierra Regiones de Azure Datacenters Stamps Fault domains
Cluster Machine Replica Database engine
Container
Various agents
TO P O LO G I A D E S I S T E M A
CONTENEDORES
Los recursos lógicos se “proyectan" en APIs como
tablas, colecciones o gráficos, que se compone de una
o más particiones físicas o servidores.
PARTICIONES DE RECURSOS
• Primitivos de coordinación altamente disponibles y
gobernados por recursos
• Constan de conjuntos de réplicas, con cada réplica
hospedando una instancia del motor de base de
datos
Contenedores
Particiones de recursos
ColeccionesTablas Gráficos
Inquilinos
Líder
Seguidor
Seguidor
Reenviador
Conjunto de réplicas
A partición(es) de recurso remoto
PA R T I C I O N E S
Cosmos DB Container
(ej. Colección)
Clave de partición: ID
de usuario
Abstracción de particionamiento lógico
Tras Bambalinas:
Conjuntos de particiones físicas
Hash (ID de usuario)
Distribución pseudo aleatoria de datos a lo largo de un rango de posibles valores
con hash
PA R T I C I O N E S
…
Partición 1 Partición 2 Partición n
# frugal de particiones con base en las necesidades reales de rendimiento y almacenamiento
(produciendo la escalabilidad con un bajo costo total de propiedad)
Hash (ID de usuario)
Distribución pseudo aleatoria de datos a lo largo de un rango de posibles valores
con hash
Andrew
Mike
…
Bob
Dharma
Shireesh
Karthik
Rimma
Alice
Carol
…
PA R T I C I O N E S
…
Partición 1 Partición 2 Partición n
¿Qué sucede cuando las particiones necesitan crecer?
Hash (ID de usuario)
Distribución pseudo aleatoria de datos a lo largo de un rango de posibles valores
con hash
Andrew
Mike
…
Bob
Dharma
Shireesh
Karthik
Rimma
Alice
Carol
…
PA R T I C I O N E S
Los Rangos de partición pueden ser dinámicamente sub-
divididos para hacer que la base de datos crezca perfectamente
conforme la aplicación crezca mientras se mantiene una alta
disponibilidad de manera simultánea.
La administración de particiones está completamente
administrada por Azure Cosmos DB, de modo que usted no
tiene que escribir código ni administrar sus particiones.
+
Partición x Partición
x1
Partición
x2
Hash (ID de usuario)
Distribución pseudo aleatoria de datos a lo largo de un rango de posibles valores
con hash
Rimma
Karthik
…
Dharma
Shireesh
Karthik
Rimma
Alice
Carol
…
Dharma
Shireesh
…
U N I D A D E S D E S O L I C I T U D ( R U )
U N I D A D E S D E S O L I C I T U D
Las Unidades de solicitud (RUS) son una unidad basada en
velocidad
Abstrae los recursos físicos para llevar a cabo las solicitudes
Clave para eficiencia de multi-inquilinos, SLAs y COGS
Actividades en primero y segundo plano
% IOPS% CPU% Memoria
U N I D A D E S D E S O L I C I T U D
Normalizado a través de diversos métodos de acceso
1 RU = 1 lectura de documento de 1 KB
Cada solicitud consume RUs fijos
Se aplica a lecturas, escrituras, consultas y ejecución de
procedimiento almacenado
GET
POST
PUT
QUERY
…
=
=
=
=
U N I D A D E S D E S O L I C I T U D
Aprovisionado en términos de RU/seg
Limitación de velocidad en función de la cantidad de
rendimiento aprovisionado
Puede ser aumentado o disminuido de forma instantánea
Se mide cada hora
Los procesos en segundo plano como expiración de TTL y
transformaciones de índice se programan cuando están
inactivos
Min RU/seg
Máx RU/seg
Solicitudesentrantes
Réplica inactiva
Límite de
velocidad
No hay límite de
velocidad
U N I D A D E S D E S O L I C I T U D
Cuenta
Base de
datos
Base de
datos
Base de
datos
Base de
datos
Base de
datosContenedor
U N I D A D E S D E S O L I C I T U D
Cuenta
Base de
datos
Base de
datos
Base de
datos
Base de
datos
Base de
datosContenedor
Base de
datos
Base de
datosContenedor
Base de
datos
Base de
datosContenedor
VA L I D A C I Ó N D E L A O P C I Ó N D E N I V E L D E
R E N D I M I E N TO
1. Compruebe si sus operaciones tienen limitación
de velocidad.
• Solicitudes que exceden el gráfico de capacidad
2. Verifique si el rendimiento consumido supera el
rendimiento aprovisionado en cualquiera de las
particiones físicas
• Max RU/segundo consumido de acuerdo al
gráfico de partición
3. Seleccione el momento en que el rendimiento
máximo consumido por partición exceda el
aprovisionado en el gráfico
• Rendimiento máximo consumido por cada
gráfico de partición
M OTO R D E I N D E X A M I E N TO
M A N E J E C U A LQ U I E R T I P O D E D ATO S S I N
R E Q U E R I R D E E S Q U E M A O I N D E X A C I Ó N
El servicio sin esquema de Azure Cosmos DBs indexa automáticamente
todos sus datos, independientemente del modelo de datos, para
entregar consultas rapidísimas.
Ítem Color
Seguro para
microondas
Capacidad
Líquida
CPU Memoria
Almacen
amiento
Taza
geek
Grafito Sí 16ox ??? ??? ???
Taza de
grano de
café
Cuero No 12oz ??? ??? ???
Surface
book
Gris ??? ??? 3.4 GHz
Intel
Skylake
Core i7-
6600U
16GB 1 TB SSD
• Administración automática de índice
• Auto-indexación automática sincrónica
• No se necesitan esquemas ni índices secundarios
• Funciona a través de cada modelo de datos
GEEK
I N D E X A D O D E D O C U M E N TO S
{
"locations": [
{
"country": "Germany",
"city": "Berlin"
},
{
"country": "France",
"city": "Paris"
}
],
"headquarter": "Belgium",
"exports": [
{ "city": "Moscow" },
{ "city": "Athens" }
]
}
locations headquarter exports
0
country city
Germany Berlin
1
country city
France Paris
0 1
city
Athens
city
Moscow
Belgium
I N D E X A D O D E D O C U M E N TO S
{
"locations": [
{
"country": "Germany",
"city": "Bonn",
"revenue": 200
}
],
"headquarter": "Italy",
"exports": [
{
"city": "Berlin",
"dealers": [
{ "name": "Hans" }
]
},
{ "city": "Athens" }
]
}
locations headquarter exports
0
country city
Germany Bonn
revenue
200
0 1
citycity
Berlin
Italy
dealers
0
name
Hans
I N D E X A D O D E D O C U M E N TO S
locations headquarter exports
0
country city
Germany Bonn
revenue
200
0 1
citycity
Berlin
Italy
dealers
0
name
Hans
locations headquarter exports
0
country city
Germany Berlin
1
country city
France Paris
0 1
city
Athens
city
Moscow
Belgium
Í N D I C E I N V E R T I D O
locations headquarter exports
0
country city
Germany
Berlin
revenue
200
0 1
city
Athens
city
Berlin
Italy
dealers
0
name
Hans
Bonn
1
country city
France Paris
Belgium
Moscow
Í N D I C E I N V E R T I D O
Terms Postings (Doc Ids)
$/locations/0/ 1, 2
locations/0/country 1, 2
locations/0/city 1, 2
0/country/Germany 1, 2
1/country/France 1
0/city/Moscow 1
0/dealers/0 2
… …
P O L Í T I C A S D E I N D E X A C I Ó N
POLÍTICAS DE INDEXACIÓN PERSONALIZADA
Aunque todos datos de Azure Cosmos DB están indexados
de manera predeterminada, usted puede especificar una
política de indexación personalizada para sus colecciones. Las
políticas de indexación personalizadas le permiten diseñar y
personalizar la forma de su índice, manteniendo la flexibilidad
del esquema.
• Defina compensaciones entre rendimiento de
almacenamiento, escritura y consultas y consistencia de
consulta
• Incluya o excluya documentos y rutas hacia y desde el
índice
• Configure diversos tipos de índice
{
"automatic": true,
"indexingMode": "Consistent",
"includedPaths": [{
"path": "/*",
"indexes": [{
"kind": "Hash",
"dataType": "String",
"precision": -1
}, {
"kind": "Range",
"dataType": "Number",
"precision": -1
}, {
"kind": "Spatial",
"dataType": "Point"
}]
}],
"excludedPaths": [{
"path": "/nonIndexedContent/*"
}]
}
T R A N S F O R M A C I O N E S D E Í N D I C E E N L Í N E A
CAMBIOS AL ÍNDICE SOBRE LA MARCHA
En Azure Cosmos DB usted puede realizar cambios a la
política de indexación de una colección sobre la marcha.
Los cambios pueden afectar la forma del índice,
incluyendo rutas, valores de precisión y su modelo de
consistencia.
Un cambio en la política de indexación requiere una
transformación efectiva del índice antiguo en un nuevo
índice.
N O S Q L – L I F T & S H I F T
Desafios de NoSQL en
IaaS / On-Premies:
Configuración y mantenimiento tedioso
Soluciones de Alta Disponibilidad complejas y costosas
Seguridad punta a punta
Sobre-aprovisionamiento para cubrir la demanda
Costos impredeciles
N O S Q L O N - P R E M I S E S
A Z U R E C O S M O S D B V S O N - P R E M N O S Q L
Azure Cosmos DB MongoDB on-prem
TCO No se requieren DBAs ni DevOps. Requiere DBAs o DevOps
Alta Disponibilidad SLA del 99,99% (una region) Requiere admnistración de replicas y
clusters en diferentes regions
Latencia SLA cubriendo < 10 ms para las lecturas y < 15 ms
para las escrituras el 99% del tiempo (una región)
Requiere configuración y tuning
Seguridad Encryption-at-rest y en la transmisión, Firewall por
IP, acceso por roles y llaves primarias y de lectura.
Configuración manual
Consistencia 5 diferentes modelos pre-configurados para elegir Eventual por defecto; Robusta puede ser
configurada manualmente
Capacidad No es necesario un monitoreo activo Requiere de monitoreo y planificación previa
para asegurar capacidad disponible
A Z U R E C O S M O S D B V S O N - P R E M N O S Q L
Azure Cosmos DB MongoDB on-prem
Escalabilidad Administración de índices automática sin
preocuparse por el esquema, con auto-indexación
sincrónica sin costo extra. Permite escalar el
almacenamiento a PBs y trillones de requests por
Segundo.
Requiere de ajustes en el esquema, y
administración de almacenamiento e
indexación.
Cobertura global Escala elástica a través de cualquier conjunto de
regions de Azure
Única región
Particiones Ilimitadas Requiere configuración manual
Replicas Replicación global y administración de replicas
automático
Requiere monitoreo de los clústeres,
creación y administración de sets de
replicas
Backups Backups automáticos geo-replicados Requiere configuración y administración
M I G R A R D ATO S D E S D E M O N G O D B
• mongoimport
• Archivos CSV, JSON generados por mongoexport
• mongoimport.exe --host <your_hostname>:10255 -u <your_username> -p <your_password> --db
<your_database> --collection <your_collection> --ssl --sslAllowInvalidCertificates --type json
--file C:sample.json --numInsertionWorkers <W> --batchSize <B>
• mongorestore
• Archivos mongodump (.bson)
• mongorestore.exe --host <your_hostname>:10255 -u <your_username> -p <your_password> --db
<your_database> --collection <your_collection> --ssl --sslAllowInvalidCertificates
<path_to_backup> --numInsertionWorkers <W> --batchSize <B>
S O P O R T E P R O G R A M AT I C O
MongoDB wire protocol
Azure Cosmos DB
Mongo API
M O N G O D B W I R E P R OTO C O L
Cassandra wire protocol
Azure Cosmos DB
Apache Cassandra API
C A S S A N D R A W I R E P R OTO C O L
C H A N G E F E E D
Registros persistentes dentro un contenedor Azure
Cosmos DB. Presentados en el orden en que fueron
modificados
E S C E N A R I O S D E C H A N G E F E E D
C H A N G E F E E D P R O C E S S O R L I B R A R Y
https://www.nuget.org/packages
/Microsoft.Azure.DocumentDB.ChangeFeedProcessor/
Nivel de aplicación de
procesamiento de
evento/stream
C H A N G E F E E D C O N PA R T I C I O N E S
Paralelización de consumidor
El Change Feed escucha para detectar cualquier cambio en la
colección de Azure Cosmos DB. A continuación, brinda como
salida la lista ordenada de documentos que fueron
cambiados en el orden en que fueron modificados.
Los cambios se conservan, pueden ser procesados de forma
asíncrona y progresivamente y la salida puede ser
posteriormente distribuida a través de uno o más
consumidores para el procesamiento paralelo. El Change
Feed está disponible para cada rango de clave de partición
dentro de la colección de documentos y, por lo tanto, puede
ser distribuido a través de uno o más consumidores para
procesamiento paralelo.
Consumidor 1
Consumidor 2
Consumidor 3
C H A N G E F E E D C O N PA R T I C I O N E S
I N T E G R A C I O N C O N A Z U R E F U N C T I O N S
I N T E G R A C I O N C O N A Z U R E F U N C T I O N S
R E P L I C A C I O N G LO B A L
D I S T R I B U C I O N G LO B A L
Alta disponibilidad
• Conmutación por error automática y manual
• La API de hospedaje múltiple elimina la necesidad de una
redistribución
Baja latencia (en cualquier parte del mundo)
• Los paquetes no pueden moverse más rápido que la
velocidad de la luz
• El envío de un paquete al otro lado del mundo bajo
condiciones de red ideales toma 100s de milisegundos.
• Usted puede engañar a la velocidad de la luz, empleando
localidad de datos
• CDN solucionó esto para contenido estático
• Azure Cosmos DB resuelve esto para contenido
dinámico
D I S T R I B U C I Ó N G LO B A L
• Replicación automática y transparente en todo el
mundo
• Cada partición contiene hospeda un conjunto de
réplicas por región
• Los clientes pueden probar la disponibilidad de
aplicaciones de extremo a extremo mediante la
simulación programática de conmutaciones por
error
• Todas las regiones están ocultas detrás de un único
URI global con capacidades de hospedaje múltiple
• Los clientes pueden agregar / eliminar
dinámicamente regiones adicionales en cualquier
momento
Escribe/
Lee
Lee
"airport" : “AMS" "airport" : “MEL"
Oeste de los
EE. UU:
Contenedor
"airport" : "LAX"
Distribución local (a través de partición horizontal)
Distribuciónmundial(departicionesderecursos)
Lee
30K de
transacciones/seg
Escribe
/
Lee
Lee
Lee
Europa
Occidental
30K de
transacciones/seg
Partition-key = "airport"
R E P L I C A C I Ó N D E D ATO S E N TO D O E L M U N D O
R E P L I C A C I Ó N D E D ATO S E N TO D O E L M U N D O
R E P L I C A C I Ó N D E D ATO S E N TO D O E L M U N D O
FA I LO V E R A U TO M ÁT I C O
FA I LO V E R M A N U A L
R E P L I C A C I Ó N D E D ATO S E N TO D O E L M U N D O
S O P O R T E M U LT I M A S T E R
aka.ms/multimasterdocs
Robusta Obsolescencia limitada Sesión Prefijo consistente Eventual
C I N C O M O D E LO S D E C O N S I S T E N C I A B I E N D E F I N I D O S
ELEGIR EL MEJOR MODELO DE CONSISTENCIA PARA SU APLICACIÓN
Cinco modelos de consistencia bien definidos
Reemplazar por solicitud
Proporciona control sobre las compensaciones de
rendimiento-consistencia, respaldado por amplios SLAs.
Un modelo de programación intuitiva que ofrece baja latencia
y alta disponibilidad para su aplicación a escala del planeta.
COMPENSACIONES CLARAS
• Latencia
• Disponibilidad
• Rendimiento
D E S M I T I F I C A R M O D E LO S D E C O N S I S T E N C I A
Consistencia robusta
Garantiza instrucción atómica. Una vez que la operación se completa, será
visible para todos los lectores de una manera muy consistente a través de las
réplicas.
Consistencia eventual
Las réplicas son eventualmente consistentes con cualquier operación. Hay un
potencial de lecturas fuera de orden. Menor costo y mayor rendimiento para
lecturas de todos los niveles de consistencia.
Robusta
Eventual
Obsolescencia limitada
Sesión
Prefijo consistente
D E S M I T I F I C A R M O D E LO S D E C O N S I S T E N C I A
Obsolescencia limitada
Lee el desfase que está por detrás de las escrituras en la mayoría de los
prefijos k o intervalos t. Propiedades similares para una consistencia robusta
excepto dentro de la ventana de obsolescencia.
Sesión
Dentro de una sesión, las lecturas y escrituras son monotónicas. Esto se
conoce como "lea sus escrituras" y "escritura sigue a lecturas". Consistencia
previsible para una sesión. Alto rendimiento de lectura y baja latencia fuera de
la sesión.
Prefijo consistente
Las lecturas nunca verán escrituras fuera de orden.
Algunos datos producidos por aplicaciones sólo
son útiles durante un periodo limitado de tiempo:
• Datos de eventos generados por máquina
• Datos de registro de aplicación
• Información de sesión de usuario
Es importante que el sistema de base de datos
sistemáticamente purgue estos datos a intervalos
preconfigurados.
D ATO S D E T I E M P O D E
V I D A C O R TO
P E R Í O D O D E V I D A ( T T L )
PURGAR LOS DATOS AUTOMÁTICAMENTE
Azure Cosmos DB le permite configurar el intervalo de
tiempo en el cual radiquen los documentos en la base de
datos antes de que se purguen automáticamente. El "Período
de vida" (TTL) de un documento se mide en segundos desde
la última modificación y se puede configurar a nivel de
colección con reemplazo bajo un régimen por documento.
.
R E G I S T R O S Q U E E X P I R A N U T I L I Z A N D O P E R Í O D O D E
V I D A
COMPORTAMIENTO TTL
La característica TTL es controlada por las propiedades TTL en dos
niveles: el nivel de colección y el nivel de documento.
• DefaultTTL para la colección
• Si faltan (o están configurados como nulos), los documentos
no se eliminan automáticamente.
• Si están presentes y el valor es "-1" = infinito, los documentos
no expiran predeterminadamente
• Si están presentes, y el valor es un número ("n"), los
documentos expiran "n" segundos después de la última
modificación
• TTL para los documentos:
• La propiedad es aplicable sólo s/i DefaultTTL está presente en
la colección primaria.
• Reemplaza el valor DefaultTTL de la colección primaria.
Los valores se configuran en segundos y se tratan como un delta de _ts
de cuando se modificó el documento por última vez.
Documento
Documento TTL
TTL predeterminado
QUÉ ES REGISTRADO POR AZURE DIAGNOSTIC
LOGS
Todas las solicitudes de backend autenticadas a lo largo
de todos los protocolos y APIs
• Incluye solicitudes con error
Operaciones de base de datos
• Incluye operaciones CRUD sobre todos los recursos
Operaciones de clave de cuenta
Solicitudes no autenticadas
• Solicitudes que generan una respuesta 401
R E G I S T R O D E A C T I V I D A D
P R O B A R LO C A L M E N T E
Azure Cosmos DB Emulator
aka.ms/cosmosdb-emulator
Azure Cosmos DB gratis
azure.microsoft.com/try/cosmosdb/
P R O B A R E N L A N U B E
aka.ms/cosmosdbri
C A PA C I D A D R E S E R VA D A
• Prepago de 1 a 3 años
• Hasta un 65% de descuento
cosmos.azure.com
C O S M O S D B E X P LO R E R
cosmos.azure.com
C O S M O S D B E X P LO R E R
docs.microsoft.com/azure/cosmos-db/tutorial-setup-ci-cd
C O S M O S D B A Z U R E D E V O P S
askcosmosdb@microsoft.com
@AzureCosmosDB
#CosmosDB
cosmosdb.com #azure-cosmosdb
Matías Quaranta - @ealsur

More Related Content

What's hot

Construyendo aplicaciones de Big Data en AWS
Construyendo aplicaciones de Big Data en AWSConstruyendo aplicaciones de Big Data en AWS
Construyendo aplicaciones de Big Data en AWSAmazon Web Services LATAM
 
Big Data: Arquitecturas y mejores prácticas en AWS
Big Data: Arquitecturas y mejores prácticas en AWSBig Data: Arquitecturas y mejores prácticas en AWS
Big Data: Arquitecturas y mejores prácticas en AWSAmazon Web Services LATAM
 
Introducción a R - Primeros pasos en R
Introducción a R - Primeros pasos en RIntroducción a R - Primeros pasos en R
Introducción a R - Primeros pasos en RSolidQ
 
Evaluación y prácticas para migrar a la nube
Evaluación y prácticas para migrar a la nubeEvaluación y prácticas para migrar a la nube
Evaluación y prácticas para migrar a la nubeAmazon Web Services LATAM
 
Técnicas para implementación de Continuous Delivery en AWS
Técnicas para implementación de Continuous Delivery en AWSTécnicas para implementación de Continuous Delivery en AWS
Técnicas para implementación de Continuous Delivery en AWSAmazon Web Services LATAM
 
Patrones avanzados de implementación de microservicios con Amazon ECS
Patrones avanzados de implementación de microservicios con Amazon ECSPatrones avanzados de implementación de microservicios con Amazon ECS
Patrones avanzados de implementación de microservicios con Amazon ECSAmazon Web Services LATAM
 
Eventos, Escalabilidad, y la Nube.
 Eventos, Escalabilidad, y la Nube. Eventos, Escalabilidad, y la Nube.
Eventos, Escalabilidad, y la Nube.confluent
 

What's hot (10)

Construyendo aplicaciones de Big Data en AWS
Construyendo aplicaciones de Big Data en AWSConstruyendo aplicaciones de Big Data en AWS
Construyendo aplicaciones de Big Data en AWS
 
Big Data: Arquitecturas y mejores prácticas en AWS
Big Data: Arquitecturas y mejores prácticas en AWSBig Data: Arquitecturas y mejores prácticas en AWS
Big Data: Arquitecturas y mejores prácticas en AWS
 
Introducción a R - Primeros pasos en R
Introducción a R - Primeros pasos en RIntroducción a R - Primeros pasos en R
Introducción a R - Primeros pasos en R
 
Evaluación y prácticas para migrar a la nube
Evaluación y prácticas para migrar a la nubeEvaluación y prácticas para migrar a la nube
Evaluación y prácticas para migrar a la nube
 
Técnicas para implementación de Continuous Delivery en AWS
Técnicas para implementación de Continuous Delivery en AWSTécnicas para implementación de Continuous Delivery en AWS
Técnicas para implementación de Continuous Delivery en AWS
 
Explorando los Sabores de Azure DW
Explorando los Sabores de Azure DWExplorando los Sabores de Azure DW
Explorando los Sabores de Azure DW
 
Servicios de Bases de Datos de AWS
Servicios de Bases de Datos de AWSServicios de Bases de Datos de AWS
Servicios de Bases de Datos de AWS
 
Patrones avanzados de implementación de microservicios con Amazon ECS
Patrones avanzados de implementación de microservicios con Amazon ECSPatrones avanzados de implementación de microservicios con Amazon ECS
Patrones avanzados de implementación de microservicios con Amazon ECS
 
Comenzando con Arquitecturas sin servidores
Comenzando con Arquitecturas sin servidoresComenzando con Arquitecturas sin servidores
Comenzando con Arquitecturas sin servidores
 
Eventos, Escalabilidad, y la Nube.
 Eventos, Escalabilidad, y la Nube. Eventos, Escalabilidad, y la Nube.
Eventos, Escalabilidad, y la Nube.
 

Similar to Expert Academy Argentina - Azure Cosmos DB Fundamentals

Industria 4.0 2017 - Almacenamiento y procesamiento de datos en la nube
Industria 4.0 2017 - Almacenamiento y procesamiento de datos en la nubeIndustria 4.0 2017 - Almacenamiento y procesamiento de datos en la nube
Industria 4.0 2017 - Almacenamiento y procesamiento de datos en la nubeRodrigo Corral
 
Mejores prácticas para migrar sus bases de datos a AWS
Mejores prácticas para migrar sus bases de datos a AWSMejores prácticas para migrar sus bases de datos a AWS
Mejores prácticas para migrar sus bases de datos a AWSAmazon Web Services LATAM
 
Aplicaciones móviles super-escalables
Aplicaciones móviles super-escalablesAplicaciones móviles super-escalables
Aplicaciones móviles super-escalablesSergio Borromei
 
Azure CosmosDB @ NETConf AR 2017
Azure CosmosDB @ NETConf AR 2017Azure CosmosDB @ NETConf AR 2017
Azure CosmosDB @ NETConf AR 2017Matias Quaranta
 
Escalando con SQL Server hasta la nube, un trayecto necesario - Adrian Miranda
Escalando con SQL Server hasta la nube, un trayecto necesario - Adrian MirandaEscalando con SQL Server hasta la nube, un trayecto necesario - Adrian Miranda
Escalando con SQL Server hasta la nube, un trayecto necesario - Adrian MirandaSpanishPASSVC
 
Servicios amazon en la nube.
Servicios amazon en la nube.Servicios amazon en la nube.
Servicios amazon en la nube.SusySotelo1
 
Seminario web: Simplificando el uso de su base de datos con Atlas
Seminario web: Simplificando el uso de su base de datos con AtlasSeminario web: Simplificando el uso de su base de datos con Atlas
Seminario web: Simplificando el uso de su base de datos con AtlasMongoDB
 
Introduccion a AWS
Introduccion a AWSIntroduccion a AWS
Introduccion a AWSHermann Pais
 
Migración de máquinas virtuales y recuperación ante desastres en AWS
Migración de máquinas virtuales y recuperación ante desastres en AWSMigración de máquinas virtuales y recuperación ante desastres en AWS
Migración de máquinas virtuales y recuperación ante desastres en AWSAmazon Web Services LATAM
 
Big data y las apis
Big data y  las apis Big data y  las apis
Big data y las apis CloudAppi
 
[CatchIT] Serverless con Azure Cosmos DB + Functions
[CatchIT] Serverless con Azure Cosmos DB + Functions[CatchIT] Serverless con Azure Cosmos DB + Functions
[CatchIT] Serverless con Azure Cosmos DB + FunctionsMatias Quaranta
 
SQL Server 2014 y La Plataforma de Datos
SQL Server 2014 y La Plataforma de DatosSQL Server 2014 y La Plataforma de Datos
SQL Server 2014 y La Plataforma de DatosJoseph Lopez
 
Sql server 2014 y la plataforma de datos
Sql server 2014 y la plataforma de datosSql server 2014 y la plataforma de datos
Sql server 2014 y la plataforma de datosSpanishPASSVC
 
SQL Azure Small
SQL Azure SmallSQL Azure Small
SQL Azure SmallWarGeek
 

Similar to Expert Academy Argentina - Azure Cosmos DB Fundamentals (20)

Industria 4.0 2017 - Almacenamiento y procesamiento de datos en la nube
Industria 4.0 2017 - Almacenamiento y procesamiento de datos en la nubeIndustria 4.0 2017 - Almacenamiento y procesamiento de datos en la nube
Industria 4.0 2017 - Almacenamiento y procesamiento de datos en la nube
 
Big Data en Azure: Azure Data Lake
Big Data en Azure: Azure Data LakeBig Data en Azure: Azure Data Lake
Big Data en Azure: Azure Data Lake
 
Mejores prácticas para migrar sus bases de datos a AWS
Mejores prácticas para migrar sus bases de datos a AWSMejores prácticas para migrar sus bases de datos a AWS
Mejores prácticas para migrar sus bases de datos a AWS
 
Aplicaciones móviles super-escalables
Aplicaciones móviles super-escalablesAplicaciones móviles super-escalables
Aplicaciones móviles super-escalables
 
Azure CosmosDB @ NETConf AR 2017
Azure CosmosDB @ NETConf AR 2017Azure CosmosDB @ NETConf AR 2017
Azure CosmosDB @ NETConf AR 2017
 
Escalando con SQL Server hasta la nube, un trayecto necesario - Adrian Miranda
Escalando con SQL Server hasta la nube, un trayecto necesario - Adrian MirandaEscalando con SQL Server hasta la nube, un trayecto necesario - Adrian Miranda
Escalando con SQL Server hasta la nube, un trayecto necesario - Adrian Miranda
 
Servicios amazon en la nube.
Servicios amazon en la nube.Servicios amazon en la nube.
Servicios amazon en la nube.
 
Seminario web: Simplificando el uso de su base de datos con Atlas
Seminario web: Simplificando el uso de su base de datos con AtlasSeminario web: Simplificando el uso de su base de datos con Atlas
Seminario web: Simplificando el uso de su base de datos con Atlas
 
Introduccion a AWS
Introduccion a AWSIntroduccion a AWS
Introduccion a AWS
 
Migración de máquinas virtuales y recuperación ante desastres en AWS
Migración de máquinas virtuales y recuperación ante desastres en AWSMigración de máquinas virtuales y recuperación ante desastres en AWS
Migración de máquinas virtuales y recuperación ante desastres en AWS
 
Base de datos
Base de datosBase de datos
Base de datos
 
Big data y las apis
Big data y  las apis Big data y  las apis
Big data y las apis
 
[CatchIT] Serverless con Azure Cosmos DB + Functions
[CatchIT] Serverless con Azure Cosmos DB + Functions[CatchIT] Serverless con Azure Cosmos DB + Functions
[CatchIT] Serverless con Azure Cosmos DB + Functions
 
Bases de datos_Arturo Aldana Reyes
Bases de datos_Arturo Aldana ReyesBases de datos_Arturo Aldana Reyes
Bases de datos_Arturo Aldana Reyes
 
SQL Server 2014 y La Plataforma de Datos
SQL Server 2014 y La Plataforma de DatosSQL Server 2014 y La Plataforma de Datos
SQL Server 2014 y La Plataforma de Datos
 
Sql server 2014 y la plataforma de datos
Sql server 2014 y la plataforma de datosSql server 2014 y la plataforma de datos
Sql server 2014 y la plataforma de datos
 
Descubriendo windows azure
Descubriendo windows azureDescubriendo windows azure
Descubriendo windows azure
 
Azure Data Lake
Azure Data LakeAzure Data Lake
Azure Data Lake
 
Azure data lake
Azure data lakeAzure data lake
Azure data lake
 
SQL Azure Small
SQL Azure SmallSQL Azure Small
SQL Azure Small
 

More from Matias Quaranta

Cooking serverless recipes with Azure Functions and Azure Cosmos DB - NET Con...
Cooking serverless recipes with Azure Functions and Azure Cosmos DB - NET Con...Cooking serverless recipes with Azure Functions and Azure Cosmos DB - NET Con...
Cooking serverless recipes with Azure Functions and Azure Cosmos DB - NET Con...Matias Quaranta
 
Microsoft Data & AI Experience LATAM 2018 - Azure Cosmos DB
Microsoft Data & AI Experience LATAM 2018 - Azure Cosmos DBMicrosoft Data & AI Experience LATAM 2018 - Azure Cosmos DB
Microsoft Data & AI Experience LATAM 2018 - Azure Cosmos DBMatias Quaranta
 
Azure Cosmos DB - NET Conf UY 2017
Azure Cosmos DB - NET Conf UY 2017Azure Cosmos DB - NET Conf UY 2017
Azure Cosmos DB - NET Conf UY 2017Matias Quaranta
 
Azure Cosmos DB - Azure Austin Meetup
Azure Cosmos DB - Azure Austin MeetupAzure Cosmos DB - Azure Austin Meetup
Azure Cosmos DB - Azure Austin MeetupMatias Quaranta
 
Azure Cosmos DB - NET Conf AR 2017 - English
Azure Cosmos DB - NET Conf AR 2017 - EnglishAzure Cosmos DB - NET Conf AR 2017 - English
Azure Cosmos DB - NET Conf AR 2017 - EnglishMatias Quaranta
 
Azure DocumentDB en Global Azure Bootcamp 2017
Azure DocumentDB en Global Azure Bootcamp 2017Azure DocumentDB en Global Azure Bootcamp 2017
Azure DocumentDB en Global Azure Bootcamp 2017Matias Quaranta
 
Conociendo Azure AppService
Conociendo Azure AppServiceConociendo Azure AppService
Conociendo Azure AppServiceMatias Quaranta
 
Azure DocumentDB en Dev@Nights
Azure DocumentDB en Dev@NightsAzure DocumentDB en Dev@Nights
Azure DocumentDB en Dev@NightsMatias Quaranta
 

More from Matias Quaranta (9)

Cooking serverless recipes with Azure Functions and Azure Cosmos DB - NET Con...
Cooking serverless recipes with Azure Functions and Azure Cosmos DB - NET Con...Cooking serverless recipes with Azure Functions and Azure Cosmos DB - NET Con...
Cooking serverless recipes with Azure Functions and Azure Cosmos DB - NET Con...
 
Microsoft Data & AI Experience LATAM 2018 - Azure Cosmos DB
Microsoft Data & AI Experience LATAM 2018 - Azure Cosmos DBMicrosoft Data & AI Experience LATAM 2018 - Azure Cosmos DB
Microsoft Data & AI Experience LATAM 2018 - Azure Cosmos DB
 
Azure Cosmos DB - NET Conf UY 2017
Azure Cosmos DB - NET Conf UY 2017Azure Cosmos DB - NET Conf UY 2017
Azure Cosmos DB - NET Conf UY 2017
 
Azure Cosmos DB - Azure Austin Meetup
Azure Cosmos DB - Azure Austin MeetupAzure Cosmos DB - Azure Austin Meetup
Azure Cosmos DB - Azure Austin Meetup
 
Azure Cosmos DB - NET Conf AR 2017 - English
Azure Cosmos DB - NET Conf AR 2017 - EnglishAzure Cosmos DB - NET Conf AR 2017 - English
Azure Cosmos DB - NET Conf AR 2017 - English
 
Azure DocumentDB en Global Azure Bootcamp 2017
Azure DocumentDB en Global Azure Bootcamp 2017Azure DocumentDB en Global Azure Bootcamp 2017
Azure DocumentDB en Global Azure Bootcamp 2017
 
Conociendo Azure AppService
Conociendo Azure AppServiceConociendo Azure AppService
Conociendo Azure AppService
 
Azure DocumentDB en Dev@Nights
Azure DocumentDB en Dev@NightsAzure DocumentDB en Dev@Nights
Azure DocumentDB en Dev@Nights
 
Azure Web Scalability
Azure Web ScalabilityAzure Web Scalability
Azure Web Scalability
 

Recently uploaded

diseño de una linea de produccion de jabon liquido.pptx
diseño de una linea de produccion de jabon liquido.pptxdiseño de una linea de produccion de jabon liquido.pptx
diseño de una linea de produccion de jabon liquido.pptxHhJhv
 
Investigacion cualitativa y cuantitativa....pdf
Investigacion cualitativa y cuantitativa....pdfInvestigacion cualitativa y cuantitativa....pdf
Investigacion cualitativa y cuantitativa....pdfalexanderleonyonange
 
Los primeros 60 países por IDH en el año (2024).pdf
Los primeros 60 países por IDH en el año (2024).pdfLos primeros 60 países por IDH en el año (2024).pdf
Los primeros 60 países por IDH en el año (2024).pdfJC Díaz Herrera
 
6.3 Hidrologia Geomorfologia Cuenca.pptx
6.3 Hidrologia Geomorfologia Cuenca.pptx6.3 Hidrologia Geomorfologia Cuenca.pptx
6.3 Hidrologia Geomorfologia Cuenca.pptxBrallanDanielRamrezS
 
02 protocolo en caso de robo o asalto.pdf
02 protocolo en caso de robo o asalto.pdf02 protocolo en caso de robo o asalto.pdf
02 protocolo en caso de robo o asalto.pdfguillermobernalocamp1
 
Porcentaje de población blanca europea en Europa Occidental (1923-2024).pdf
Porcentaje de población blanca europea en Europa Occidental (1923-2024).pdfPorcentaje de población blanca europea en Europa Occidental (1923-2024).pdf
Porcentaje de población blanca europea en Europa Occidental (1923-2024).pdfJC Díaz Herrera
 
INFORME FINAL ESTADISTICA DESCRIPTIVA E INFERENCIAL
INFORME FINAL ESTADISTICA DESCRIPTIVA E INFERENCIALINFORME FINAL ESTADISTICA DESCRIPTIVA E INFERENCIAL
INFORME FINAL ESTADISTICA DESCRIPTIVA E INFERENCIALMANUELVILELA7
 
metodo SOAP utilizado para evaluar el estado de un paciente
metodo SOAP utilizado para evaluar el estado de un pacientemetodo SOAP utilizado para evaluar el estado de un paciente
metodo SOAP utilizado para evaluar el estado de un pacienteMedicinaInternaresid1
 
variables-estadisticas. Presentación powerpoint
variables-estadisticas. Presentación powerpointvariables-estadisticas. Presentación powerpoint
variables-estadisticas. Presentación powerpointaria66611782972
 
Principales Retos Demográficos de Puerto Rico
Principales Retos Demográficos de Puerto RicoPrincipales Retos Demográficos de Puerto Rico
Principales Retos Demográficos de Puerto RicoRaúl Figueroa
 
P.P ANÁLISIS DE UN TEXTO BÍBLICO. TEMA 10.pptx
P.P ANÁLISIS DE UN TEXTO BÍBLICO. TEMA 10.pptxP.P ANÁLISIS DE UN TEXTO BÍBLICO. TEMA 10.pptx
P.P ANÁLISIS DE UN TEXTO BÍBLICO. TEMA 10.pptxJafetColli
 
biometria hematica y hemostasia y preanalitica.pptx
biometria hematica y hemostasia y preanalitica.pptxbiometria hematica y hemostasia y preanalitica.pptx
biometria hematica y hemostasia y preanalitica.pptxmariabeatrizbermudez
 
MARCO TEORICO, SEMINARIO DE INVESTIGACION,
MARCO TEORICO, SEMINARIO DE INVESTIGACION,MARCO TEORICO, SEMINARIO DE INVESTIGACION,
MARCO TEORICO, SEMINARIO DE INVESTIGACION,EmmanuelDelJessGonza
 
Conversacion.pptx en guarani boliviano latino
Conversacion.pptx en guarani boliviano latinoConversacion.pptx en guarani boliviano latino
Conversacion.pptx en guarani boliviano latinoBESTTech1
 
EPIDEMIO CANCER PULMON resumen nnn.pptx
EPIDEMIO CANCER PULMON  resumen nnn.pptxEPIDEMIO CANCER PULMON  resumen nnn.pptx
EPIDEMIO CANCER PULMON resumen nnn.pptxJEFFERSONMEDRANOCHAV
 
procedimiento paran la planificación en los centros educativos tipo v(multig...
procedimiento  paran la planificación en los centros educativos tipo v(multig...procedimiento  paran la planificación en los centros educativos tipo v(multig...
procedimiento paran la planificación en los centros educativos tipo v(multig...claudioluna1121
 
data lista de ingresantes de la universidad de ucayali 2024.pdf
data lista de ingresantes de la universidad de ucayali 2024.pdfdata lista de ingresantes de la universidad de ucayali 2024.pdf
data lista de ingresantes de la universidad de ucayali 2024.pdfLizRamirez182254
 
Alfredo Gabriel Rodriguez Yajure Tarea#1
Alfredo Gabriel Rodriguez Yajure Tarea#1Alfredo Gabriel Rodriguez Yajure Tarea#1
Alfredo Gabriel Rodriguez Yajure Tarea#1alfredo130306
 
PRESENTACIÓN DR. ÓSCAR CABRERA - Visión Económica de El Salvador.pptx
PRESENTACIÓN DR. ÓSCAR CABRERA - Visión Económica de El Salvador.pptxPRESENTACIÓN DR. ÓSCAR CABRERA - Visión Económica de El Salvador.pptx
PRESENTACIÓN DR. ÓSCAR CABRERA - Visión Económica de El Salvador.pptxMiguelHernndez589343
 
Las familias más ricas de África en el año (2024).pdf
Las familias más ricas de África en el año (2024).pdfLas familias más ricas de África en el año (2024).pdf
Las familias más ricas de África en el año (2024).pdfJC Díaz Herrera
 

Recently uploaded (20)

diseño de una linea de produccion de jabon liquido.pptx
diseño de una linea de produccion de jabon liquido.pptxdiseño de una linea de produccion de jabon liquido.pptx
diseño de una linea de produccion de jabon liquido.pptx
 
Investigacion cualitativa y cuantitativa....pdf
Investigacion cualitativa y cuantitativa....pdfInvestigacion cualitativa y cuantitativa....pdf
Investigacion cualitativa y cuantitativa....pdf
 
Los primeros 60 países por IDH en el año (2024).pdf
Los primeros 60 países por IDH en el año (2024).pdfLos primeros 60 países por IDH en el año (2024).pdf
Los primeros 60 países por IDH en el año (2024).pdf
 
6.3 Hidrologia Geomorfologia Cuenca.pptx
6.3 Hidrologia Geomorfologia Cuenca.pptx6.3 Hidrologia Geomorfologia Cuenca.pptx
6.3 Hidrologia Geomorfologia Cuenca.pptx
 
02 protocolo en caso de robo o asalto.pdf
02 protocolo en caso de robo o asalto.pdf02 protocolo en caso de robo o asalto.pdf
02 protocolo en caso de robo o asalto.pdf
 
Porcentaje de población blanca europea en Europa Occidental (1923-2024).pdf
Porcentaje de población blanca europea en Europa Occidental (1923-2024).pdfPorcentaje de población blanca europea en Europa Occidental (1923-2024).pdf
Porcentaje de población blanca europea en Europa Occidental (1923-2024).pdf
 
INFORME FINAL ESTADISTICA DESCRIPTIVA E INFERENCIAL
INFORME FINAL ESTADISTICA DESCRIPTIVA E INFERENCIALINFORME FINAL ESTADISTICA DESCRIPTIVA E INFERENCIAL
INFORME FINAL ESTADISTICA DESCRIPTIVA E INFERENCIAL
 
metodo SOAP utilizado para evaluar el estado de un paciente
metodo SOAP utilizado para evaluar el estado de un pacientemetodo SOAP utilizado para evaluar el estado de un paciente
metodo SOAP utilizado para evaluar el estado de un paciente
 
variables-estadisticas. Presentación powerpoint
variables-estadisticas. Presentación powerpointvariables-estadisticas. Presentación powerpoint
variables-estadisticas. Presentación powerpoint
 
Principales Retos Demográficos de Puerto Rico
Principales Retos Demográficos de Puerto RicoPrincipales Retos Demográficos de Puerto Rico
Principales Retos Demográficos de Puerto Rico
 
P.P ANÁLISIS DE UN TEXTO BÍBLICO. TEMA 10.pptx
P.P ANÁLISIS DE UN TEXTO BÍBLICO. TEMA 10.pptxP.P ANÁLISIS DE UN TEXTO BÍBLICO. TEMA 10.pptx
P.P ANÁLISIS DE UN TEXTO BÍBLICO. TEMA 10.pptx
 
biometria hematica y hemostasia y preanalitica.pptx
biometria hematica y hemostasia y preanalitica.pptxbiometria hematica y hemostasia y preanalitica.pptx
biometria hematica y hemostasia y preanalitica.pptx
 
MARCO TEORICO, SEMINARIO DE INVESTIGACION,
MARCO TEORICO, SEMINARIO DE INVESTIGACION,MARCO TEORICO, SEMINARIO DE INVESTIGACION,
MARCO TEORICO, SEMINARIO DE INVESTIGACION,
 
Conversacion.pptx en guarani boliviano latino
Conversacion.pptx en guarani boliviano latinoConversacion.pptx en guarani boliviano latino
Conversacion.pptx en guarani boliviano latino
 
EPIDEMIO CANCER PULMON resumen nnn.pptx
EPIDEMIO CANCER PULMON  resumen nnn.pptxEPIDEMIO CANCER PULMON  resumen nnn.pptx
EPIDEMIO CANCER PULMON resumen nnn.pptx
 
procedimiento paran la planificación en los centros educativos tipo v(multig...
procedimiento  paran la planificación en los centros educativos tipo v(multig...procedimiento  paran la planificación en los centros educativos tipo v(multig...
procedimiento paran la planificación en los centros educativos tipo v(multig...
 
data lista de ingresantes de la universidad de ucayali 2024.pdf
data lista de ingresantes de la universidad de ucayali 2024.pdfdata lista de ingresantes de la universidad de ucayali 2024.pdf
data lista de ingresantes de la universidad de ucayali 2024.pdf
 
Alfredo Gabriel Rodriguez Yajure Tarea#1
Alfredo Gabriel Rodriguez Yajure Tarea#1Alfredo Gabriel Rodriguez Yajure Tarea#1
Alfredo Gabriel Rodriguez Yajure Tarea#1
 
PRESENTACIÓN DR. ÓSCAR CABRERA - Visión Económica de El Salvador.pptx
PRESENTACIÓN DR. ÓSCAR CABRERA - Visión Económica de El Salvador.pptxPRESENTACIÓN DR. ÓSCAR CABRERA - Visión Económica de El Salvador.pptx
PRESENTACIÓN DR. ÓSCAR CABRERA - Visión Económica de El Salvador.pptx
 
Las familias más ricas de África en el año (2024).pdf
Las familias más ricas de África en el año (2024).pdfLas familias más ricas de África en el año (2024).pdf
Las familias más ricas de África en el año (2024).pdf
 

Expert Academy Argentina - Azure Cosmos DB Fundamentals

  • 1. A Z U R E C O S M O S D B F U N D A M E N TA L S
  • 2. James Whittaker - @docjamesw “We are reducing the world to data”
  • 3. L A S A P L I C A C I O N E S M O D E R N A S E N F R E N TA N N U E V O S D E S A F Í O S Administrar y sincronizar datos distribuidos en todo el mundo Entregar personalización que responde muy adecuadamente y en tiempo real Procesamiento y análisis de muchos datos complejos Escalación tanto de rendimiento como de almacenamiento con base en demanda global Entrega de baja latencia a usuarios globales Modernización de aplicaciones y datos existentes
  • 4. SQL: MongoDB API de tabla Distribución global Escalabilidad horizontal elástica de almacenamiento y rendimiento Baja latencia garantizada en el percentil 99 SLAs completos Cinco modelos de consistencia bien definidos A Z U R E C O S M O S D B DocumentoFamilia de columnas Valor de clave Gráfico Un servicio de base de datos globalmente distribuido, escalable masivamente y multi-modelo
  • 5. C A R A C T E R I S T I C A S P R I N C I PA L E S
  • 6. D I S T R I B U C I Ó N G LO B A L PONGA SUS DATOS DONDE ESTÁN SUS USUARIOS Replique automáticamente todos los datos de todo el mundo, y en más regiones que Amazon y Google combinados. • Disponible en todas las regiones de Azure • Conmutación por error manual y automática • Replicación multi-región automática y sincrónica
  • 7. E S C A L A B I L I D A D E L Á S T I C A D E A L M A C E N A M I E N TO Y R E N D I M I E N TO SE ESCALA EN LA MEDIDA EN QUE SUS APLICACIONES NECESITEN CAMBIAR Independientemente y elásticamente escale almacenamiento y rendimiento en todas las regiones, incluso durante ráfagas de tráfico imprevisibles - con una base de datos que se adapta a las necesidades de su aplicación. • Escale el rendimiento de forma elástica de 10 a 100s de millones de solicitudes/seg en múltiples regiones • Soporte para solicitudes/seg para distintas cargas de trabajo • Pague sólo por el rendimiento y el almacenamiento que necesita
  • 8. B A J A L AT E N C I A G A R A N T I Z A D A PROPORCIONAR A LOS USUARIOS DE TODO EL MUNDO ACCESO RÁPIDO A DATOS Servir a <10 ms de lectura y <15 ms solicitudes de escritura en el 99o percentil de la región más cercana a los usuarios, mientras se entregan los datos a nivel mundial.
  • 9. Robusta Obsolescencia limitada Sesión Prefijo consistente Eventual C I N C O M O D E LO S D E C O N S I S T E N C I A B I E N D E F I N I D O S ELEGIR EL MEJOR MODELO DE CONSISTENCIA PARA SU APLICACIÓN Ofrece cinco modelos de consistencia Proporciona control sobre las compensaciones de rendimiento-consistencia, respaldado por amplios SLAs. Un modelo de programación intuitiva que ofrece baja latencia y alta disponibilidad para su aplicación a escala del planeta.
  • 10. M Ú LT I P L E S M O D E LO S D E D ATO S Y A P I S UTILICE EL MODELO QUE MEJOR SE ADAPTE A SUS NECESIDADES, Y LAS APIS, HERRAMIENTAS Y MARCOS DE TRABAJO QUE PREFIERA Familia de columna Documento Valor de clave API de tabla SQL: MongoDB Gráfico Cosmos DB ofrece una multitud de APIs para el acceso y la consulta de datos incluyendo, SQL, diversas APIs OSS populares y soporte nativo para cargas de trabajo de NoSQL. Uso de datos de valor de clave, tabulares, gráficos y de documentos Los datos se indexan automáticamente, sin esquema o índices secundarios necesarios Consultas ultrarrápidas sin ningún retraso
  • 11. M A N E J E C U A LQ U I E R T I P O D E D ATO S S I N R E Q U E R I R D E E S Q U E M A O I N D E X A C I Ó N El servicio sin esquema de Azure Cosmos DBs indexa automáticamente todos sus datos, independientemente del modelo de datos, para entregar consultas rapidísimas. Ítem Color Seguro para microondas Capacidad Líquida CPU Memoria Almacen amiento Taza geek Grafito Sí 16ox ??? ??? ??? Taza de grano de café Cuero No 12oz ??? ??? ??? Surface book Gris ??? ??? 3.4 GHz Intel Skylake Core i7- 6600U 16GB 1 TB SSD • Administración automática de índice • Auto-indexación automática sincrónica • No se necesitan esquemas ni índices secundarios • Funciona a través de cada modelo de datos GEEK
  • 12. S L A S C O M P L E TO S EJECUTE SUS APLICACIONES EN UNA INFRAESTRUCTURA DE CLASE MUNDIAL Azure Cosmos DB es el único servicio con SLAs respaldados financieramente para una latencia de milisegundos en el 99o percentil, 99,999% de HA y rendimiento y consistencia garantizados HALatencia <10 ms Percentil 99o 99.999% Rendimiento Consistencia Garantizado Garantizado
  • 13. C O N F Í E S U S D ATO S A L A S E G U R I D A D Y C O N F O R M I D A D L Í D E R E S E N L A I N D U S T R I A Azure es la nube más confiable del mundo, con más certificaciones que cualquier otro proveedor de nube. • Seguridad de nivel empresarial • Cifrado en reposo • El cifrado es activado automáticamente de manera predeterminada • Certificación completa de conformidad de Azure
  • 14. D ATO S D I S T R I B U I D O S Y D I S P O N I B L E S E N TO D O E L M U N D O Ponga sus datos donde están sus usuarios para brindar acceso en tiempo real y servicio ininterrumpido a los clientes en cualquier parte del mundo. • Replicación de datos global "turnkey" en todas las regiones de Azure • Experiencia de baja latencia garantizada para usuarios globales • Resiliencia para alta disponibilidad y recuperación ante desastres
  • 15. G E N E R E E X P E R I E N C I A S D E C L I E N T E E N T I E M P O R E A L Ofrece aplicaciones sensibles a la latencia con personalización, licitación y detección de fraudes. • Los modelos de aprendizaje de máquina generan recomendaciones en tiempo real a través de catálogos de productos • Análisis de productos en milisegundos • La baja latencia garantiza un alto rendimiento de las aplicaciones en todo el mundo • Modelos de consistencia sintonizables para obtener conocimientos rápidos Servicio de recomendaciones en línea Ruta de acceso ACTIVA Motor de recomendaciones sin conexión Ruta de acceso INACTIVA
  • 16. I D E A L PA R A J U E G O S Y C O M E R C I O E L E C T R Ó N I C O Mantener la calidad del servicio durante períodos de alto tráfico que requieren escalabilidad y rendimiento masivos. • La escalación instantánea y elástica maneja las ráfagas de tráfico • Experiencia de usuario global ininterrumpida • Acceso y procesamiento de datos de baja latencia para bases de usuarios grandes y cambiantes • Alta disponibilidad a lo largo de múltiples centros de datos
  • 17. T E L E M E T R I A D E S D E I OT Las cargas de trabajo de sensor de IoT que son diversas e imprevisibles requieren una plataforma de datos que responda adecuadamente • Manipulación perfecta de cualquier salida o volumen de datos • Los datos se ponen a disposición de manera inmediata y son automáticamente indexados • Alto número de escrituras por segundo, con rendimiento estable de ingesta y consultas
  • 18. D E S A R R O L LO S I M P L I F I C A D O C O N A R Q U I T E C T U R A S I N S E R V I D O R Experimente una disminución en el tiempo de implementación, una mejor escalabilidad y la libertad de la administración de marco de trabajo con micro- servicios orientados hacia eventos. • Manipulación perfecta de cualquier salida o volumen de datos • Los datos se ponen a disposición de manera inmediata y son automáticamente indexados • Alto número de escrituras por segundo, con rendimiento estable de ingesta y consultas • Feeds de cambio resilientes y en tiempo real siempre conectados y accesible • Integración nativa con Azure Functions
  • 19. N O S Q L L I F T & S H I F T Facilite la modernización de datos con una migración de perfecta de cargas de trabajo de NoSQL hacia la nube. • Las APIs de Azure Cosmos DB APIs para MongoDB y Cassandra traen datos de aplicaciones desde cualquier lugar hacia Azure Cosmos DB • Aproveche las herramientas, controladores y bibliotecas existentes y continúe utilizando los SDKs de las aplicaciones existentes • Geo-replicación "turnkey" • No requiere infraestructura o administración de VM .NET
  • 20. M O D E LO D E R E C U R S O S
  • 21. Cuenta Base de datos Base de datos Base de datos Base de datos Base de datosContenedor Base de datos Base de datosÍtem U R I Y C R E D E N C I A L E S D E C U E N TA ********.azure.com IGeAvVUp …
  • 22. C R E A R U N A C U E N TA Cuenta Base de datos Base de datos Base de datos Base de datos Base de datosContenedor Base de datos Base de datosÍtem
  • 23. R E P R E S E N TA C I O N E S D E B A S E D E D ATO S Cuenta Base de datos Base de datos Base de datos Base de datos Base de datosContenedor Base de datos Base de datosÍtem Base de datos Base de datosContenedor Base de datos Base de datosÍtem
  • 24. R E P R E S E N TA C I O N E S D E C O N T E N E D O R Cuenta Base de datos Base de datos Base de datos Base de datos Base de datosContenedor Base de datos Base de datosÍtem = Colección Gráfico Tabla
  • 25. C R E A C I Ó N D E C O L E C C I O N E S - S Q L A P I Cuenta Base de datos Base de datos Base de datos Base de datos Base de datosContenedor Base de datos Base de datosÍtem
  • 26. R E C U R S O S A N I V E L D E C O N T E N E D O R Cuenta Base de datos Base de datos Base de datos Base de datos Base de datosContenedor Base de datos Base de datosÍtem ConflictoSproc Triggers UDF
  • 27. TO P O LO G I A Y PA R T I C I O N A M I E N TO
  • 28. TO P O LO G Í A D E S I S T E M A Resource Manager Language Runtime(s) Hosts Query Processor RSM Index Manager Bw-tree++/ LLAMA++ Log Manager IO Manager Resource Governor Transport Database engine Admission control … … Planeta tierra Regiones de Azure Datacenters Stamps Fault domains Cluster Machine Replica Database engine Container Various agents
  • 29. TO P O LO G I A D E S I S T E M A CONTENEDORES Los recursos lógicos se “proyectan" en APIs como tablas, colecciones o gráficos, que se compone de una o más particiones físicas o servidores. PARTICIONES DE RECURSOS • Primitivos de coordinación altamente disponibles y gobernados por recursos • Constan de conjuntos de réplicas, con cada réplica hospedando una instancia del motor de base de datos Contenedores Particiones de recursos ColeccionesTablas Gráficos Inquilinos Líder Seguidor Seguidor Reenviador Conjunto de réplicas A partición(es) de recurso remoto
  • 30. PA R T I C I O N E S Cosmos DB Container (ej. Colección) Clave de partición: ID de usuario Abstracción de particionamiento lógico Tras Bambalinas: Conjuntos de particiones físicas Hash (ID de usuario) Distribución pseudo aleatoria de datos a lo largo de un rango de posibles valores con hash
  • 31. PA R T I C I O N E S … Partición 1 Partición 2 Partición n # frugal de particiones con base en las necesidades reales de rendimiento y almacenamiento (produciendo la escalabilidad con un bajo costo total de propiedad) Hash (ID de usuario) Distribución pseudo aleatoria de datos a lo largo de un rango de posibles valores con hash Andrew Mike … Bob Dharma Shireesh Karthik Rimma Alice Carol …
  • 32. PA R T I C I O N E S … Partición 1 Partición 2 Partición n ¿Qué sucede cuando las particiones necesitan crecer? Hash (ID de usuario) Distribución pseudo aleatoria de datos a lo largo de un rango de posibles valores con hash Andrew Mike … Bob Dharma Shireesh Karthik Rimma Alice Carol …
  • 33. PA R T I C I O N E S Los Rangos de partición pueden ser dinámicamente sub- divididos para hacer que la base de datos crezca perfectamente conforme la aplicación crezca mientras se mantiene una alta disponibilidad de manera simultánea. La administración de particiones está completamente administrada por Azure Cosmos DB, de modo que usted no tiene que escribir código ni administrar sus particiones. + Partición x Partición x1 Partición x2 Hash (ID de usuario) Distribución pseudo aleatoria de datos a lo largo de un rango de posibles valores con hash Rimma Karthik … Dharma Shireesh Karthik Rimma Alice Carol … Dharma Shireesh …
  • 34. U N I D A D E S D E S O L I C I T U D ( R U )
  • 35. U N I D A D E S D E S O L I C I T U D Las Unidades de solicitud (RUS) son una unidad basada en velocidad Abstrae los recursos físicos para llevar a cabo las solicitudes Clave para eficiencia de multi-inquilinos, SLAs y COGS Actividades en primero y segundo plano % IOPS% CPU% Memoria
  • 36. U N I D A D E S D E S O L I C I T U D Normalizado a través de diversos métodos de acceso 1 RU = 1 lectura de documento de 1 KB Cada solicitud consume RUs fijos Se aplica a lecturas, escrituras, consultas y ejecución de procedimiento almacenado GET POST PUT QUERY … = = = =
  • 37. U N I D A D E S D E S O L I C I T U D Aprovisionado en términos de RU/seg Limitación de velocidad en función de la cantidad de rendimiento aprovisionado Puede ser aumentado o disminuido de forma instantánea Se mide cada hora Los procesos en segundo plano como expiración de TTL y transformaciones de índice se programan cuando están inactivos Min RU/seg Máx RU/seg Solicitudesentrantes Réplica inactiva Límite de velocidad No hay límite de velocidad
  • 38. U N I D A D E S D E S O L I C I T U D Cuenta Base de datos Base de datos Base de datos Base de datos Base de datosContenedor
  • 39. U N I D A D E S D E S O L I C I T U D Cuenta Base de datos Base de datos Base de datos Base de datos Base de datosContenedor Base de datos Base de datosContenedor Base de datos Base de datosContenedor
  • 40. VA L I D A C I Ó N D E L A O P C I Ó N D E N I V E L D E R E N D I M I E N TO 1. Compruebe si sus operaciones tienen limitación de velocidad. • Solicitudes que exceden el gráfico de capacidad 2. Verifique si el rendimiento consumido supera el rendimiento aprovisionado en cualquiera de las particiones físicas • Max RU/segundo consumido de acuerdo al gráfico de partición 3. Seleccione el momento en que el rendimiento máximo consumido por partición exceda el aprovisionado en el gráfico • Rendimiento máximo consumido por cada gráfico de partición
  • 41. M OTO R D E I N D E X A M I E N TO
  • 42. M A N E J E C U A LQ U I E R T I P O D E D ATO S S I N R E Q U E R I R D E E S Q U E M A O I N D E X A C I Ó N El servicio sin esquema de Azure Cosmos DBs indexa automáticamente todos sus datos, independientemente del modelo de datos, para entregar consultas rapidísimas. Ítem Color Seguro para microondas Capacidad Líquida CPU Memoria Almacen amiento Taza geek Grafito Sí 16ox ??? ??? ??? Taza de grano de café Cuero No 12oz ??? ??? ??? Surface book Gris ??? ??? 3.4 GHz Intel Skylake Core i7- 6600U 16GB 1 TB SSD • Administración automática de índice • Auto-indexación automática sincrónica • No se necesitan esquemas ni índices secundarios • Funciona a través de cada modelo de datos GEEK
  • 43. I N D E X A D O D E D O C U M E N TO S { "locations": [ { "country": "Germany", "city": "Berlin" }, { "country": "France", "city": "Paris" } ], "headquarter": "Belgium", "exports": [ { "city": "Moscow" }, { "city": "Athens" } ] } locations headquarter exports 0 country city Germany Berlin 1 country city France Paris 0 1 city Athens city Moscow Belgium
  • 44. I N D E X A D O D E D O C U M E N TO S { "locations": [ { "country": "Germany", "city": "Bonn", "revenue": 200 } ], "headquarter": "Italy", "exports": [ { "city": "Berlin", "dealers": [ { "name": "Hans" } ] }, { "city": "Athens" } ] } locations headquarter exports 0 country city Germany Bonn revenue 200 0 1 citycity Berlin Italy dealers 0 name Hans
  • 45. I N D E X A D O D E D O C U M E N TO S locations headquarter exports 0 country city Germany Bonn revenue 200 0 1 citycity Berlin Italy dealers 0 name Hans locations headquarter exports 0 country city Germany Berlin 1 country city France Paris 0 1 city Athens city Moscow Belgium
  • 46. Í N D I C E I N V E R T I D O locations headquarter exports 0 country city Germany Berlin revenue 200 0 1 city Athens city Berlin Italy dealers 0 name Hans Bonn 1 country city France Paris Belgium Moscow
  • 47. Í N D I C E I N V E R T I D O Terms Postings (Doc Ids) $/locations/0/ 1, 2 locations/0/country 1, 2 locations/0/city 1, 2 0/country/Germany 1, 2 1/country/France 1 0/city/Moscow 1 0/dealers/0 2 … …
  • 48. P O L Í T I C A S D E I N D E X A C I Ó N POLÍTICAS DE INDEXACIÓN PERSONALIZADA Aunque todos datos de Azure Cosmos DB están indexados de manera predeterminada, usted puede especificar una política de indexación personalizada para sus colecciones. Las políticas de indexación personalizadas le permiten diseñar y personalizar la forma de su índice, manteniendo la flexibilidad del esquema. • Defina compensaciones entre rendimiento de almacenamiento, escritura y consultas y consistencia de consulta • Incluya o excluya documentos y rutas hacia y desde el índice • Configure diversos tipos de índice { "automatic": true, "indexingMode": "Consistent", "includedPaths": [{ "path": "/*", "indexes": [{ "kind": "Hash", "dataType": "String", "precision": -1 }, { "kind": "Range", "dataType": "Number", "precision": -1 }, { "kind": "Spatial", "dataType": "Point" }] }], "excludedPaths": [{ "path": "/nonIndexedContent/*" }] }
  • 49. T R A N S F O R M A C I O N E S D E Í N D I C E E N L Í N E A CAMBIOS AL ÍNDICE SOBRE LA MARCHA En Azure Cosmos DB usted puede realizar cambios a la política de indexación de una colección sobre la marcha. Los cambios pueden afectar la forma del índice, incluyendo rutas, valores de precisión y su modelo de consistencia. Un cambio en la política de indexación requiere una transformación efectiva del índice antiguo en un nuevo índice.
  • 50. N O S Q L – L I F T & S H I F T
  • 51. Desafios de NoSQL en IaaS / On-Premies: Configuración y mantenimiento tedioso Soluciones de Alta Disponibilidad complejas y costosas Seguridad punta a punta Sobre-aprovisionamiento para cubrir la demanda Costos impredeciles N O S Q L O N - P R E M I S E S
  • 52. A Z U R E C O S M O S D B V S O N - P R E M N O S Q L Azure Cosmos DB MongoDB on-prem TCO No se requieren DBAs ni DevOps. Requiere DBAs o DevOps Alta Disponibilidad SLA del 99,99% (una region) Requiere admnistración de replicas y clusters en diferentes regions Latencia SLA cubriendo < 10 ms para las lecturas y < 15 ms para las escrituras el 99% del tiempo (una región) Requiere configuración y tuning Seguridad Encryption-at-rest y en la transmisión, Firewall por IP, acceso por roles y llaves primarias y de lectura. Configuración manual Consistencia 5 diferentes modelos pre-configurados para elegir Eventual por defecto; Robusta puede ser configurada manualmente Capacidad No es necesario un monitoreo activo Requiere de monitoreo y planificación previa para asegurar capacidad disponible
  • 53. A Z U R E C O S M O S D B V S O N - P R E M N O S Q L Azure Cosmos DB MongoDB on-prem Escalabilidad Administración de índices automática sin preocuparse por el esquema, con auto-indexación sincrónica sin costo extra. Permite escalar el almacenamiento a PBs y trillones de requests por Segundo. Requiere de ajustes en el esquema, y administración de almacenamiento e indexación. Cobertura global Escala elástica a través de cualquier conjunto de regions de Azure Única región Particiones Ilimitadas Requiere configuración manual Replicas Replicación global y administración de replicas automático Requiere monitoreo de los clústeres, creación y administración de sets de replicas Backups Backups automáticos geo-replicados Requiere configuración y administración
  • 54. M I G R A R D ATO S D E S D E M O N G O D B • mongoimport • Archivos CSV, JSON generados por mongoexport • mongoimport.exe --host <your_hostname>:10255 -u <your_username> -p <your_password> --db <your_database> --collection <your_collection> --ssl --sslAllowInvalidCertificates --type json --file C:sample.json --numInsertionWorkers <W> --batchSize <B> • mongorestore • Archivos mongodump (.bson) • mongorestore.exe --host <your_hostname>:10255 -u <your_username> -p <your_password> --db <your_database> --collection <your_collection> --ssl --sslAllowInvalidCertificates <path_to_backup> --numInsertionWorkers <W> --batchSize <B>
  • 55. S O P O R T E P R O G R A M AT I C O
  • 56. MongoDB wire protocol Azure Cosmos DB Mongo API M O N G O D B W I R E P R OTO C O L
  • 57. Cassandra wire protocol Azure Cosmos DB Apache Cassandra API C A S S A N D R A W I R E P R OTO C O L
  • 58. C H A N G E F E E D Registros persistentes dentro un contenedor Azure Cosmos DB. Presentados en el orden en que fueron modificados
  • 59. E S C E N A R I O S D E C H A N G E F E E D
  • 60. C H A N G E F E E D P R O C E S S O R L I B R A R Y https://www.nuget.org/packages /Microsoft.Azure.DocumentDB.ChangeFeedProcessor/
  • 61. Nivel de aplicación de procesamiento de evento/stream C H A N G E F E E D C O N PA R T I C I O N E S Paralelización de consumidor El Change Feed escucha para detectar cualquier cambio en la colección de Azure Cosmos DB. A continuación, brinda como salida la lista ordenada de documentos que fueron cambiados en el orden en que fueron modificados. Los cambios se conservan, pueden ser procesados de forma asíncrona y progresivamente y la salida puede ser posteriormente distribuida a través de uno o más consumidores para el procesamiento paralelo. El Change Feed está disponible para cada rango de clave de partición dentro de la colección de documentos y, por lo tanto, puede ser distribuido a través de uno o más consumidores para procesamiento paralelo. Consumidor 1 Consumidor 2 Consumidor 3
  • 62. C H A N G E F E E D C O N PA R T I C I O N E S
  • 63. I N T E G R A C I O N C O N A Z U R E F U N C T I O N S
  • 64. I N T E G R A C I O N C O N A Z U R E F U N C T I O N S
  • 65. R E P L I C A C I O N G LO B A L
  • 66. D I S T R I B U C I O N G LO B A L Alta disponibilidad • Conmutación por error automática y manual • La API de hospedaje múltiple elimina la necesidad de una redistribución Baja latencia (en cualquier parte del mundo) • Los paquetes no pueden moverse más rápido que la velocidad de la luz • El envío de un paquete al otro lado del mundo bajo condiciones de red ideales toma 100s de milisegundos. • Usted puede engañar a la velocidad de la luz, empleando localidad de datos • CDN solucionó esto para contenido estático • Azure Cosmos DB resuelve esto para contenido dinámico
  • 67. D I S T R I B U C I Ó N G LO B A L • Replicación automática y transparente en todo el mundo • Cada partición contiene hospeda un conjunto de réplicas por región • Los clientes pueden probar la disponibilidad de aplicaciones de extremo a extremo mediante la simulación programática de conmutaciones por error • Todas las regiones están ocultas detrás de un único URI global con capacidades de hospedaje múltiple • Los clientes pueden agregar / eliminar dinámicamente regiones adicionales en cualquier momento Escribe/ Lee Lee "airport" : “AMS" "airport" : “MEL" Oeste de los EE. UU: Contenedor "airport" : "LAX" Distribución local (a través de partición horizontal) Distribuciónmundial(departicionesderecursos) Lee 30K de transacciones/seg Escribe / Lee Lee Lee Europa Occidental 30K de transacciones/seg Partition-key = "airport"
  • 68. R E P L I C A C I Ó N D E D ATO S E N TO D O E L M U N D O
  • 69. R E P L I C A C I Ó N D E D ATO S E N TO D O E L M U N D O
  • 70. R E P L I C A C I Ó N D E D ATO S E N TO D O E L M U N D O
  • 71. FA I LO V E R A U TO M ÁT I C O
  • 72. FA I LO V E R M A N U A L
  • 73. R E P L I C A C I Ó N D E D ATO S E N TO D O E L M U N D O
  • 74. S O P O R T E M U LT I M A S T E R aka.ms/multimasterdocs
  • 75. Robusta Obsolescencia limitada Sesión Prefijo consistente Eventual C I N C O M O D E LO S D E C O N S I S T E N C I A B I E N D E F I N I D O S ELEGIR EL MEJOR MODELO DE CONSISTENCIA PARA SU APLICACIÓN Cinco modelos de consistencia bien definidos Reemplazar por solicitud Proporciona control sobre las compensaciones de rendimiento-consistencia, respaldado por amplios SLAs. Un modelo de programación intuitiva que ofrece baja latencia y alta disponibilidad para su aplicación a escala del planeta. COMPENSACIONES CLARAS • Latencia • Disponibilidad • Rendimiento
  • 76. D E S M I T I F I C A R M O D E LO S D E C O N S I S T E N C I A Consistencia robusta Garantiza instrucción atómica. Una vez que la operación se completa, será visible para todos los lectores de una manera muy consistente a través de las réplicas. Consistencia eventual Las réplicas son eventualmente consistentes con cualquier operación. Hay un potencial de lecturas fuera de orden. Menor costo y mayor rendimiento para lecturas de todos los niveles de consistencia. Robusta Eventual
  • 77. Obsolescencia limitada Sesión Prefijo consistente D E S M I T I F I C A R M O D E LO S D E C O N S I S T E N C I A Obsolescencia limitada Lee el desfase que está por detrás de las escrituras en la mayoría de los prefijos k o intervalos t. Propiedades similares para una consistencia robusta excepto dentro de la ventana de obsolescencia. Sesión Dentro de una sesión, las lecturas y escrituras son monotónicas. Esto se conoce como "lea sus escrituras" y "escritura sigue a lecturas". Consistencia previsible para una sesión. Alto rendimiento de lectura y baja latencia fuera de la sesión. Prefijo consistente Las lecturas nunca verán escrituras fuera de orden.
  • 78. Algunos datos producidos por aplicaciones sólo son útiles durante un periodo limitado de tiempo: • Datos de eventos generados por máquina • Datos de registro de aplicación • Información de sesión de usuario Es importante que el sistema de base de datos sistemáticamente purgue estos datos a intervalos preconfigurados. D ATO S D E T I E M P O D E V I D A C O R TO
  • 79. P E R Í O D O D E V I D A ( T T L ) PURGAR LOS DATOS AUTOMÁTICAMENTE Azure Cosmos DB le permite configurar el intervalo de tiempo en el cual radiquen los documentos en la base de datos antes de que se purguen automáticamente. El "Período de vida" (TTL) de un documento se mide en segundos desde la última modificación y se puede configurar a nivel de colección con reemplazo bajo un régimen por documento. .
  • 80. R E G I S T R O S Q U E E X P I R A N U T I L I Z A N D O P E R Í O D O D E V I D A COMPORTAMIENTO TTL La característica TTL es controlada por las propiedades TTL en dos niveles: el nivel de colección y el nivel de documento. • DefaultTTL para la colección • Si faltan (o están configurados como nulos), los documentos no se eliminan automáticamente. • Si están presentes y el valor es "-1" = infinito, los documentos no expiran predeterminadamente • Si están presentes, y el valor es un número ("n"), los documentos expiran "n" segundos después de la última modificación • TTL para los documentos: • La propiedad es aplicable sólo s/i DefaultTTL está presente en la colección primaria. • Reemplaza el valor DefaultTTL de la colección primaria. Los valores se configuran en segundos y se tratan como un delta de _ts de cuando se modificó el documento por última vez. Documento Documento TTL TTL predeterminado
  • 81. QUÉ ES REGISTRADO POR AZURE DIAGNOSTIC LOGS Todas las solicitudes de backend autenticadas a lo largo de todos los protocolos y APIs • Incluye solicitudes con error Operaciones de base de datos • Incluye operaciones CRUD sobre todos los recursos Operaciones de clave de cuenta Solicitudes no autenticadas • Solicitudes que generan una respuesta 401 R E G I S T R O D E A C T I V I D A D
  • 82.
  • 83. P R O B A R LO C A L M E N T E Azure Cosmos DB Emulator aka.ms/cosmosdb-emulator
  • 84. Azure Cosmos DB gratis azure.microsoft.com/try/cosmosdb/ P R O B A R E N L A N U B E
  • 85. aka.ms/cosmosdbri C A PA C I D A D R E S E R VA D A • Prepago de 1 a 3 años • Hasta un 65% de descuento
  • 86. cosmos.azure.com C O S M O S D B E X P LO R E R
  • 87. cosmos.azure.com C O S M O S D B E X P LO R E R