Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Cosmos db gab2018

143 views

Published on

Slides usados en la charla sobre CosmosDB en el Global Azure Bootcamp de Palma de Mallorca en 2018

Published in: Technology
  • Hello! Get Your Professional Job-Winning Resume Here - Check our website! https://vk.cc/818RFv
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here

Cosmos db gab2018

  1. 1. Cosmos DB Leonardo Micheloni @leomicheloni Global Azure Bootcamp Palma de Mallorca 2018
  2. 2. ¿Quién soy? Leonardo Micheloni @leomicheloni @leomicheloni Argentino en Madrid
  3. 3. Imaginemos • Estar donde los clientes • No estar atado a un modelo • No estar atado a un nivel de consistencia • No estar atado a una API • No preocuparnos por los índices • Poder escalar elásticamente • Que sea un servicio @leomicheloni
  4. 4. @leomicheloni
  5. 5. • Database as a service • NoSQL • Multi region replication • Manual and automatic failover • Multi model • Multi API • Intuitive consistency level • Designed for high availability @leomicheloni
  6. 6. NoSQL • Las bases de datos relacionales (SQL server, Orable, MySQL) siguen el teorema ACID • Atomicity • Consitency • Isolation • Durability • En sistemas distribuidos esto puede ser un problema @leomicheloni http://www.monitis.com/blog/wp-content/uploads/2015/06/nosql1.jpg
  7. 7. Bases de datos NoSQL • Siguen el teorema CAP • Consistency • Availability • Partition tolerance • Solo puedo tener dos en simultáneo @leomicheloni
  8. 8. Global distribution • Replicación automática alrededor del mundo con un click • Más regiones que Amazon y Google combinados @leomicheloni
  9. 9. Multiregional failover @leomicheloni
  10. 10. Multimodelo • Cosmos DB permite guardar los datos en diferentes formatos • Documentos • Grafos • Clave / valor • Indexa automáticamente todos los campos @leomicheloni
  11. 11. Multi API • Document DB • MongoDB • Table API • Graph API • Cassandra • Modelos de datos relacionales (vNext) @leomicheloni
  12. 12. Soporte multiplataforma • SDKs • .NET • .NET Core • Java • Phyton • Node JS • API REST @leomicheloni
  13. 13. Escalado elástico de rendimiento y almacenamiento • Es posible cambiar en cualquier momento • Es posible hacerlo por código • Es transparente para las aplicaciones • Cosmos DB se encarga de conectar al nodo más adecuado @leomicheloni
  14. 14. Tipos de consistencia • Strong • Bounded-staleness • Session • Consistent Prefix • Eventual @leomicheloni
  15. 15. Tipos de consistencia • Strong: El más transaccional, las lecturas siempre retornan la última versión de los datos, en este caso no se puede asociar a más de una región. • Bounded Staleness: Las lecturas están detrás de las escrituras k prefijos (o versiones) o un intervalo de tiempo definido • Session: Ofrece consistencia para un cliente determinado. • Consistent Prefix: En caso de escribirse A, B y C, los clientes leeran A o A, B, o A,B y C, pero nunca mezaclados. • Eventual: El modelo asegura lecturas inmediatas pero ningún nivel de consistencia inmediata, solo que eventualmente todos los clientes verán las mismas escritura. • Al definir un nivel de consistencia definimos el nivel por defecto, sin embargo podemos utilizar un nivel de consistencia diferente en cada lectura, lo cual aporta aún más flexibilidad. @leomicheloni
  16. 16. @leomicheloni
  17. 17. Casos de uso @leomicheloni • Retail apps • Mobile • Web apps • Games • Social apps • Azure!
  18. 18. ¿Cómo saber si elegir Cosmos DB? • Si los datos cambian mucho, sin importar si es esquema o keyvalue • Si tenemos muchas transacciones por segundo • Si hay una enorme cantidad de datos4 • En general todos aquellos escenarios para los que los RDBMS no son buenos @leomicheloni
  19. 19. DEMO @leomicheloni
  20. 20. Probar Cosmos DB gratis • https://azure.microsoft.com/en-us/try/cosmosdb/ @leomicheloni
  21. 21. Referencias • https://azure.microsoft.com/en-us/services/cosmos-db/ • https://azure.microsoft.com/es-es/blog/the-walking-dead-no-mans-land- game-soars-to-1-with-azure-documentdb/https://docs.microsoft.com/es- es/azure/cosmos-db/introduction • https://docs.microsoft.com/en-us/azure/cosmos-db/consistency-levels • https://docs.microsoft.com/en-us/azure/cosmos-db/20-days-of-tips • https://azure.microsoft.com/en-us/try/cosmosdb/ • https://www.youtube.com/watch?v=4fRKzcU__jY • https://github.com/afhaque/MeanMapAppV2.0 @leomicheloni

×