O Azure Cosmos DB trás poderosas e versateis APIs com suporte a engines como SQL, MongoDB, Cassandra, Graph e Table. Globalmente distribuído em mais de 30 regiões é uma otima opção na nuvem, fácil de escalar com alta disponilidade, alto throughput e baixíssima latencia. TDC2018, The Developer Conference Florianopolis 2018
1. Globalcode – Open4education
Trilha – NoSQL
Alexandre Brandão Lustosa
Entrepreneur / IT Manager at Stone Pagamentos
C# .Net MCSD / MCSA DBA SQL Server
C++ Developer Engineer for IoT / Embedded Systems
3. Globalcode – Open4education
Alexandre Brandão Lustosa
Twitter: @abrandaolustosa
E-mail: abrandao@outlook.com
abrandao@stone.com.br
LinkedIn: www.linkedin.com/in/abrandaol
Phone: +55 (21) 97367-6161
Senior Software Engineer with 20 years of experience in web development, transactional and distributed systems,
Microsoft C# .Net specialist and C/C ++ development for Linux Embedded and Microchip Microcontroller. Certificated
by Microsoft .Net MCSD Web Developer, MCSA Microsoft SQL Server 2012 and Microsoft IT Specialist. Founder and
community leader of InsideTech Conf.
Entrepreneur at Stone Pagamentos
C# .Net MCSD / MCSA DBA SQL Server IoT / C++ Developer Engineer
• Entrepreneur
• C# .Net
• IoT Maker
• Arquitetura de Sistemas
• Metodologias Ágeis
• Algoritmos Computacionais
• Guitarra e Violão
4. Globalcode – Open4education
{ Stone }
Temos vagas para
Nerds Loucos!!
Great code
starts with
amazing
people
http://enter.stone.com.br
9. Globalcode – Open4education
Overview
• Azure Cosmos DB makes it easy to build scalable, highly
responsive applications at global scale with
low latency and SLA.
• With the click of a button, Azure Cosmos DB enables you
to elastically and independently scale throughput and
storage across any number of Azure's geographic regions
16. Globalcode – Open4education
Apache Spark + CosmosDB
• Streaming Extract, Transformation, and Loading of data (ETL)
• Data enrichment
• Trigger event detection
• Complex session analysis and personalization
• Visual data exploration and interactive analysis
• Notebook experience for data exploration, information sharing, and collaboration
20. Globalcode – Open4education
Turnkey global distribution
You can distribute your data to any number of Azure regions, with the
click of a button
Using Azure Cosmos DB's multi-homing APIs, the app always knows
where the nearest region is and sends requests to the nearest data
center
As you add and remove regions to your Azure Cosmos DB database,
your application does not need to be redeployed and continues to be
highly available
23. Globalcode – Open4education
Multiple APIs
MongoDB API
A massively scalable
MongoDB-as-a-Service
powered by Azure Cosmos
DB platform. Compatible with
existing MongoDB libraries,
drivers, tools, and
applications.
24. Globalcode – Open4education
Multiple APIs
Cassandra API
A globally distributed Cassandra-as-a-Service powered by
Azure Cosmos DB platform. Compatible with existing Apache
Cassandra libraries, drivers, tools, and applications
25. Globalcode – Open4education
Multiple APIs
Gremlin (Graph) API
A fully managed, horizontally
scalable graph database service
that makes it easy to build and
run applications that work with
highly connected datasets
supporting Open Graph APIs
(based on the Apache TinkerPop
specification, Apache Gremlin)
27. Globalcode – Open4education
Elastically and independently
Easily scale database throughput at a per-second granularity, and
change it anytime you want, on demand.
Scale storage size transparently and automatically to handle your
size requirements now and forever
37. Globalcode – Open4education
Strong
Strong consistency guarantees that a write is only visible
after it is committed durably by the majority quorum of
replicas. A write is either synchronously committed durably
by both the primary and the quorum of secondaries, or it is
aborted. A read is always acknowledged by the majority
read quorum, a client can never see an uncommitted or
partial write and is always guaranteed to read the latest
acknowledged write.
38. Globalcode – Open4education
Strong
Azure Cosmos DB accounts that are configured to use
strong consistency cannot associate more than one Azure
region with their Azure Cosmos DB account.
The cost of a read operation (in terms of request units
consumed) with strong consistency is higher than session
and eventual, but the same as bounded stalenes
39. Globalcode – Open4education
Session
Unlike the global consistency models offered by strong and
bounded staleness consistency levels, session consistency
is scoped to a client session.
Session consistency is ideal for all scenarios where a
device or user session is involved since it guarantees
monotonic reads, monotonic writes, and read your own
writes (RYW) guarantees.
40. Globalcode – Open4education
Session
Session consistency provides predictable consistency for a
session, and maximum read throughput while offering the
lowest latency writes and reads.
Azure Cosmos DB accounts that are configured with
session consistency can associate any number of Azure
regions with their Azure Cosmos DB account.
41. Globalcode – Open4education
Session
The cost of a read operation (in terms of RUs consumed)
with session consistency level is less than strong and
bounded staleness, but more than eventual consistency.