SlideShare uma empresa Scribd logo
1 de 47
Baixar para ler offline
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
On-Ramp to Graph Databases and
Amazon Neptune
Ian Robinson
Data Architect
AWS
D A T 3 3 5
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Agenda
Introduction to Amazon Neptune
Creating and querying graph data
Operations
Getting started
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Related breakouts
Tuesday, November 27
Migrating to Amazon Neptune - DAT338
11:30 a.m. | Venetian, Level 4, Lando 4305
Wednesday, November 28
Getting Started with Amazon Neptune and Amazon SageMaker Jupyter Notebooks - DAT359
2:30 p.m. | Aria West, Level 3, Starvine 10, Table 7
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Amazon Neptune
Fast, reliable graph database
Optimized for storing and querying highly connected data
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Do I have a graph workload?
Complex domain model Variable schema Connected queries
Large dataset
Many different entities
Similar entities may have
different properties
Highly connected
entities connected in
many different ways
Navigate connected structure
Take account of strength,
weight, or quality of
relationships
Variable structure
Social
Networking
Recommendations Knowledge
Graphs
Fraud Detection Life Sciences Network & IT
Operations
“Our customers are increasingly required to navigate a complex web of
global tax policies and regulations. We need an approach to model the
sophisticated corporate structures of our largest clients and deliver an
end-to-end tax solution. We use a microservices architecture approach for
our platforms and are beginning to leverage Amazon Neptune as a graph-
based system to quickly create links within the data.”
Tim Vanderham
Chief Technology Officer
Thomson Reuters Tax & Accounting
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Fully managed graph database
Fast Reliable Open
Query billions of
relationships with
millisecond latency
Six replicas of your data
across three AZs with full
backup and restore
Build powerful queries
easily with Gremlin and
SPARQL
Supports Apache
TinkerPop & W3C RDF
graph models
Easy
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Two graph data models and query languages
Open-source Apache TinkerPop
Gremlin traversal language
Property graph Resource description
framework (RDF)
W3C standard
SPARQL query language
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Property graph
Data model
Vertices
Edges
Properties
Labels
Gremlin 3.3.2
Imperative traversal language
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
RDF
Data model
Triples
subject-predicate-object
SPARQL 1.1
Declarative pattern matching language
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Amazon Neptune high-level architecture
Bulk load from
Amazon S3
Database
management
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Creating property graph data with Gremlin
g.addV('User').
property(id, 'p-1').
property('name','Bob').
addV('User').
property(id, 'p-2').
property('name','Alice').
addV('User').
property(id, 'p-3').
property('name','Dan').
V('p-1').addE('FOLLOWS').to(V('p-2')).
V('p-1').addE('FOLLOWS').to(V('p-3')).
next()
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Creating property graph data
g.addV('User').
property(id, 'p-1').
property('name','Bob').
addV('User').
property(id, 'p-2').
property('name','Alice').
addV('User').
property(id, 'p-3').
property('name','Dan').
V('p-1').addE('FOLLOWS').to(V('p-2')).
V('p-1').addE('FOLLOWS').to(V('p-3')).
next()
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Creating property graph data
g.addV('User').
property(id, 'p-1').
property('name','Bob').
addV('User').
property(id, 'p-2').
property('name','Alice').
addV('User').
property(id, 'p-3').
property('name','Dan').
V('p-1').addE('FOLLOWS').to(V('p-2')).
V('p-1').addE('FOLLOWS').to(V('p-3')).
next()
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Creating property graph data
g.addV('User').
property(id, 'p-1').
property('name','Bob').
addV('User').
property(id, 'p-2').
property('name','Alice').
addV('User').
property(id, 'p-3').
property('name','Dan').
V('p-1').addE('FOLLOWS').to(V('p-2')).
V('p-1').addE('FOLLOWS').to(V('p-3')).
next()
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Creating property graph data
g.addV('User').
property(id, 'p-1').
property('name','Bob').
addV('User').
property(id, 'p-2').
property('name','Alice').
addV('User').
property(id, 'p-3').
property('name','Dan').
V('p-1').addE('FOLLOWS').to(V('p-2')).
V('p-1').addE('FOLLOWS').to(V('p-3')).
next()
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Creating RDF data with SPARQL
PREFIX c: <http://www.example.com/social#>
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
INSERT
{
c:p-1 c:name "Bob";
rdf:type c:User .
c:p-2 c:name "Alice";
rdf:type c:User .
c:p-3 c:name "Dan";
rdf:type c:User .
c:p-1 c:FOLLOWS c:p-2;
c:FOLLOWS c:p-3 .
} WHERE {}
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Creating RDF data with SPARQL
PREFIX c: <http://www.example.com/social#>
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
INSERT
{
c:p-1 c:name "Bob";
rdf:type c:User .
c:p-2 c:name "Alice";
rdf:type c:User .
c:p-3 c:name "Dan";
rdf:type c:User .
c:p-1 c:FOLLOWS c:p-2;
c:FOLLOWS c:p-3 .
} WHERE {}
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Creating RDF data with SPARQL
PREFIX c: <http://www.example.com/social#>
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
INSERT
{
c:p-1 c:name "Bob";
rdf:type c:User .
c:p-2 c:name "Alice";
rdf:type c:User .
c:p-3 c:name "Dan";
rdf:type c:User .
c:p-1 c:FOLLOWS c:p-2;
c:FOLLOWS c:p-3 .
} WHERE {}
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Creating RDF data with SPARQL
PREFIX c: <http://www.example.com/social#>
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
INSERT
{
c:p-1 c:name "Bob";
rdf:type c:User .
c:p-2 c:name "Alice";
rdf:type c:User .
c:p-3 c:name "Dan";
rdf:type c:User .
c:p-1 c:FOLLOWS c:p-2;
c:FOLLOWS c:p-3 .
} WHERE {}
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Creating RDF data with SPARQL
PREFIX c: <http://www.example.com/social#>
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
INSERT
{
c:p-1 c:name "Bob";
rdf:type c:User .
c:p-2 c:name "Alice";
rdf:type c:User .
c:p-3 c:name "Dan";
rdf:type c:User .
c:p-1 c:FOLLOWS c:p-2;
c:FOLLOWS c:p-3 .
} WHERE {}
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Creating RDF data with SPARQL
PREFIX c: <http://www.example.com/social#>
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
INSERT
{
c:p-1 c:name "Bob";
rdf:type c:User .
c:p-2 c:name "Alice";
rdf:type c:User .
c:p-3 c:name "Dan";
rdf:type c:User .
c:p-1 c:FOLLOWS c:p-2;
c:FOLLOWS c:p-3 .
} WHERE {}
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Querying graph data
Universities
Institutions
Organizational structure
Roles and job titles
Research, teaching, and administrative staff
Subjects and course catalogs
Timetables
Undergraduate and graduate populations
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Find graduate students working at the same university from which they received
their undergraduate degree
undergraduateDegreeFrom
name: ?
name: ?
University
GraduateStudent
name: ?
Department
memberOf
subOrganisationOf
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Gremlin
g.V().hasLabel('GraduateStudent').as('student').
out('memberOf').
out('subOrganisationOf').
in('undergraduateDegreeFrom').
where(eq('student'))
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Gremlin
g.V().hasLabel('GraduateStudent').as('student').
out('memberOf').
out('subOrganisationOf').
in('undergraduateDegreeFrom').
where(eq('student'))
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Gremlin
g.V().hasLabel('GraduateStudent').as('student').
out('memberOf').
out('subOrganisationOf').
in('undergraduateDegreeFrom').
where(eq('student'))
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Gremlin
g.V().hasLabel('GraduateStudent').as('student').
out('memberOf').
out('subOrganisationOf').
in('undergraduateDegreeFrom').
where(eq('student'))
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Gremlin
g.V().hasLabel('GraduateStudent').as('student').
out('memberOf').
out('subOrganisationOf').
in('undergraduateDegreeFrom').
where(eq('student'))
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Gremlin
g.V().hasLabel('GraduateStudent').as('student').
out('memberOf').
out('subOrganisationOf').
in('undergraduateDegreeFrom').
where(eq('student'))
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
SPARQL
PREFIX rdf:http://www.w3.org/1999/02/22-rdf-syntax-ns#
PREFIX ub:http://www.lehigh.edu/~zhp2/2004/0401/univ-bench.owl#
SELECT ?student WHERE {
?student rdf:type ub:GraduateStudent .
?univ rdf:type ub:University .
?dept rdf:type ub:Department .
?student ub:memberOf ?dept .
?dept ub:subOrganizationOf ?univ .
?student ub:undergraduateDegreeFrom ?univ
}
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
SPARQL
PREFIX rdf:http://www.w3.org/1999/02/22-rdf-syntax-ns#
PREFIX ub:http://www.lehigh.edu/~zhp2/2004/0401/univ-bench.owl#
SELECT ?student WHERE {
?student rdf:type ub:GraduateStudent .
?univ rdf:type ub:University .
?dept rdf:type ub:Department .
?student ub:memberOf ?dept .
?dept ub:subOrganizationOf ?univ .
?student ub:undergraduateDegreeFrom ?univ
}
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
SPARQL
PREFIX rdf:http://www.w3.org/1999/02/22-rdf-syntax-ns#
PREFIX ub:http://www.lehigh.edu/~zhp2/2004/0401/univ-bench.owl#
SELECT ?student WHERE {
?student rdf:type ub:GraduateStudent .
?univ rdf:type ub:University .
?dept rdf:type ub:Department .
?student ub:memberOf ?dept .
?dept ub:subOrganizationOf ?univ .
?student ub:undergraduateDegreeFrom ?univ
}
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
SPARQL
PREFIX rdf:http://www.w3.org/1999/02/22-rdf-syntax-ns#
PREFIX ub:http://www.lehigh.edu/~zhp2/2004/0401/univ-bench.owl#
SELECT ?student WHERE {
?student rdf:type ub:GraduateStudent .
?univ rdf:type ub:University .
?dept rdf:type ub:Department .
?student ub:memberOf ?dept .
?dept ub:subOrganizationOf ?univ .
?student ub:undergraduateDegreeFrom ?univ
}
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
SPARQL
PREFIX rdf:http://www.w3.org/1999/02/22-rdf-syntax-ns#
PREFIX ub:http://www.lehigh.edu/~zhp2/2004/0401/univ-bench.owl#
SELECT ?student WHERE {
?student rdf:type ub:GraduateStudent .
?univ rdf:type ub:University .
?dept rdf:type ub:Department .
?student ub:memberOf ?dept .
?dept ub:subOrganizationOf ?univ .
?student ub:undergraduateDegreeFrom ?univ
}
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Cloud-native storage
Data replicated six times across
three AZs
Continuous backup to Amazon
Simple Storage Service (Amazon S3)
Built for 11 nines of durability
Continuous monitoring of nodes
Quorum system for read/write
Latency tolerant
Storage volume automatically grows
up to 64 TB
10 GB segments as unit of repair or hot spot
rebalance
AZ 1 AZ 2 AZ 3
Amazon S3
Amazon
Neptune
Storage
Node
Storage
Node
Storage
Node
Storage
Node
Storage
Node
Storage
Node
Storage
Monitoring
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Amazon Neptune read replicas
Availability
• Failing database nodes automatically
detected and replaced
• Failing database processes automatically
detected and recycled
• Replicas automatically promoted to
primary during failover
• Customer-specifiable failover order
Performance
• Customer applications can scale out read
traffic across read replicas
• Reader endpoint balances connection
across read replicas
AZ 1 AZ 3AZ 2
Primary
Node
Primary
Node
Primary
Master
Node
Primary
Node
Primary
NodeRead Replica
Primary
Node
Primary
NodeRead Replica
Cluster
and Instance
Monitoring
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Security
Network isolation via virtual private cloud
Use security groups to control ingress
Encryption at rest using AWS Key Management
Service (AWS KMS)
Encrypts underlying storage, automated backups, snapshots,
and replicas in the same cluster
AWS Identity Access Management (IAM) policies
to secure resources
IAM database authentication
IAM policies for database access
Each request must be signed using AWS Signature version 4
Libraries for Gremlin and SPARQL clients
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Monitoring
AWS CloudTrail
Log all Neptune API calls to Amazon S3 bucket
Event notifications
Create SNS subscription via CLI or SDK
Sources: db-instance | db-cluster | db-parameter-group
db-security-group | db-snapshot | db-cluster-snapshot
Amazon CloudWatch
CPUUtilization GremlinRequestsPerSec Http429 SparqlErrors
ClusterReplicaLag Http100 Http500 SparqlRequests
ClusterReplicaLagMaximum Http101 Http501 SparqlRequestsPerSec
ClusterReplicaLagMinimum Http200 LoaderErrors StatusErrors
EngineUptime Http400 LoaderRequests StatusRequests
FreeableMemory Http403 NetworkReceiveThroughput VolumeBytesUsed
GremlinErrors Http405 NetworkThroughput VolumeReadIOPs
GremlinRequests Http413 NetworkTransmitThroughput VolumeWriteIOPs
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Quick start
AWS CloudFormation stack
VPC
Security group
Neptune cluster (with read replica)
Amazon EC2 client
IAM role
Amazon S3 endpoint
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Accessing the graph
REPL environments
• Gremlin console
• RDF4j console
Application clients
• Open-source Gremlin and SPARQL
clients for most languages
Development environments
• AWS Cloud9
• Amazon SageMaker Jupyter notebooks
Thank you!
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Ian Robinson
ianrob@amazon.com
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.

Mais conteúdo relacionado

Mais procurados

Best Practices for Building Your Data Lake on AWS
Best Practices for Building Your Data Lake on AWSBest Practices for Building Your Data Lake on AWS
Best Practices for Building Your Data Lake on AWSAmazon Web Services
 
AWS Lake Formation Deep Dive
AWS Lake Formation Deep DiveAWS Lake Formation Deep Dive
AWS Lake Formation Deep DiveCobus Bernard
 
Building Serverless ETL Pipelines with AWS Glue
Building Serverless ETL Pipelines with AWS GlueBuilding Serverless ETL Pipelines with AWS Glue
Building Serverless ETL Pipelines with AWS GlueAmazon Web Services
 
How to govern and secure a Data Mesh?
How to govern and secure a Data Mesh?How to govern and secure a Data Mesh?
How to govern and secure a Data Mesh?confluent
 
Amazon DynamoDB Under the Hood: How We Built a Hyper-Scale Database (DAT321) ...
Amazon DynamoDB Under the Hood: How We Built a Hyper-Scale Database (DAT321) ...Amazon DynamoDB Under the Hood: How We Built a Hyper-Scale Database (DAT321) ...
Amazon DynamoDB Under the Hood: How We Built a Hyper-Scale Database (DAT321) ...Amazon Web Services
 
효율적인 빅데이터 분석 및 처리를 위한 Glue, EMR 활용 - 김태현 솔루션즈 아키텍트, AWS :: AWS Summit Seoul 2019
효율적인 빅데이터 분석 및 처리를 위한 Glue, EMR 활용 - 김태현 솔루션즈 아키텍트, AWS :: AWS Summit Seoul 2019효율적인 빅데이터 분석 및 처리를 위한 Glue, EMR 활용 - 김태현 솔루션즈 아키텍트, AWS :: AWS Summit Seoul 2019
효율적인 빅데이터 분석 및 처리를 위한 Glue, EMR 활용 - 김태현 솔루션즈 아키텍트, AWS :: AWS Summit Seoul 2019Amazon Web Services Korea
 
20190806 AWS Black Belt Online Seminar AWS Glue
20190806 AWS Black Belt Online Seminar AWS Glue20190806 AWS Black Belt Online Seminar AWS Glue
20190806 AWS Black Belt Online Seminar AWS GlueAmazon Web Services Japan
 
Lake Formation, 데이터레이크 관리와 운영을 하나로 :: 이재성 - AWS Community Day 2019
Lake Formation, 데이터레이크 관리와 운영을 하나로 :: 이재성 - AWS Community Day 2019Lake Formation, 데이터레이크 관리와 운영을 하나로 :: 이재성 - AWS Community Day 2019
Lake Formation, 데이터레이크 관리와 운영을 하나로 :: 이재성 - AWS Community Day 2019AWSKRUG - AWS한국사용자모임
 
ビズリーチにおけるEMR(AWS)活用事例
ビズリーチにおけるEMR(AWS)活用事例ビズリーチにおけるEMR(AWS)活用事例
ビズリーチにおけるEMR(AWS)活用事例Shin Takeuchi
 
모든 데이터를 위한 단 하나의 저장소, Amazon S3 기반 데이터 레이크::정세웅::AWS Summit Seoul 2018
모든 데이터를 위한 단 하나의 저장소, Amazon S3 기반 데이터 레이크::정세웅::AWS Summit Seoul 2018모든 데이터를 위한 단 하나의 저장소, Amazon S3 기반 데이터 레이크::정세웅::AWS Summit Seoul 2018
모든 데이터를 위한 단 하나의 저장소, Amazon S3 기반 데이터 레이크::정세웅::AWS Summit Seoul 2018Amazon Web Services Korea
 
How to build a data lake with aws glue data catalog (ABD213-R) re:Invent 2017
How to build a data lake with aws glue data catalog (ABD213-R)  re:Invent 2017How to build a data lake with aws glue data catalog (ABD213-R)  re:Invent 2017
How to build a data lake with aws glue data catalog (ABD213-R) re:Invent 2017Amazon Web Services
 
Big Data Analytics Architectural Patterns and Best Practices (ANT201-R1) - AW...
Big Data Analytics Architectural Patterns and Best Practices (ANT201-R1) - AW...Big Data Analytics Architectural Patterns and Best Practices (ANT201-R1) - AW...
Big Data Analytics Architectural Patterns and Best Practices (ANT201-R1) - AW...Amazon Web Services
 
Amazon Redshift パフォーマンスチューニングテクニックと最新アップデート
Amazon Redshift パフォーマンスチューニングテクニックと最新アップデートAmazon Redshift パフォーマンスチューニングテクニックと最新アップデート
Amazon Redshift パフォーマンスチューニングテクニックと最新アップデートAmazon Web Services Japan
 
Amazon Rekognition: Deep Learning-Based Image and Video Analysis
Amazon Rekognition: Deep Learning-Based Image and Video AnalysisAmazon Rekognition: Deep Learning-Based Image and Video Analysis
Amazon Rekognition: Deep Learning-Based Image and Video AnalysisAmazon Web Services
 
Amazon Aurora Storage Demystified: How It All Works (DAT363) - AWS re:Invent ...
Amazon Aurora Storage Demystified: How It All Works (DAT363) - AWS re:Invent ...Amazon Aurora Storage Demystified: How It All Works (DAT363) - AWS re:Invent ...
Amazon Aurora Storage Demystified: How It All Works (DAT363) - AWS re:Invent ...Amazon Web Services
 
Neptune, the Graph Database | AWS Floor28
Neptune, the Graph Database | AWS Floor28Neptune, the Graph Database | AWS Floor28
Neptune, the Graph Database | AWS Floor28Amazon Web Services
 
[Bespin Global 파트너 세션] 분산 데이터 통합 (Data Lake) 기반의 데이터 분석 환경 구축 사례 - 베스핀 글로벌 장익...
[Bespin Global 파트너 세션] 분산 데이터 통합 (Data Lake) 기반의 데이터 분석 환경 구축 사례 - 베스핀 글로벌 장익...[Bespin Global 파트너 세션] 분산 데이터 통합 (Data Lake) 기반의 데이터 분석 환경 구축 사례 - 베스핀 글로벌 장익...
[Bespin Global 파트너 세션] 분산 데이터 통합 (Data Lake) 기반의 데이터 분석 환경 구축 사례 - 베스핀 글로벌 장익...Amazon Web Services Korea
 

Mais procurados (20)

Amazon Rekognition
Amazon RekognitionAmazon Rekognition
Amazon Rekognition
 
Best Practices for Building Your Data Lake on AWS
Best Practices for Building Your Data Lake on AWSBest Practices for Building Your Data Lake on AWS
Best Practices for Building Your Data Lake on AWS
 
AWS Lake Formation Deep Dive
AWS Lake Formation Deep DiveAWS Lake Formation Deep Dive
AWS Lake Formation Deep Dive
 
Building Serverless ETL Pipelines with AWS Glue
Building Serverless ETL Pipelines with AWS GlueBuilding Serverless ETL Pipelines with AWS Glue
Building Serverless ETL Pipelines with AWS Glue
 
How to govern and secure a Data Mesh?
How to govern and secure a Data Mesh?How to govern and secure a Data Mesh?
How to govern and secure a Data Mesh?
 
Amazon DynamoDB Under the Hood: How We Built a Hyper-Scale Database (DAT321) ...
Amazon DynamoDB Under the Hood: How We Built a Hyper-Scale Database (DAT321) ...Amazon DynamoDB Under the Hood: How We Built a Hyper-Scale Database (DAT321) ...
Amazon DynamoDB Under the Hood: How We Built a Hyper-Scale Database (DAT321) ...
 
효율적인 빅데이터 분석 및 처리를 위한 Glue, EMR 활용 - 김태현 솔루션즈 아키텍트, AWS :: AWS Summit Seoul 2019
효율적인 빅데이터 분석 및 처리를 위한 Glue, EMR 활용 - 김태현 솔루션즈 아키텍트, AWS :: AWS Summit Seoul 2019효율적인 빅데이터 분석 및 처리를 위한 Glue, EMR 활용 - 김태현 솔루션즈 아키텍트, AWS :: AWS Summit Seoul 2019
효율적인 빅데이터 분석 및 처리를 위한 Glue, EMR 활용 - 김태현 솔루션즈 아키텍트, AWS :: AWS Summit Seoul 2019
 
20190806 AWS Black Belt Online Seminar AWS Glue
20190806 AWS Black Belt Online Seminar AWS Glue20190806 AWS Black Belt Online Seminar AWS Glue
20190806 AWS Black Belt Online Seminar AWS Glue
 
Lake Formation, 데이터레이크 관리와 운영을 하나로 :: 이재성 - AWS Community Day 2019
Lake Formation, 데이터레이크 관리와 운영을 하나로 :: 이재성 - AWS Community Day 2019Lake Formation, 데이터레이크 관리와 운영을 하나로 :: 이재성 - AWS Community Day 2019
Lake Formation, 데이터레이크 관리와 운영을 하나로 :: 이재성 - AWS Community Day 2019
 
ビズリーチにおけるEMR(AWS)活用事例
ビズリーチにおけるEMR(AWS)活用事例ビズリーチにおけるEMR(AWS)活用事例
ビズリーチにおけるEMR(AWS)活用事例
 
모든 데이터를 위한 단 하나의 저장소, Amazon S3 기반 데이터 레이크::정세웅::AWS Summit Seoul 2018
모든 데이터를 위한 단 하나의 저장소, Amazon S3 기반 데이터 레이크::정세웅::AWS Summit Seoul 2018모든 데이터를 위한 단 하나의 저장소, Amazon S3 기반 데이터 레이크::정세웅::AWS Summit Seoul 2018
모든 데이터를 위한 단 하나의 저장소, Amazon S3 기반 데이터 레이크::정세웅::AWS Summit Seoul 2018
 
How to build a data lake with aws glue data catalog (ABD213-R) re:Invent 2017
How to build a data lake with aws glue data catalog (ABD213-R)  re:Invent 2017How to build a data lake with aws glue data catalog (ABD213-R)  re:Invent 2017
How to build a data lake with aws glue data catalog (ABD213-R) re:Invent 2017
 
Big Data Analytics Architectural Patterns and Best Practices (ANT201-R1) - AW...
Big Data Analytics Architectural Patterns and Best Practices (ANT201-R1) - AW...Big Data Analytics Architectural Patterns and Best Practices (ANT201-R1) - AW...
Big Data Analytics Architectural Patterns and Best Practices (ANT201-R1) - AW...
 
Amazon Redshift パフォーマンスチューニングテクニックと最新アップデート
Amazon Redshift パフォーマンスチューニングテクニックと最新アップデートAmazon Redshift パフォーマンスチューニングテクニックと最新アップデート
Amazon Redshift パフォーマンスチューニングテクニックと最新アップデート
 
Building-a-Data-Lake-on-AWS
Building-a-Data-Lake-on-AWSBuilding-a-Data-Lake-on-AWS
Building-a-Data-Lake-on-AWS
 
Amazon Rekognition: Deep Learning-Based Image and Video Analysis
Amazon Rekognition: Deep Learning-Based Image and Video AnalysisAmazon Rekognition: Deep Learning-Based Image and Video Analysis
Amazon Rekognition: Deep Learning-Based Image and Video Analysis
 
Amazon Aurora Storage Demystified: How It All Works (DAT363) - AWS re:Invent ...
Amazon Aurora Storage Demystified: How It All Works (DAT363) - AWS re:Invent ...Amazon Aurora Storage Demystified: How It All Works (DAT363) - AWS re:Invent ...
Amazon Aurora Storage Demystified: How It All Works (DAT363) - AWS re:Invent ...
 
ここから始めるAWSセキュリティ
ここから始めるAWSセキュリティここから始めるAWSセキュリティ
ここから始めるAWSセキュリティ
 
Neptune, the Graph Database | AWS Floor28
Neptune, the Graph Database | AWS Floor28Neptune, the Graph Database | AWS Floor28
Neptune, the Graph Database | AWS Floor28
 
[Bespin Global 파트너 세션] 분산 데이터 통합 (Data Lake) 기반의 데이터 분석 환경 구축 사례 - 베스핀 글로벌 장익...
[Bespin Global 파트너 세션] 분산 데이터 통합 (Data Lake) 기반의 데이터 분석 환경 구축 사례 - 베스핀 글로벌 장익...[Bespin Global 파트너 세션] 분산 데이터 통합 (Data Lake) 기반의 데이터 분석 환경 구축 사례 - 베스핀 글로벌 장익...
[Bespin Global 파트너 세션] 분산 데이터 통합 (Data Lake) 기반의 데이터 분석 환경 구축 사례 - 베스핀 글로벌 장익...
 

Semelhante a On-Ramp to Graph Databases and Amazon Neptune (DAT335) - AWS re:Invent 2018

Deep Dive on Amazon Neptune - AWS Online Tech Talks
Deep Dive on Amazon Neptune - AWS Online Tech TalksDeep Dive on Amazon Neptune - AWS Online Tech Talks
Deep Dive on Amazon Neptune - AWS Online Tech TalksAmazon Web Services
 
Connecting the dots - How Amazon Neptune and Graph Databases can transform yo...
Connecting the dots - How Amazon Neptune and Graph Databases can transform yo...Connecting the dots - How Amazon Neptune and Graph Databases can transform yo...
Connecting the dots - How Amazon Neptune and Graph Databases can transform yo...Amazon Web Services
 
Connecting the Unconnected using GraphDB - Tel Aviv Summit 2018
Connecting the Unconnected using GraphDB - Tel Aviv Summit 2018Connecting the Unconnected using GraphDB - Tel Aviv Summit 2018
Connecting the Unconnected using GraphDB - Tel Aviv Summit 2018Amazon Web Services
 
Let me graph that for you - Amazon Neptune
Let me graph that for you - Amazon NeptuneLet me graph that for you - Amazon Neptune
Let me graph that for you - Amazon NeptuneAmazon Web Services
 
Building Serverless Applications Using AWS AppSync and Amazon Neptune (SRV307...
Building Serverless Applications Using AWS AppSync and Amazon Neptune (SRV307...Building Serverless Applications Using AWS AppSync and Amazon Neptune (SRV307...
Building Serverless Applications Using AWS AppSync and Amazon Neptune (SRV307...Amazon Web Services
 
Going Graph With Amazon Neptune - AWS Summit Sydney 2018
Going Graph With Amazon Neptune - AWS Summit Sydney 2018Going Graph With Amazon Neptune - AWS Summit Sydney 2018
Going Graph With Amazon Neptune - AWS Summit Sydney 2018Amazon Web Services
 
NEW LAUNCH! Deep dive on Amazon Neptune - DAT318 - re:Invent 2017
NEW LAUNCH! Deep dive on Amazon Neptune - DAT318 - re:Invent 2017NEW LAUNCH! Deep dive on Amazon Neptune - DAT318 - re:Invent 2017
NEW LAUNCH! Deep dive on Amazon Neptune - DAT318 - re:Invent 2017Amazon Web Services
 
Ten Tips And Tricks for Improving Your GraphQL API with AWS AppSync (MOB401) ...
Ten Tips And Tricks for Improving Your GraphQL API with AWS AppSync (MOB401) ...Ten Tips And Tricks for Improving Your GraphQL API with AWS AppSync (MOB401) ...
Ten Tips And Tricks for Improving Your GraphQL API with AWS AppSync (MOB401) ...Amazon Web Services
 
NEW LAUNCH! How to build graph applications with SPARQL and Gremlin using Ama...
NEW LAUNCH! How to build graph applications with SPARQL and Gremlin using Ama...NEW LAUNCH! How to build graph applications with SPARQL and Gremlin using Ama...
NEW LAUNCH! How to build graph applications with SPARQL and Gremlin using Ama...Amazon Web Services
 
Graph & Neptune: Database Week San Francisco
Graph & Neptune: Database Week San FranciscoGraph & Neptune: Database Week San Francisco
Graph & Neptune: Database Week San FranciscoAmazon Web Services
 
Ask Me Anything about Amazon Aurora (DAT369-R1) - AWS re:Invent 2018
Ask Me Anything about Amazon Aurora (DAT369-R1) - AWS re:Invent 2018Ask Me Anything about Amazon Aurora (DAT369-R1) - AWS re:Invent 2018
Ask Me Anything about Amazon Aurora (DAT369-R1) - AWS re:Invent 2018Amazon Web Services
 
Building Data Lake on AWS | AWS Floor28
Building Data Lake on AWS | AWS Floor28Building Data Lake on AWS | AWS Floor28
Building Data Lake on AWS | AWS Floor28Amazon Web Services
 
AWS Floor 28 - Building Data lake on AWS
AWS Floor 28 - Building Data lake on AWSAWS Floor 28 - Building Data lake on AWS
AWS Floor 28 - Building Data lake on AWSAdir Sharabi
 
Customizing Data Lakes to Work for Your Enterprise with Sysco (STG340) - AWS ...
Customizing Data Lakes to Work for Your Enterprise with Sysco (STG340) - AWS ...Customizing Data Lakes to Work for Your Enterprise with Sysco (STG340) - AWS ...
Customizing Data Lakes to Work for Your Enterprise with Sysco (STG340) - AWS ...Amazon Web Services
 
Build Data Lakes & Analytics on AWS: Patterns & Best Practices
Build Data Lakes & Analytics on AWS: Patterns & Best PracticesBuild Data Lakes & Analytics on AWS: Patterns & Best Practices
Build Data Lakes & Analytics on AWS: Patterns & Best PracticesAmazon Web Services
 
Build Data Lakes and Analytics on AWS: Patterns & Best Practices
Build Data Lakes and Analytics on AWS: Patterns & Best PracticesBuild Data Lakes and Analytics on AWS: Patterns & Best Practices
Build Data Lakes and Analytics on AWS: Patterns & Best PracticesAmazon Web Services
 
Supercharging Applications with GraphQL and AWS AppSync
Supercharging Applications with GraphQL and AWS AppSyncSupercharging Applications with GraphQL and AWS AppSync
Supercharging Applications with GraphQL and AWS AppSyncAmazon Web Services
 
Understanding Graph Databases: AWS Developer Workshop at Web Summit
Understanding Graph Databases: AWS Developer Workshop at Web SummitUnderstanding Graph Databases: AWS Developer Workshop at Web Summit
Understanding Graph Databases: AWS Developer Workshop at Web SummitAmazon Web Services
 

Semelhante a On-Ramp to Graph Databases and Amazon Neptune (DAT335) - AWS re:Invent 2018 (20)

Deep Dive on Amazon Neptune - AWS Online Tech Talks
Deep Dive on Amazon Neptune - AWS Online Tech TalksDeep Dive on Amazon Neptune - AWS Online Tech Talks
Deep Dive on Amazon Neptune - AWS Online Tech Talks
 
Connecting the dots - How Amazon Neptune and Graph Databases can transform yo...
Connecting the dots - How Amazon Neptune and Graph Databases can transform yo...Connecting the dots - How Amazon Neptune and Graph Databases can transform yo...
Connecting the dots - How Amazon Neptune and Graph Databases can transform yo...
 
Connecting the Unconnected using GraphDB - Tel Aviv Summit 2018
Connecting the Unconnected using GraphDB - Tel Aviv Summit 2018Connecting the Unconnected using GraphDB - Tel Aviv Summit 2018
Connecting the Unconnected using GraphDB - Tel Aviv Summit 2018
 
Let me graph that for you - Amazon Neptune
Let me graph that for you - Amazon NeptuneLet me graph that for you - Amazon Neptune
Let me graph that for you - Amazon Neptune
 
Building Serverless Applications Using AWS AppSync and Amazon Neptune (SRV307...
Building Serverless Applications Using AWS AppSync and Amazon Neptune (SRV307...Building Serverless Applications Using AWS AppSync and Amazon Neptune (SRV307...
Building Serverless Applications Using AWS AppSync and Amazon Neptune (SRV307...
 
Going Graph With Amazon Neptune - AWS Summit Sydney 2018
Going Graph With Amazon Neptune - AWS Summit Sydney 2018Going Graph With Amazon Neptune - AWS Summit Sydney 2018
Going Graph With Amazon Neptune - AWS Summit Sydney 2018
 
Graph and Neptune
Graph and NeptuneGraph and Neptune
Graph and Neptune
 
NEW LAUNCH! Deep dive on Amazon Neptune - DAT318 - re:Invent 2017
NEW LAUNCH! Deep dive on Amazon Neptune - DAT318 - re:Invent 2017NEW LAUNCH! Deep dive on Amazon Neptune - DAT318 - re:Invent 2017
NEW LAUNCH! Deep dive on Amazon Neptune - DAT318 - re:Invent 2017
 
Ten Tips And Tricks for Improving Your GraphQL API with AWS AppSync (MOB401) ...
Ten Tips And Tricks for Improving Your GraphQL API with AWS AppSync (MOB401) ...Ten Tips And Tricks for Improving Your GraphQL API with AWS AppSync (MOB401) ...
Ten Tips And Tricks for Improving Your GraphQL API with AWS AppSync (MOB401) ...
 
NEW LAUNCH! How to build graph applications with SPARQL and Gremlin using Ama...
NEW LAUNCH! How to build graph applications with SPARQL and Gremlin using Ama...NEW LAUNCH! How to build graph applications with SPARQL and Gremlin using Ama...
NEW LAUNCH! How to build graph applications with SPARQL and Gremlin using Ama...
 
Graph & Neptune: Database Week San Francisco
Graph & Neptune: Database Week San FranciscoGraph & Neptune: Database Week San Francisco
Graph & Neptune: Database Week San Francisco
 
Ask Me Anything about Amazon Aurora (DAT369-R1) - AWS re:Invent 2018
Ask Me Anything about Amazon Aurora (DAT369-R1) - AWS re:Invent 2018Ask Me Anything about Amazon Aurora (DAT369-R1) - AWS re:Invent 2018
Ask Me Anything about Amazon Aurora (DAT369-R1) - AWS re:Invent 2018
 
Building Data Lake on AWS | AWS Floor28
Building Data Lake on AWS | AWS Floor28Building Data Lake on AWS | AWS Floor28
Building Data Lake on AWS | AWS Floor28
 
AWS Floor 28 - Building Data lake on AWS
AWS Floor 28 - Building Data lake on AWSAWS Floor 28 - Building Data lake on AWS
AWS Floor 28 - Building Data lake on AWS
 
Customizing Data Lakes to Work for Your Enterprise with Sysco (STG340) - AWS ...
Customizing Data Lakes to Work for Your Enterprise with Sysco (STG340) - AWS ...Customizing Data Lakes to Work for Your Enterprise with Sysco (STG340) - AWS ...
Customizing Data Lakes to Work for Your Enterprise with Sysco (STG340) - AWS ...
 
Build Data Lakes & Analytics on AWS: Patterns & Best Practices
Build Data Lakes & Analytics on AWS: Patterns & Best PracticesBuild Data Lakes & Analytics on AWS: Patterns & Best Practices
Build Data Lakes & Analytics on AWS: Patterns & Best Practices
 
Build Data Lakes and Analytics on AWS: Patterns & Best Practices
Build Data Lakes and Analytics on AWS: Patterns & Best PracticesBuild Data Lakes and Analytics on AWS: Patterns & Best Practices
Build Data Lakes and Analytics on AWS: Patterns & Best Practices
 
Supercharging Applications with GraphQL and AWS AppSync
Supercharging Applications with GraphQL and AWS AppSyncSupercharging Applications with GraphQL and AWS AppSync
Supercharging Applications with GraphQL and AWS AppSync
 
Understanding Graph Databases: AWS Developer Workshop at Web Summit
Understanding Graph Databases: AWS Developer Workshop at Web SummitUnderstanding Graph Databases: AWS Developer Workshop at Web Summit
Understanding Graph Databases: AWS Developer Workshop at Web Summit
 
Big Data@Scale
 Big Data@Scale Big Data@Scale
Big Data@Scale
 

Mais de Amazon Web Services

Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Amazon Web Services
 
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Amazon Web Services
 
Esegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS FargateEsegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS FargateAmazon Web Services
 
Costruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSCostruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSAmazon Web Services
 
Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot Amazon Web Services
 
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...Amazon Web Services
 
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...Amazon Web Services
 
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows WorkloadsMicrosoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows WorkloadsAmazon Web Services
 
Database Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatareDatabase Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatareAmazon Web Services
 
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJSCrea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJSAmazon Web Services
 
API moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e webAPI moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e webAmazon Web Services
 
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatareDatabase Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatareAmazon Web Services
 
Tools for building your MVP on AWS
Tools for building your MVP on AWSTools for building your MVP on AWS
Tools for building your MVP on AWSAmazon Web Services
 
How to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckHow to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckAmazon Web Services
 
Building a web application without servers
Building a web application without serversBuilding a web application without servers
Building a web application without serversAmazon Web Services
 
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...Amazon Web Services
 
Introduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceIntroduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceAmazon Web Services
 

Mais de Amazon Web Services (20)

Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
 
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
 
Esegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS FargateEsegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS Fargate
 
Costruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSCostruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWS
 
Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot
 
Open banking as a service
Open banking as a serviceOpen banking as a service
Open banking as a service
 
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
 
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
 
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows WorkloadsMicrosoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
 
Computer Vision con AWS
Computer Vision con AWSComputer Vision con AWS
Computer Vision con AWS
 
Database Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatareDatabase Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatare
 
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJSCrea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
 
API moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e webAPI moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e web
 
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatareDatabase Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
 
Tools for building your MVP on AWS
Tools for building your MVP on AWSTools for building your MVP on AWS
Tools for building your MVP on AWS
 
How to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckHow to Build a Winning Pitch Deck
How to Build a Winning Pitch Deck
 
Building a web application without servers
Building a web application without serversBuilding a web application without servers
Building a web application without servers
 
Fundraising Essentials
Fundraising EssentialsFundraising Essentials
Fundraising Essentials
 
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
 
Introduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceIntroduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container Service
 

On-Ramp to Graph Databases and Amazon Neptune (DAT335) - AWS re:Invent 2018

  • 1.
  • 2. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. On-Ramp to Graph Databases and Amazon Neptune Ian Robinson Data Architect AWS D A T 3 3 5
  • 3. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Agenda Introduction to Amazon Neptune Creating and querying graph data Operations Getting started
  • 4. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Related breakouts Tuesday, November 27 Migrating to Amazon Neptune - DAT338 11:30 a.m. | Venetian, Level 4, Lando 4305 Wednesday, November 28 Getting Started with Amazon Neptune and Amazon SageMaker Jupyter Notebooks - DAT359 2:30 p.m. | Aria West, Level 3, Starvine 10, Table 7
  • 5. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Amazon Neptune Fast, reliable graph database Optimized for storing and querying highly connected data
  • 6. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Do I have a graph workload? Complex domain model Variable schema Connected queries Large dataset Many different entities Similar entities may have different properties Highly connected entities connected in many different ways Navigate connected structure Take account of strength, weight, or quality of relationships Variable structure Social Networking Recommendations Knowledge Graphs Fraud Detection Life Sciences Network & IT Operations
  • 7. “Our customers are increasingly required to navigate a complex web of global tax policies and regulations. We need an approach to model the sophisticated corporate structures of our largest clients and deliver an end-to-end tax solution. We use a microservices architecture approach for our platforms and are beginning to leverage Amazon Neptune as a graph- based system to quickly create links within the data.” Tim Vanderham Chief Technology Officer Thomson Reuters Tax & Accounting
  • 8. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Fully managed graph database Fast Reliable Open Query billions of relationships with millisecond latency Six replicas of your data across three AZs with full backup and restore Build powerful queries easily with Gremlin and SPARQL Supports Apache TinkerPop & W3C RDF graph models Easy
  • 9. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Two graph data models and query languages Open-source Apache TinkerPop Gremlin traversal language Property graph Resource description framework (RDF) W3C standard SPARQL query language
  • 10. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Property graph Data model Vertices Edges Properties Labels Gremlin 3.3.2 Imperative traversal language
  • 11. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. RDF Data model Triples subject-predicate-object SPARQL 1.1 Declarative pattern matching language
  • 12. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Amazon Neptune high-level architecture Bulk load from Amazon S3 Database management
  • 13. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  • 14. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Creating property graph data with Gremlin g.addV('User'). property(id, 'p-1'). property('name','Bob'). addV('User'). property(id, 'p-2'). property('name','Alice'). addV('User'). property(id, 'p-3'). property('name','Dan'). V('p-1').addE('FOLLOWS').to(V('p-2')). V('p-1').addE('FOLLOWS').to(V('p-3')). next()
  • 15. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Creating property graph data g.addV('User'). property(id, 'p-1'). property('name','Bob'). addV('User'). property(id, 'p-2'). property('name','Alice'). addV('User'). property(id, 'p-3'). property('name','Dan'). V('p-1').addE('FOLLOWS').to(V('p-2')). V('p-1').addE('FOLLOWS').to(V('p-3')). next()
  • 16. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Creating property graph data g.addV('User'). property(id, 'p-1'). property('name','Bob'). addV('User'). property(id, 'p-2'). property('name','Alice'). addV('User'). property(id, 'p-3'). property('name','Dan'). V('p-1').addE('FOLLOWS').to(V('p-2')). V('p-1').addE('FOLLOWS').to(V('p-3')). next()
  • 17. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Creating property graph data g.addV('User'). property(id, 'p-1'). property('name','Bob'). addV('User'). property(id, 'p-2'). property('name','Alice'). addV('User'). property(id, 'p-3'). property('name','Dan'). V('p-1').addE('FOLLOWS').to(V('p-2')). V('p-1').addE('FOLLOWS').to(V('p-3')). next()
  • 18. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Creating property graph data g.addV('User'). property(id, 'p-1'). property('name','Bob'). addV('User'). property(id, 'p-2'). property('name','Alice'). addV('User'). property(id, 'p-3'). property('name','Dan'). V('p-1').addE('FOLLOWS').to(V('p-2')). V('p-1').addE('FOLLOWS').to(V('p-3')). next()
  • 19. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Creating RDF data with SPARQL PREFIX c: <http://www.example.com/social#> PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> INSERT { c:p-1 c:name "Bob"; rdf:type c:User . c:p-2 c:name "Alice"; rdf:type c:User . c:p-3 c:name "Dan"; rdf:type c:User . c:p-1 c:FOLLOWS c:p-2; c:FOLLOWS c:p-3 . } WHERE {}
  • 20. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Creating RDF data with SPARQL PREFIX c: <http://www.example.com/social#> PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> INSERT { c:p-1 c:name "Bob"; rdf:type c:User . c:p-2 c:name "Alice"; rdf:type c:User . c:p-3 c:name "Dan"; rdf:type c:User . c:p-1 c:FOLLOWS c:p-2; c:FOLLOWS c:p-3 . } WHERE {}
  • 21. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Creating RDF data with SPARQL PREFIX c: <http://www.example.com/social#> PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> INSERT { c:p-1 c:name "Bob"; rdf:type c:User . c:p-2 c:name "Alice"; rdf:type c:User . c:p-3 c:name "Dan"; rdf:type c:User . c:p-1 c:FOLLOWS c:p-2; c:FOLLOWS c:p-3 . } WHERE {}
  • 22. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Creating RDF data with SPARQL PREFIX c: <http://www.example.com/social#> PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> INSERT { c:p-1 c:name "Bob"; rdf:type c:User . c:p-2 c:name "Alice"; rdf:type c:User . c:p-3 c:name "Dan"; rdf:type c:User . c:p-1 c:FOLLOWS c:p-2; c:FOLLOWS c:p-3 . } WHERE {}
  • 23. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Creating RDF data with SPARQL PREFIX c: <http://www.example.com/social#> PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> INSERT { c:p-1 c:name "Bob"; rdf:type c:User . c:p-2 c:name "Alice"; rdf:type c:User . c:p-3 c:name "Dan"; rdf:type c:User . c:p-1 c:FOLLOWS c:p-2; c:FOLLOWS c:p-3 . } WHERE {}
  • 24. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Creating RDF data with SPARQL PREFIX c: <http://www.example.com/social#> PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> INSERT { c:p-1 c:name "Bob"; rdf:type c:User . c:p-2 c:name "Alice"; rdf:type c:User . c:p-3 c:name "Dan"; rdf:type c:User . c:p-1 c:FOLLOWS c:p-2; c:FOLLOWS c:p-3 . } WHERE {}
  • 25. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Querying graph data Universities Institutions Organizational structure Roles and job titles Research, teaching, and administrative staff Subjects and course catalogs Timetables Undergraduate and graduate populations
  • 26. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Find graduate students working at the same university from which they received their undergraduate degree undergraduateDegreeFrom name: ? name: ? University GraduateStudent name: ? Department memberOf subOrganisationOf
  • 27. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Gremlin g.V().hasLabel('GraduateStudent').as('student'). out('memberOf'). out('subOrganisationOf'). in('undergraduateDegreeFrom'). where(eq('student'))
  • 28. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Gremlin g.V().hasLabel('GraduateStudent').as('student'). out('memberOf'). out('subOrganisationOf'). in('undergraduateDegreeFrom'). where(eq('student'))
  • 29. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Gremlin g.V().hasLabel('GraduateStudent').as('student'). out('memberOf'). out('subOrganisationOf'). in('undergraduateDegreeFrom'). where(eq('student'))
  • 30. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Gremlin g.V().hasLabel('GraduateStudent').as('student'). out('memberOf'). out('subOrganisationOf'). in('undergraduateDegreeFrom'). where(eq('student'))
  • 31. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Gremlin g.V().hasLabel('GraduateStudent').as('student'). out('memberOf'). out('subOrganisationOf'). in('undergraduateDegreeFrom'). where(eq('student'))
  • 32. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Gremlin g.V().hasLabel('GraduateStudent').as('student'). out('memberOf'). out('subOrganisationOf'). in('undergraduateDegreeFrom'). where(eq('student'))
  • 33. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. SPARQL PREFIX rdf:http://www.w3.org/1999/02/22-rdf-syntax-ns# PREFIX ub:http://www.lehigh.edu/~zhp2/2004/0401/univ-bench.owl# SELECT ?student WHERE { ?student rdf:type ub:GraduateStudent . ?univ rdf:type ub:University . ?dept rdf:type ub:Department . ?student ub:memberOf ?dept . ?dept ub:subOrganizationOf ?univ . ?student ub:undergraduateDegreeFrom ?univ }
  • 34. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. SPARQL PREFIX rdf:http://www.w3.org/1999/02/22-rdf-syntax-ns# PREFIX ub:http://www.lehigh.edu/~zhp2/2004/0401/univ-bench.owl# SELECT ?student WHERE { ?student rdf:type ub:GraduateStudent . ?univ rdf:type ub:University . ?dept rdf:type ub:Department . ?student ub:memberOf ?dept . ?dept ub:subOrganizationOf ?univ . ?student ub:undergraduateDegreeFrom ?univ }
  • 35. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. SPARQL PREFIX rdf:http://www.w3.org/1999/02/22-rdf-syntax-ns# PREFIX ub:http://www.lehigh.edu/~zhp2/2004/0401/univ-bench.owl# SELECT ?student WHERE { ?student rdf:type ub:GraduateStudent . ?univ rdf:type ub:University . ?dept rdf:type ub:Department . ?student ub:memberOf ?dept . ?dept ub:subOrganizationOf ?univ . ?student ub:undergraduateDegreeFrom ?univ }
  • 36. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. SPARQL PREFIX rdf:http://www.w3.org/1999/02/22-rdf-syntax-ns# PREFIX ub:http://www.lehigh.edu/~zhp2/2004/0401/univ-bench.owl# SELECT ?student WHERE { ?student rdf:type ub:GraduateStudent . ?univ rdf:type ub:University . ?dept rdf:type ub:Department . ?student ub:memberOf ?dept . ?dept ub:subOrganizationOf ?univ . ?student ub:undergraduateDegreeFrom ?univ }
  • 37. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. SPARQL PREFIX rdf:http://www.w3.org/1999/02/22-rdf-syntax-ns# PREFIX ub:http://www.lehigh.edu/~zhp2/2004/0401/univ-bench.owl# SELECT ?student WHERE { ?student rdf:type ub:GraduateStudent . ?univ rdf:type ub:University . ?dept rdf:type ub:Department . ?student ub:memberOf ?dept . ?dept ub:subOrganizationOf ?univ . ?student ub:undergraduateDegreeFrom ?univ }
  • 38. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  • 39. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Cloud-native storage Data replicated six times across three AZs Continuous backup to Amazon Simple Storage Service (Amazon S3) Built for 11 nines of durability Continuous monitoring of nodes Quorum system for read/write Latency tolerant Storage volume automatically grows up to 64 TB 10 GB segments as unit of repair or hot spot rebalance AZ 1 AZ 2 AZ 3 Amazon S3 Amazon Neptune Storage Node Storage Node Storage Node Storage Node Storage Node Storage Node Storage Monitoring
  • 40. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Amazon Neptune read replicas Availability • Failing database nodes automatically detected and replaced • Failing database processes automatically detected and recycled • Replicas automatically promoted to primary during failover • Customer-specifiable failover order Performance • Customer applications can scale out read traffic across read replicas • Reader endpoint balances connection across read replicas AZ 1 AZ 3AZ 2 Primary Node Primary Node Primary Master Node Primary Node Primary NodeRead Replica Primary Node Primary NodeRead Replica Cluster and Instance Monitoring
  • 41. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Security Network isolation via virtual private cloud Use security groups to control ingress Encryption at rest using AWS Key Management Service (AWS KMS) Encrypts underlying storage, automated backups, snapshots, and replicas in the same cluster AWS Identity Access Management (IAM) policies to secure resources IAM database authentication IAM policies for database access Each request must be signed using AWS Signature version 4 Libraries for Gremlin and SPARQL clients
  • 42. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Monitoring AWS CloudTrail Log all Neptune API calls to Amazon S3 bucket Event notifications Create SNS subscription via CLI or SDK Sources: db-instance | db-cluster | db-parameter-group db-security-group | db-snapshot | db-cluster-snapshot Amazon CloudWatch CPUUtilization GremlinRequestsPerSec Http429 SparqlErrors ClusterReplicaLag Http100 Http500 SparqlRequests ClusterReplicaLagMaximum Http101 Http501 SparqlRequestsPerSec ClusterReplicaLagMinimum Http200 LoaderErrors StatusErrors EngineUptime Http400 LoaderRequests StatusRequests FreeableMemory Http403 NetworkReceiveThroughput VolumeBytesUsed GremlinErrors Http405 NetworkThroughput VolumeReadIOPs GremlinRequests Http413 NetworkTransmitThroughput VolumeWriteIOPs
  • 43. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  • 44. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Quick start AWS CloudFormation stack VPC Security group Neptune cluster (with read replica) Amazon EC2 client IAM role Amazon S3 endpoint
  • 45. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Accessing the graph REPL environments • Gremlin console • RDF4j console Application clients • Open-source Gremlin and SPARQL clients for most languages Development environments • AWS Cloud9 • Amazon SageMaker Jupyter notebooks
  • 46. Thank you! © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Ian Robinson ianrob@amazon.com
  • 47. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.