The document discusses Global Azure, a globally distributed, massively scalable, multi-model database service from Microsoft. It provides an overview of Azure Cosmos DB and its APIs, including the Gremlin API for graph databases. It then discusses what graph databases are, how they are structured according to the Apache Tinkerpop specification, and provides examples of graph data models and queries. Finally, it discusses common use cases for graph databases such as social networks, knowledge graphs, and infrastructure monitoring.
3. Juan Carlos Martínez García
jcmartinez@encamina.com - @jcmartinezg23
Trabajo con tecnología Microsoft, especialmente NET Core y Azure, además de con el stack de
Office 365. Estoy certificado como MCSD en Web Applications y App Builder.
Me apasiona lo que hay detrás de las tecnologías que utilizamos los desarrolladores a diario, el
código limpio y desarrollar pensando en colores.
Actualmente aplico todo mi buen rollo trabajando como Software & Cloud Architect para
ENCAMINA.
4. Alberto Diaz Martin
adiazcan@hotmail.com - @adiazcan
Alberto Diaz cuenta con más de 16 años de experiencia en la Industria IT, todos ellos trabajando
con tecnologías Microsoft. Actualmente, es Chief Technology Innovation Officer en ENCAMINA,
liderando el desarrollo de software con tecnología Microsoft, y miembro del equipo de
Dirección.
Para la comunidad, trabaja como organizador y speaker de las conferencias más relevantes del
mundo Microsoft en España, en las cuales es uno de los referentes en SharePoint, Office 365 y
Azure. Autor de diversos libros y artículos en revistas profesionales y blogs, en 2013 empezó a
formar parte del equipo de Dirección de CompartiMOSS, una revista digital sobre tecnologías
Microsoft.
Desde 2011 ha sido nombrado Microsoft MVP, reconocimiento que ha renovado por séptimo
año consecutivo. Se define como un geek, amante de los smartphones y desarrollador.
Fundador de TenerifeDev (www.tenerifedev.com), un grupo de usuarios de .NET en Tenerife, y
coordinador de SUGES (Grupo de Usuarios de SharePoint de España, www.suges.es)
7. A globally distributed, massively scalable, multi-model database service
Column-family
Document
Graph
Turnkey global distribution
Elastic scale out
of storage & throughput
Guaranteed low latency at the 99th percentile
Comprehensive SLAs
Five well-defined consistency models
Table API
Key-value
Azure Cosmos DB
MongoDB API
17. Microsoft Confidential
Kobe
Bryant
vertex
label: person
properties:
- age: 39
- height: 6'6”
NBA
Champion
2000
edge
label: isPartOf
edge
label: hasNbaChampionship
Los
Angeles
Lakers
vertex
label: team
properties:
- state: CA
NBA
Champion
2002
NBA
Champion
2001
NBA
Champion
2010
NBA
Champion
2009
vertex
label: award
properties:
- obtained: 2010
vertex
label: award
properties:
- obtained: 2009
vertex
label: award
properties:
- obtained: 2002
vertex
label: award
properties:
- obtained: 2001
vertex
label: award
properties:
- obtained: 2000
18. Microsoft Confidential
Kobe
Bryant
vertex
label: person
properties:
- age: 39
- height: 6'6”
Oscar
2018
NBA
Champion
2000
edge
label: isPartOf
edge
label: hasNbaChampionship
vertex
label: award
properties:
- obtained: 2018
- category: Best Animated
Short Film
Los
Angeles
Lakers
vertex
label: team
properties:
- state: CA
NBA
Champion
2002
NBA
Champion
2001
NBA
Champion
2010
NBA
Champion
2009
vertex
label: award
properties:
- obtained: 2010
vertex
label: award
properties:
- obtained: 2009
vertex
label: award
properties:
- obtained: 2002
vertex
label: award
properties:
- obtained: 2001
vertex
label: award
properties:
- obtained: 2000
edge
label: hasAcademyAward
19. Microsoft Confidential
Kobe
Bryant
vertex
label: person
properties:
- age: 39
- height: 6'6”
Oscar
2018
NBA
Champion
2000
edge
label: isPartOf
edge
label: hasNbaChampionship
vertex
label: award
properties:
- obtained: 2018
- category: Best Animated
Short Film
Los
Angeles
Lakers
vertex
label: team
properties:
- state: CA
NBA
Champion
2002
NBA
Champion
2001
NBA
Champion
2010
NBA
Champion
2009
vertex
label: award
properties:
- obtained: 2010
vertex
label: award
properties:
- obtained: 2009
vertex
label: award
properties:
- obtained: 2002
vertex
label: award
properties:
- obtained: 2001
vertex
label: award
properties:
- obtained: 2000
Tom
Cruise
vertex
label: person
properties:
- awards: null
edge
label: hasAcademyAward
20. Microsoft Confidential
Kobe
Bryant
vertex
label: person
properties:
- age: 39
- height: 6'6”
Oscar
2018
NBA
Champion
2000
edge
label: isPartOf
edge
label: hasNbaChampionship
vertex
label: award
properties:
- obtained: 2018
- category: Best Animated
Short Film
Los
Angeles
Lakers
vertex
label: team
properties:
- state: CA
NBA
Champion
2002
NBA
Champion
2001
NBA
Champion
2010
NBA
Champion
2009
vertex
label: award
properties:
- obtained: 2010
vertex
label: award
properties:
- obtained: 2009
vertex
label: award
properties:
- obtained: 2002
vertex
label: award
properties:
- obtained: 2001
vertex
label: award
properties:
- obtained: 2000
Tom
Cruise
vertex
label: person
properties:
- awards: null
Hollywood
Celebrity
edge
label: hasAcademyAward
vertex
label: status
edge
label: status
edge
label: status
24. Employee ID Name Group
1 Rafa Sanchez Sales
2 Juan Carlos Engineering
3 Alberto Diaz Sales
Sales
Group
Eng.
Group
Rafa Alberto JC
25. Employee
ID
Name
1 Rafa
2 Juan Carlos
3 Alberto
Sales
Group
Eng.
Group
Rafa Alberto JC
+ 2 tables, 6 rows, 4 new columns,
-1 column alteration
+ 1 document
FK Employee
ID
FK Group
ID
1 1
2 2
3 1
3 2
Group
ID
Name
1 Sales
2 Engineering
member
26. Employee ID Name
1 Rafa
2 Juan Carlos
3 Alberto Sales
Group
Eng.
Group
Rafa Alberto JC
+ 1 tables, 6 rows, 2 new columns
+ 3 documents
FK Employee ID FK Group ID
1 1
2 2
3 1
3 2
1 3
1 3
1 3
Group ID Name
1 Sales
2 Engineering
3 Azure
Azure
FK Group
ID
FK Nested
Group ID
1 3
2 3
subgroups
27. Employee ID Name
1 Rafa
2 Juan Carlos
3 Alberto Sales
Group
Eng.
Group
Rafa Alberto JC
+ 1 table, 2 rows, 2 new columns + 2 documents
FK Employee ID FK Group ID
1 1
2 2
3 1
3 2
1 3
1 3
1 3
Group ID Name
1 Sales
2 Engineering
3 Azure
Azure
FK Group
ID
FK Nested
Group ID
1 3
2 3
directReports
FK Employee ID FK Report
Employee ID
2 1
2 2
28. Employee ID Name
1 Rafa
2 Juan Carlos
3 Alberto
4 New person
Sales
Group
Eng.
Group
Rafa Alberto JC
+ 3 documents
FK Employee ID FK Group ID
1 1
2 2
3 1
3 2
1 3
1 3
1 3
4 2
4 3
Group ID Name
1 Sales
2 Engineering
3 Azure
Azure
FK Group
ID
FK Nested
Group ID
1 3
2 3
directReports
FK Employee ID FK Report
Employee ID
2 1
2 2
2 4
+ 4 rows in 3 different tables
New
Person
29. Employee ID Name
1 Rafa
2 Juan Carlos
3 Alberto
4 New person
Sales
Group
Eng.
Group
Rafa Alberto JC
+ 2 documents
FK Employee ID FK Group ID
1 1
2 2
3 1
3 2
1 3
1 3
1 3
4 2
4 3
1 4
2 4
3 4
4 4
Group ID Name
1 Sales
2 Engineering
3 Azure
4 ENCAMINA
Azure
FK Group ID FK Nested Group
ID
1 3
2 3
3 4
1 4
2 4
FK Employee ID FK Report
Employee ID
2 1
2 2
2 4
+ 8 rows in 3 different tables
New
Person
ENCAMINA
30. g.V().has(‘id’, ‘Engineering’)
.out(‘members’)
.in(‘directReports’)
.values(‘name’)
SELECT name FROM Employee
INNER JOIN Employee_Group ON Employee_Group.EmployeeID = Employee.ID
INNER JOIN Groups ON Employee_Group.GroupID = Group.ID
INNER JOIN
(
SELECT DISTINCT EmployeeID FROM Employee_ReportEmployee
)
ON Employee_ReportEmployee.EmployeeID = Employee.ID
WHERE Group.Name = “Engineering”
44. Seattle LondonRainy
Fish and
chips
Main food Main food
Weather Weather
Dublin
Weather
Main foodMain food
Wellington Coastal
Location
Location
Questions:
How many coastal cities are rainy?
How many rainy cities claim to have good fish and chips?
Are all rainy cities with good fish and chips in Europe?