SlideShare a Scribd company logo
1 of 67
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
AWS re:INVENT
Hands on with Amazon Neptune
M i c h a e l S c h m i d t ( S r S o f t w a r e D e v e l o p m e n t E n g i n e e r , A m a z o n N e p t u n e )
D i v i j V a i d y a ( S o f t w a r e D e v e l o p m e n t E n g i n e e r , A m a z o n N e p t u n e )
N o v e m b e r 2 0 1 7
D A T 3 4 2
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
TUTORIAL OUTLINE
• Graph Databases
• Graph: Concept & Use Cases
• Hands on: Exploring a Data Graph
• Introduction to Amazon Neptune: Architecture & Feature Overview
• Amazon Neptune SPARQL
• Introduction to RDF & SPARQL
• Hands on: Building Applications on RDF Graphs using SPARQL
• Amazon Neptune Gremlin
• Introduction to Property Graphs & Gremlin
• Hands on: Querying and Manipulating Property Graphs using Gremlin
• Q&A
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
HIGHLY CONNECTED DATA
Retail Fraud DetectionRestaurant RecommendationsSocial Networks
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
USE C ASES FOR HI GHLY C ONNEC T ED DAT A
Social Networking
Life Sciences Network & IT OperationsFraud Detection
Recommendations Knowledge Graphs
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
A G RAPH DATABASE IS OPTIMIZ E D F OR E F F ICIE NT
STORAG E AND RE TRIE VAL OF HIG HL Y CONNE CTE D DATA
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
EXPLORING A DATA GRAPH
1. Connect to your instance via SSH,
following the handout guidelines
2. Open http://localhost:2345/ in your
browser and log in
3. Click the “Start Tutorial” link on the
start page
4. Familiarize yourself with the data
by following the instructions in
Section 1, 1.1 EXERCISE –
Exploring the data graph (~10min)
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Open Source Apache TinkerPop
Gremlin Traversal Language
W3C Standard
SPARQL Query Language
R E S O U R C E D E S C R I P T I O N
F R A M E W O R K ( R D F )
P R O P E R T Y G R A P H
LEADING GRAPH MODELS AND FRAMEWORKS
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
AMAZON NEPTUNE
F u l l y m a n a g e d g r a p h d a t a b a s e
FAST RELIABLE OPEN
Query billions of
relationships with
millisecond latency
6 replicas of your data
across 3 AZs with full
backup and restore
Build powerful
queries easily with
Gremlin and SPARQL
Supports Apache
TinkerPop & W3C
RDF graph models
EASY
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
AMAZON NEPTUNE HIGH LEVEL ARCHITECTURE
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
AMAZON NEPTUNE PARTNERS AND ECOSYSTEM
. . . and more.
Clients
compatible with
the open
source Apache
TinkerPop
project.
Clients
compatible with
the W3C
Semantic Web
RDF and
SPARQL
standards.
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Amazon Neptune SPARQL
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
RDF GRAPHS
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
URIs AS GLOBALLY UNIQUE IDENTIFIERS
URIs to identify nodes and edge labels
<https://permid.org/1-4295902158>
=> identifies the company “Netflix Inc”
organization:isIncorporatedIn1
=> identifies the relationship “is incorporated in”
<http://sws.geonames.org/6252001/>
=> identifies country “USA”
1 This is a shortcut for
<http://permid.org/ontology/organization/isIncorporatedIn>.
RDF uses XML prefix notation, where the prefix organization is a
shortcut for <http://permid.org/ontology/organization/>.
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
RDF GRAPH: COLLECTION OF TRIPLES (1)
# Every edge in the RDF graph is represented as
# a (subject, predicate, object) triple
<https://permid.org/1-4295902158>
organization:isIncorporatedIn
<http://sws.geonames.org/6252001/> .
subject
predicate
object
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
RDF GRAPH: COLLECTION OF TRIPLES (2)
# Every edge in the RDF graph is represented as
# a (subject, predicate, object) triple
<https://permid.org/1-4295902158>
organization:isIncorporatedIn
<http://sws.geonames.org/6252001/> .
<https://permid.org/1-4295902158>
vcard:organization-name
"Netflix Inc" .
subject
predicate
object
(URI)
subject
predicate
object
(literal)
Literals are “sinks” in the graph. They do not
have any outgoing edges.
RDF supports strings and other XML datatypes
(bool, integer, dates, floats, doubles, …)
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
RDF GRAPH: COLLECTION OF TRIPLES (3)
# Every edge in the RDF graph is represented as
# a (subject, predicate, object) triple
<https://permid.org/1-4295902158>
organization:isIncorporatedIn
<http://sws.geonames.org/6252001/> .
<https://permid.org/1-4295902158>
vcard:organization-name
"Netflix Inc" .
<https://permid.org/1-4295902158>
organization:hasRegisteredPhoneNumber
"13026587581" .
<http://sws.geonames.org/6252001/>
iso:countryCode
”US” .
Same URI used as both subject and object, depending on
whether we represent outgoing vs. incoming RDF edges.
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
THE BENEFIT OF URIs: LINKED DATA
Linking across datasets by referencing globally unique URIs
GeoNames
Wikidata
PermID
Example: PermID (re)uses <http://sws.geonames.org/6252001/>
as a global Identifier for the USA, which is an identifier rooted in GeoNames.
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
THE LINKED OPEN DATA CLOUD
Linking Open Data cloud diagram 2017, by Andrejs Abele, John P. McCrae, Paul Buitelaar,
Anja Jentzsch and Richard Cyganiak. http://lod-cloud.net/ (CC-BY-SA)
Example: SNOMED CT (Systematized Nomenclature of Medicine –Clinical Terms)
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
RDF: A GLIMPSE BEYOND
• Predefined vocabulary URIs with fixed semantics
• rdf:type, rdfs:label, rdfs:Class, rdfs:subClassOf, rdfs:domain, rdfs:range, ...
• Domain-specific vocabularies (e.g. vCard, FOAF, DC, SKOS, etc.)
• Built-in support for advanced modelling
• Lists & other containers
• From triples to quads
• Support for “named graphs” to group triples in distinguished, queryable subgraphs
• Helpful to manage logically separated (fragments of) data sets
• Various standardized serialization formats
• NTriples/NQuads, RDF/XML, Turtle
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
QUERYING RDF USING SPARQL (1)
?name
Variables are
prefixed with “?”.
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
QUERYING RDF USING SPARQL (2)
?property
?property
?property
?node ?node
?node
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
QUERYING RDF USING SPARQL (3)
?org
?phone
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
QUERYING RDF USING SPARQL (4)
?org
?countryCode
?org ?country
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Data from Wikidata
THE POWER OF LINKED DATA
Data from PermID
Data from GeoNames
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
EXTRACTING & TRANSFORMING GRAPHS
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
DATA MANIPULATION VIA SPARQL UPDATE
"1997-08-29"^^xsd:date
vcard:bday
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
SPARQL: A GLIMPSE BEYOND
• Query Language (https://www.w3.org/TR/sparql11-query/)
• Operators: “.” (aka join), OPTIONAL, UNION, MINUS, FILTER, ...
• Aggregations: GROUP BY, HAVING, SUM, MIN, ...
• Property paths for graph traversal
• Solution modifiers: LIMIT, OFFSET, ORDER BY
• SPARQL 1.1 Protocol (https://www.w3.org/TR/sparql11-protocol/)
• Standardized, HTTP based API Endpoint for querying & manipulation
• Supports different output formats via Content Negotiation
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
INTERACTING WITH AMAZON NEPTUNE SPARQL
• HTTP Endpoint based on SPARQL 1.1 Protocol
• W3C Standard:
https://www.w3.org/TR/sparql11-protocol/
• Use HTTP clients (curl, wget)
• Dedicated SPARQL consoles (e.g. RDF4J
console)
• Libraries for various query languages
• RDF4J (Java), dotNetRDF, pysparql
(Python), ...
• APN and third-party tooling providing GUIs on top of
Neptune SPARQL
Example: Interacting with Neptune using the RDF4J console (http://rdf4j.org)
Example: Using APN software to build, maintain, and explore
Knowledge Graphs stored in Amazon Neptune
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
BUILDING APPLICATIONS ON AMAZON
NEPTUNE: PARTNER NETWORK EXAMPLE
Knowledge Graph Management
• SPARQL endpoint UI
• Navigation, exploration,
visualization
• Authoring, ontology and
instance data management
Knowledge Graph Application
Development
• Rapid prototyping of end-user
oriented applications
• Web components for end-user
oriented data interaction
Knowledge Graph Middleware
• “Queries as a Service”
• Interfaces to third party
applications
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
AMAZON NEPTUNE SPARQL TUTORIAL
1. Connect to your instance via SSH,
following the handout guidelines
2. Open http://localhost:2345/ in your
browser and log in
3. Click the “Start Tutorial” link on the
start page
4. Complete sections 2 – 6 of the
tutorial (~30min)
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
10 MIN BREAK!
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Amazon Neptune Gremlin
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
PROPERTY GRAPH
A property graph is a set of vertices and edges with respective properties (i.e. key/value pairs)
• Vertex represents entities/domains
• Edge represents directional relationship
between vertices.
• Each edge has a label that denotes the
type of relationship
• Each vertex & edge has a unique identifier
• Vertex and edges can have properties
• Properties express non-relational information about the vertices and edges
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
PROPERTY GRAPH & APACHE TINKERPOP™
• Structure (graph)
Data model represented by a vertex/edge/property topology
• Process (traversal)
Means by which graph is analyzed
• Apache TinkerPop
Open source graph computing framework
• Gremlin
Graph traversal language used to analyze the graph
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
AMAZON NEPTUNE & APACHE TINKERPOP
• Full compatibility with Tinkerpop Gremlin 3.3.0 (latest version released August 2017)
• Optimized query execution engine for Gremlin query language
• Enhanced Gremlin features
• Optional user supplied IDs
• Multiple labels for vertex
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
GREMLIN: GRAPH TRAVERSAL LANGUAGE
• Domain specific language for graph
• Open source under Apache v2 license
• Open source clients for multiple languages like Java, Python, .NET, Groovy etc.
• Gremlin is a language composed of steps
• A step performs an atomic operation on the data stream
• Steps are chained together to form a traversal
• The output to a previous step is input to the next step that follows
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
MUSIC BRAINZ DATASET
artist FROM_AREA area
work labelPUBLISHING
FROM_AREA
https://musicbrainz.org/
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
QUERY EXPLAINED
Show the place where the writer of song “I Miss You” lives
g.V()
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
QUERY EXPLAINED
Show the place where the writer of song “I Miss You” lives
hasLabel("work")
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
QUERY EXPLAINED
Show the place where the writer of song “I Miss You” lives
has("type", "Song").has("name", "I Miss You")
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
QUERY EXPLAINED
Show the place where the writer of song “I Miss You” lives
in("WRITER")
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
QUERY EXPLAINED
Show the place where the writer of song “I Miss You” lives
out("FROM_AREA")
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
QUERY EXPLAINED
Show the place where the writer of song “I Miss You” lives
Values("name")
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Source: https://github.com/apache/tinkerpop/blob/master/docs/static/images/gremlin-dashboard.png
LET’S TAKE GREMLIN FOR A SPIN!
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
GREMLIN CONSOLE
• Interactive REPL groovy shell
• Uses WebSocket
• Preinstalled on your machines
• Start it up!
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
GREMLIN: SIMPLE FILTERS
Filter on values steps has(),
hasNot(),
where(),
hasLabel()
Filter on elements
steps
dedup(),
limit(),
coin()
Boolean connectives
steps
and(),
or()
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
GREMLIN: PROJECTION QUERY
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
GREMLIN: MUTATION
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
TRY IT OUT!
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Q&A
Michael Schmidt,
Sr. Software Development Engineer - schmdtm@amazon.com
Divij Vaidya,
Software Development Engineer - divijv@amazon.com
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Tom Sawyer Perspectives
Amazon Partner Network Graph
Database Browser for Amazon
Neptune
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Presented by:
Patrick Madden
Principal Solutions Architect
Tom Sawyer Software
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Agenda
• Introduction
• Tom Sawyer Perspectives for Amazon Neptune
• Graph Database Browser Demonstration
• Questions
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Tom Sawyer Software
• Leading provider of software for building graph and
data visualization and analysis applications
• Flagship product—Tom Sawyer Perspectives
• Full-service data visualization vendor
• Well-known for having the best graph layout
technology
• Headquartered in Berkeley, California
• Offices in the United States, Australia, Germany,
Greece, Latvia, and Mexico
• Founded 1992
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Customers
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Tom Sawyer Perspectives
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Standards-based Data Integration
Amazon Neptune
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Tom Sawyer Perspectives Configurations
Graph and Data Visualization SDK Graph Database Browser
Model-Based Engineering Business Processes
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Graph Database Browser for Neptune
• Easy to load data from Amazon S3 without writing Amazon
Neptune load commands
• Load data from many sources
• Automatically detects and displays labeled data types
• Query and data validation
• Browse and visualize connections
• Automated layout and interactive views
• Built-in graph algorithms: Social network analysis, Clustering,
Reachability, Shortest path analysis, Traversals and Flows
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Demonstration
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Q&A
Patrick Madden
pmadden@tomsawyer.com
www.tomsawyer.com
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
THANK YOU!
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
BACKUP SLIDES
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
SETTING UP AMAZON NEPTUNE VIA CONSOLE
https://yukon.aws.amazon.com/neptune?region=us-east-1
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
• Secure deployment in a VPC
• Increased availability through deployment
in two subnets in two different Availability
Zones (AZs)
• Cluster volume always spans three AZ to
provide durable storage
• See https://alpha-docs-
aws.amazon.com/neptune/latest/userguide
/get-started-prerequisites.html for VPC
setup details
AMAZON NEPTUNE: SECURE VPC DEPLOYMENT
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
GET
/sparql/?query=PREFIX%20dc%3A%20%3Chttp%3A%2F%2Fpurl.org%2Fdc%2Felements%2F1.1%2F%3E%20%0ASELECT%20%3Fbook%20%3Fwho%20%0A
WHERE%20%7B%20%3Fbook%20dc%3Acreator%20%3Fwho%20%7D%0A HTTP/1.1 Host: www.example User-agent: my-sparql-client/0.1
HTTP/1.1 200 OK
Date: Fri, 06 May 2005 20:55:12 GMT
...
<?xml version="1.0"?>
<sparql xmlns="http://www.w3.org/2005/sparql-results#">
<head>
<variable name="book"/>
<variable name="who"/>
</head>
<results>
<result>
<binding name="book">
<uri>http://www.example/book/book5</uri>
</binding>
<binding name="who">
<bnode>r29392923r2922</bnode></binding>
</result>
</sparql>
SPARQL Protocol
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
curl --cacert cert.pem -G https://demo-cluster-01:8182/sparql --data-urlencode "query=SELECT * WHERE { ?s ?p ?o } LIMIT
2"
Output:
<?xml version='1.0' encoding='UTF-8'?>
<sparql xmlns='http://www.w3.org/2005/sparql-results#'>
<head>
<variable name='s'/>
<variable name='p'/>
<variable name='o'/>
</head>
<results>
<result>
<binding name='s'>
<uri>http://www.w3.org/1999/02/22-rdf-syntax-ns#type</uri>
</binding>
<binding name='p'>
<uri>http://www.w3.org/1999/02/22-rdf-syntax-ns#type</uri>
</binding>
<binding name='o'>
<uri>http://www.w3.org/2000/01/rdf-schema#Resource</uri>
</binding>
</result>
</results>
</sparql>
SPARQL Queries via curl

More Related Content

What's hot

NEW LAUNCH! Hear how the Pac-12 is using AWS Elemental MediaStore and explore...
NEW LAUNCH! Hear how the Pac-12 is using AWS Elemental MediaStore and explore...NEW LAUNCH! Hear how the Pac-12 is using AWS Elemental MediaStore and explore...
NEW LAUNCH! Hear how the Pac-12 is using AWS Elemental MediaStore and explore...Amazon Web Services
 
CMP216_Use Amazon EC2 Spot Instances to Deploy a Deep Learning Framework on A...
CMP216_Use Amazon EC2 Spot Instances to Deploy a Deep Learning Framework on A...CMP216_Use Amazon EC2 Spot Instances to Deploy a Deep Learning Framework on A...
CMP216_Use Amazon EC2 Spot Instances to Deploy a Deep Learning Framework on A...Amazon Web Services
 
NEW LAUNCH! AWS DeepLens workshop: Building Computer Vision Applications - MC...
NEW LAUNCH! AWS DeepLens workshop: Building Computer Vision Applications - MC...NEW LAUNCH! AWS DeepLens workshop: Building Computer Vision Applications - MC...
NEW LAUNCH! AWS DeepLens workshop: Building Computer Vision Applications - MC...Amazon Web Services
 
MCL303-Deep Learning with Apache MXNet and Gluon
MCL303-Deep Learning with Apache MXNet and GluonMCL303-Deep Learning with Apache MXNet and Gluon
MCL303-Deep Learning with Apache MXNet and GluonAmazon Web Services
 
The IoT Offering Explained in Plain English - IOT201 - re:Invent 2017
The IoT Offering Explained in Plain English - IOT201 - re:Invent 2017The IoT Offering Explained in Plain English - IOT201 - re:Invent 2017
The IoT Offering Explained in Plain English - IOT201 - re:Invent 2017Amazon Web Services
 
NEW LAUNCH! Graph-based Approaches for Cyber Investigative Analytics Using GP...
NEW LAUNCH! Graph-based Approaches for Cyber Investigative Analytics Using GP...NEW LAUNCH! Graph-based Approaches for Cyber Investigative Analytics Using GP...
NEW LAUNCH! Graph-based Approaches for Cyber Investigative Analytics Using GP...Amazon Web Services
 
GPSBUS201-GPS Demystifying Artificial Intelligence
GPSBUS201-GPS Demystifying Artificial IntelligenceGPSBUS201-GPS Demystifying Artificial Intelligence
GPSBUS201-GPS Demystifying Artificial IntelligenceAmazon Web Services
 
LFS301-SAGE Bionetworks, Digital Mammography DREAM Challenge and How AWS Enab...
LFS301-SAGE Bionetworks, Digital Mammography DREAM Challenge and How AWS Enab...LFS301-SAGE Bionetworks, Digital Mammography DREAM Challenge and How AWS Enab...
LFS301-SAGE Bionetworks, Digital Mammography DREAM Challenge and How AWS Enab...Amazon Web Services
 
NEW LAUNCH! Amazon Neptune Overview and Customer Use Cases - DAT319 - re:Inve...
NEW LAUNCH! Amazon Neptune Overview and Customer Use Cases - DAT319 - re:Inve...NEW LAUNCH! Amazon Neptune Overview and Customer Use Cases - DAT319 - re:Inve...
NEW LAUNCH! Amazon Neptune Overview and Customer Use Cases - DAT319 - re:Inve...Amazon Web Services
 
GPSBUS223-Starting Out with the AWS Partner Network
GPSBUS223-Starting Out with the AWS Partner NetworkGPSBUS223-Starting Out with the AWS Partner Network
GPSBUS223-Starting Out with the AWS Partner NetworkAmazon Web Services
 
RET303_Drive Warehouse Efficiencies with the Same AWS IoT Technology that Pow...
RET303_Drive Warehouse Efficiencies with the Same AWS IoT Technology that Pow...RET303_Drive Warehouse Efficiencies with the Same AWS IoT Technology that Pow...
RET303_Drive Warehouse Efficiencies with the Same AWS IoT Technology that Pow...Amazon Web Services
 
NEW LAUNCH! AWS Serverless Application Repository - SRV215 - re:Invent 2017
NEW LAUNCH! AWS Serverless Application Repository - SRV215 - re:Invent 2017NEW LAUNCH! AWS Serverless Application Repository - SRV215 - re:Invent 2017
NEW LAUNCH! AWS Serverless Application Repository - SRV215 - re:Invent 2017Amazon Web Services
 
RET305-Turbo Charge Your E-Commerce Site wAmazon Cache and Search Solutions.pdf
RET305-Turbo Charge Your E-Commerce Site wAmazon Cache and Search Solutions.pdfRET305-Turbo Charge Your E-Commerce Site wAmazon Cache and Search Solutions.pdf
RET305-Turbo Charge Your E-Commerce Site wAmazon Cache and Search Solutions.pdfAmazon Web Services
 
RET301-Build Single Customer View across Multiple Retail Channels using AWS S...
RET301-Build Single Customer View across Multiple Retail Channels using AWS S...RET301-Build Single Customer View across Multiple Retail Channels using AWS S...
RET301-Build Single Customer View across Multiple Retail Channels using AWS S...Amazon Web Services
 
STG314-Case Study Learn How HERE Uses JFrog Artifactory w Amazon EFS Support ...
STG314-Case Study Learn How HERE Uses JFrog Artifactory w Amazon EFS Support ...STG314-Case Study Learn How HERE Uses JFrog Artifactory w Amazon EFS Support ...
STG314-Case Study Learn How HERE Uses JFrog Artifactory w Amazon EFS Support ...Amazon Web Services
 
NEW LAUNCH! Infinitely Scalable Machine Learning Algorithms with Amazon AI - ...
NEW LAUNCH! Infinitely Scalable Machine Learning Algorithms with Amazon AI - ...NEW LAUNCH! Infinitely Scalable Machine Learning Algorithms with Amazon AI - ...
NEW LAUNCH! Infinitely Scalable Machine Learning Algorithms with Amazon AI - ...Amazon Web Services
 
TLC304-At the Cutting Edge AWS IOT and Greengrass for Multi-Access Edge Compu...
TLC304-At the Cutting Edge AWS IOT and Greengrass for Multi-Access Edge Compu...TLC304-At the Cutting Edge AWS IOT and Greengrass for Multi-Access Edge Compu...
TLC304-At the Cutting Edge AWS IOT and Greengrass for Multi-Access Edge Compu...Amazon Web Services
 
Build a Website & Mobile App for your first 10 million users
Build a Website & Mobile App for your first 10 million usersBuild a Website & Mobile App for your first 10 million users
Build a Website & Mobile App for your first 10 million usersAmazon Web Services
 
GPSBUS211-Edge Intelligence for IoT Applications
GPSBUS211-Edge Intelligence for IoT ApplicationsGPSBUS211-Edge Intelligence for IoT Applications
GPSBUS211-Edge Intelligence for IoT ApplicationsAmazon Web Services
 

What's hot (20)

NEW LAUNCH! Hear how the Pac-12 is using AWS Elemental MediaStore and explore...
NEW LAUNCH! Hear how the Pac-12 is using AWS Elemental MediaStore and explore...NEW LAUNCH! Hear how the Pac-12 is using AWS Elemental MediaStore and explore...
NEW LAUNCH! Hear how the Pac-12 is using AWS Elemental MediaStore and explore...
 
CMP216_Use Amazon EC2 Spot Instances to Deploy a Deep Learning Framework on A...
CMP216_Use Amazon EC2 Spot Instances to Deploy a Deep Learning Framework on A...CMP216_Use Amazon EC2 Spot Instances to Deploy a Deep Learning Framework on A...
CMP216_Use Amazon EC2 Spot Instances to Deploy a Deep Learning Framework on A...
 
ALX328_Smart Devices Everywhere
ALX328_Smart Devices EverywhereALX328_Smart Devices Everywhere
ALX328_Smart Devices Everywhere
 
NEW LAUNCH! AWS DeepLens workshop: Building Computer Vision Applications - MC...
NEW LAUNCH! AWS DeepLens workshop: Building Computer Vision Applications - MC...NEW LAUNCH! AWS DeepLens workshop: Building Computer Vision Applications - MC...
NEW LAUNCH! AWS DeepLens workshop: Building Computer Vision Applications - MC...
 
MCL303-Deep Learning with Apache MXNet and Gluon
MCL303-Deep Learning with Apache MXNet and GluonMCL303-Deep Learning with Apache MXNet and Gluon
MCL303-Deep Learning with Apache MXNet and Gluon
 
The IoT Offering Explained in Plain English - IOT201 - re:Invent 2017
The IoT Offering Explained in Plain English - IOT201 - re:Invent 2017The IoT Offering Explained in Plain English - IOT201 - re:Invent 2017
The IoT Offering Explained in Plain English - IOT201 - re:Invent 2017
 
NEW LAUNCH! Graph-based Approaches for Cyber Investigative Analytics Using GP...
NEW LAUNCH! Graph-based Approaches for Cyber Investigative Analytics Using GP...NEW LAUNCH! Graph-based Approaches for Cyber Investigative Analytics Using GP...
NEW LAUNCH! Graph-based Approaches for Cyber Investigative Analytics Using GP...
 
GPSBUS201-GPS Demystifying Artificial Intelligence
GPSBUS201-GPS Demystifying Artificial IntelligenceGPSBUS201-GPS Demystifying Artificial Intelligence
GPSBUS201-GPS Demystifying Artificial Intelligence
 
LFS301-SAGE Bionetworks, Digital Mammography DREAM Challenge and How AWS Enab...
LFS301-SAGE Bionetworks, Digital Mammography DREAM Challenge and How AWS Enab...LFS301-SAGE Bionetworks, Digital Mammography DREAM Challenge and How AWS Enab...
LFS301-SAGE Bionetworks, Digital Mammography DREAM Challenge and How AWS Enab...
 
NEW LAUNCH! Amazon Neptune Overview and Customer Use Cases - DAT319 - re:Inve...
NEW LAUNCH! Amazon Neptune Overview and Customer Use Cases - DAT319 - re:Inve...NEW LAUNCH! Amazon Neptune Overview and Customer Use Cases - DAT319 - re:Inve...
NEW LAUNCH! Amazon Neptune Overview and Customer Use Cases - DAT319 - re:Inve...
 
GPSBUS223-Starting Out with the AWS Partner Network
GPSBUS223-Starting Out with the AWS Partner NetworkGPSBUS223-Starting Out with the AWS Partner Network
GPSBUS223-Starting Out with the AWS Partner Network
 
RET303_Drive Warehouse Efficiencies with the Same AWS IoT Technology that Pow...
RET303_Drive Warehouse Efficiencies with the Same AWS IoT Technology that Pow...RET303_Drive Warehouse Efficiencies with the Same AWS IoT Technology that Pow...
RET303_Drive Warehouse Efficiencies with the Same AWS IoT Technology that Pow...
 
NEW LAUNCH! AWS Serverless Application Repository - SRV215 - re:Invent 2017
NEW LAUNCH! AWS Serverless Application Repository - SRV215 - re:Invent 2017NEW LAUNCH! AWS Serverless Application Repository - SRV215 - re:Invent 2017
NEW LAUNCH! AWS Serverless Application Repository - SRV215 - re:Invent 2017
 
RET305-Turbo Charge Your E-Commerce Site wAmazon Cache and Search Solutions.pdf
RET305-Turbo Charge Your E-Commerce Site wAmazon Cache and Search Solutions.pdfRET305-Turbo Charge Your E-Commerce Site wAmazon Cache and Search Solutions.pdf
RET305-Turbo Charge Your E-Commerce Site wAmazon Cache and Search Solutions.pdf
 
RET301-Build Single Customer View across Multiple Retail Channels using AWS S...
RET301-Build Single Customer View across Multiple Retail Channels using AWS S...RET301-Build Single Customer View across Multiple Retail Channels using AWS S...
RET301-Build Single Customer View across Multiple Retail Channels using AWS S...
 
STG314-Case Study Learn How HERE Uses JFrog Artifactory w Amazon EFS Support ...
STG314-Case Study Learn How HERE Uses JFrog Artifactory w Amazon EFS Support ...STG314-Case Study Learn How HERE Uses JFrog Artifactory w Amazon EFS Support ...
STG314-Case Study Learn How HERE Uses JFrog Artifactory w Amazon EFS Support ...
 
NEW LAUNCH! Infinitely Scalable Machine Learning Algorithms with Amazon AI - ...
NEW LAUNCH! Infinitely Scalable Machine Learning Algorithms with Amazon AI - ...NEW LAUNCH! Infinitely Scalable Machine Learning Algorithms with Amazon AI - ...
NEW LAUNCH! Infinitely Scalable Machine Learning Algorithms with Amazon AI - ...
 
TLC304-At the Cutting Edge AWS IOT and Greengrass for Multi-Access Edge Compu...
TLC304-At the Cutting Edge AWS IOT and Greengrass for Multi-Access Edge Compu...TLC304-At the Cutting Edge AWS IOT and Greengrass for Multi-Access Edge Compu...
TLC304-At the Cutting Edge AWS IOT and Greengrass for Multi-Access Edge Compu...
 
Build a Website & Mobile App for your first 10 million users
Build a Website & Mobile App for your first 10 million usersBuild a Website & Mobile App for your first 10 million users
Build a Website & Mobile App for your first 10 million users
 
GPSBUS211-Edge Intelligence for IoT Applications
GPSBUS211-Edge Intelligence for IoT ApplicationsGPSBUS211-Edge Intelligence for IoT Applications
GPSBUS211-Edge Intelligence for IoT Applications
 

Similar to NEW LAUNCH! How to build graph applications with SPARQL and Gremlin using Amazon Neptune - DAT342 - re:Invent 2017

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
 
Hands-on Lab- Using Graph Databases
Hands-on Lab- Using Graph Databases Hands-on Lab- Using Graph Databases
Hands-on Lab- Using Graph Databases Amazon Web Services
 
Applying large scale text analytics with graph databases
Applying large scale text analytics with graph databasesApplying large scale text analytics with graph databases
Applying large scale text analytics with graph databasesData Ninja API
 
Massively Parallel Data Processing with PyWren and AWS Lambda - SRV424 - re:I...
Massively Parallel Data Processing with PyWren and AWS Lambda - SRV424 - re:I...Massively Parallel Data Processing with PyWren and AWS Lambda - SRV424 - re:I...
Massively Parallel Data Processing with PyWren and AWS Lambda - SRV424 - re:I...Amazon Web Services
 
Migrating your traditional Data Warehouse to a Modern Data Lake
Migrating your traditional Data Warehouse to a Modern Data LakeMigrating your traditional Data Warehouse to a Modern Data Lake
Migrating your traditional Data Warehouse to a Modern Data LakeAmazon Web Services
 
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
 
GraphTech Ecosystem - part 1: Graph Databases
GraphTech Ecosystem - part 1: Graph DatabasesGraphTech Ecosystem - part 1: Graph Databases
GraphTech Ecosystem - part 1: Graph DatabasesLinkurious
 
Building High Performance Apps with In-memory Data
Building High Performance Apps with In-memory DataBuilding High Performance Apps with In-memory Data
Building High Performance Apps with In-memory DataAmazon Web Services
 
What’s the big deal with Graph Databases?
What’s the big deal with Graph Databases?What’s the big deal with Graph Databases?
What’s the big deal with Graph Databases?Daniel Zivkovic
 
STG206_Big Data Data Lakes and Data Oceans
STG206_Big Data Data Lakes and Data OceansSTG206_Big Data Data Lakes and Data Oceans
STG206_Big Data Data Lakes and Data OceansAmazon Web Services
 
FINRA's Managed Data Lake: Next-Gen Analytics in the Cloud - ENT328 - re:Inve...
FINRA's Managed Data Lake: Next-Gen Analytics in the Cloud - ENT328 - re:Inve...FINRA's Managed Data Lake: Next-Gen Analytics in the Cloud - ENT328 - re:Inve...
FINRA's Managed Data Lake: Next-Gen Analytics in the Cloud - ENT328 - re:Inve...Amazon Web Services
 
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
 
Deep Dive on Amazon Athena - AWS Online Tech Talks
Deep Dive on Amazon Athena - AWS Online Tech TalksDeep Dive on Amazon Athena - AWS Online Tech Talks
Deep Dive on Amazon Athena - AWS Online Tech TalksAmazon Web Services
 
Applying AWS Purpose-Built Database Strategy - SRV307 - Anaheim AWS Summit
Applying AWS Purpose-Built Database Strategy - SRV307 - Anaheim AWS SummitApplying AWS Purpose-Built Database Strategy - SRV307 - Anaheim AWS Summit
Applying AWS Purpose-Built Database Strategy - SRV307 - Anaheim AWS SummitAmazon Web Services
 
Applying AWS Purpose-Built Database Strategy - SRV307 - Toronto AWS Summit
Applying AWS Purpose-Built Database Strategy - SRV307 - Toronto AWS SummitApplying AWS Purpose-Built Database Strategy - SRV307 - Toronto AWS Summit
Applying AWS Purpose-Built Database Strategy - SRV307 - Toronto AWS SummitAmazon Web Services
 
CTD403_Supercharge Your Websites with the Power of Lambda@Edge
CTD403_Supercharge Your Websites with the Power of Lambda@EdgeCTD403_Supercharge Your Websites with the Power of Lambda@Edge
CTD403_Supercharge Your Websites with the Power of Lambda@EdgeAmazon Web Services
 

Similar to NEW LAUNCH! How to build graph applications with SPARQL and Gremlin using Amazon Neptune - DAT342 - re:Invent 2017 (20)

Using Graph Databases
Using Graph DatabasesUsing Graph Databases
Using Graph Databases
 
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
 
Using Graph Databases
Using Graph DatabasesUsing Graph Databases
Using Graph Databases
 
Hands-on Lab- Using Graph Databases
Hands-on Lab- Using Graph Databases Hands-on Lab- Using Graph Databases
Hands-on Lab- Using Graph Databases
 
Applying large scale text analytics with graph databases
Applying large scale text analytics with graph databasesApplying large scale text analytics with graph databases
Applying large scale text analytics with graph databases
 
Massively Parallel Data Processing with PyWren and AWS Lambda - SRV424 - re:I...
Massively Parallel Data Processing with PyWren and AWS Lambda - SRV424 - re:I...Massively Parallel Data Processing with PyWren and AWS Lambda - SRV424 - re:I...
Massively Parallel Data Processing with PyWren and AWS Lambda - SRV424 - re:I...
 
Neptune webinar AWS
Neptune webinar AWS Neptune webinar AWS
Neptune webinar AWS
 
Migrating your traditional Data Warehouse to a Modern Data Lake
Migrating your traditional Data Warehouse to a Modern Data LakeMigrating your traditional Data Warehouse to a Modern Data Lake
Migrating your traditional Data Warehouse to a Modern Data Lake
 
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
 
GraphTech Ecosystem - part 1: Graph Databases
GraphTech Ecosystem - part 1: Graph DatabasesGraphTech Ecosystem - part 1: Graph Databases
GraphTech Ecosystem - part 1: Graph Databases
 
Building High Performance Apps with In-memory Data
Building High Performance Apps with In-memory DataBuilding High Performance Apps with In-memory Data
Building High Performance Apps with In-memory Data
 
What’s the big deal with Graph Databases?
What’s the big deal with Graph Databases?What’s the big deal with Graph Databases?
What’s the big deal with Graph Databases?
 
STG206_Big Data Data Lakes and Data Oceans
STG206_Big Data Data Lakes and Data OceansSTG206_Big Data Data Lakes and Data Oceans
STG206_Big Data Data Lakes and Data Oceans
 
FINRA's Managed Data Lake: Next-Gen Analytics in the Cloud - ENT328 - re:Inve...
FINRA's Managed Data Lake: Next-Gen Analytics in the Cloud - ENT328 - re:Inve...FINRA's Managed Data Lake: Next-Gen Analytics in the Cloud - ENT328 - re:Inve...
FINRA's Managed Data Lake: Next-Gen Analytics in the Cloud - ENT328 - re:Inve...
 
STG401_This Is My Architecture
STG401_This Is My ArchitectureSTG401_This Is My Architecture
STG401_This Is My Architecture
 
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
 
Deep Dive on Amazon Athena - AWS Online Tech Talks
Deep Dive on Amazon Athena - AWS Online Tech TalksDeep Dive on Amazon Athena - AWS Online Tech Talks
Deep Dive on Amazon Athena - AWS Online Tech Talks
 
Applying AWS Purpose-Built Database Strategy - SRV307 - Anaheim AWS Summit
Applying AWS Purpose-Built Database Strategy - SRV307 - Anaheim AWS SummitApplying AWS Purpose-Built Database Strategy - SRV307 - Anaheim AWS Summit
Applying AWS Purpose-Built Database Strategy - SRV307 - Anaheim AWS Summit
 
Applying AWS Purpose-Built Database Strategy - SRV307 - Toronto AWS Summit
Applying AWS Purpose-Built Database Strategy - SRV307 - Toronto AWS SummitApplying AWS Purpose-Built Database Strategy - SRV307 - Toronto AWS Summit
Applying AWS Purpose-Built Database Strategy - SRV307 - Toronto AWS Summit
 
CTD403_Supercharge Your Websites with the Power of Lambda@Edge
CTD403_Supercharge Your Websites with the Power of Lambda@EdgeCTD403_Supercharge Your Websites with the Power of Lambda@Edge
CTD403_Supercharge Your Websites with the Power of Lambda@Edge
 

More from 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
 

More from 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
 

NEW LAUNCH! How to build graph applications with SPARQL and Gremlin using Amazon Neptune - DAT342 - re:Invent 2017

  • 1. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. AWS re:INVENT Hands on with Amazon Neptune M i c h a e l S c h m i d t ( S r S o f t w a r e D e v e l o p m e n t E n g i n e e r , A m a z o n N e p t u n e ) D i v i j V a i d y a ( S o f t w a r e D e v e l o p m e n t E n g i n e e r , A m a z o n N e p t u n e ) N o v e m b e r 2 0 1 7 D A T 3 4 2
  • 2. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. TUTORIAL OUTLINE • Graph Databases • Graph: Concept & Use Cases • Hands on: Exploring a Data Graph • Introduction to Amazon Neptune: Architecture & Feature Overview • Amazon Neptune SPARQL • Introduction to RDF & SPARQL • Hands on: Building Applications on RDF Graphs using SPARQL • Amazon Neptune Gremlin • Introduction to Property Graphs & Gremlin • Hands on: Querying and Manipulating Property Graphs using Gremlin • Q&A
  • 3. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. HIGHLY CONNECTED DATA Retail Fraud DetectionRestaurant RecommendationsSocial Networks
  • 4. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. USE C ASES FOR HI GHLY C ONNEC T ED DAT A Social Networking Life Sciences Network & IT OperationsFraud Detection Recommendations Knowledge Graphs
  • 5. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. A G RAPH DATABASE IS OPTIMIZ E D F OR E F F ICIE NT STORAG E AND RE TRIE VAL OF HIG HL Y CONNE CTE D DATA
  • 6. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. EXPLORING A DATA GRAPH 1. Connect to your instance via SSH, following the handout guidelines 2. Open http://localhost:2345/ in your browser and log in 3. Click the “Start Tutorial” link on the start page 4. Familiarize yourself with the data by following the instructions in Section 1, 1.1 EXERCISE – Exploring the data graph (~10min)
  • 7. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Open Source Apache TinkerPop Gremlin Traversal Language W3C Standard SPARQL Query Language R E S O U R C E D E S C R I P T I O N F R A M E W O R K ( R D F ) P R O P E R T Y G R A P H LEADING GRAPH MODELS AND FRAMEWORKS
  • 8. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. AMAZON NEPTUNE F u l l y m a n a g e d g r a p h d a t a b a s e FAST RELIABLE OPEN Query billions of relationships with millisecond latency 6 replicas of your data across 3 AZs with full backup and restore Build powerful queries easily with Gremlin and SPARQL Supports Apache TinkerPop & W3C RDF graph models EASY
  • 9. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. AMAZON NEPTUNE HIGH LEVEL ARCHITECTURE
  • 10. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. AMAZON NEPTUNE PARTNERS AND ECOSYSTEM . . . and more. Clients compatible with the open source Apache TinkerPop project. Clients compatible with the W3C Semantic Web RDF and SPARQL standards.
  • 11. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Neptune SPARQL
  • 12. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. RDF GRAPHS
  • 13. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. URIs AS GLOBALLY UNIQUE IDENTIFIERS URIs to identify nodes and edge labels <https://permid.org/1-4295902158> => identifies the company “Netflix Inc” organization:isIncorporatedIn1 => identifies the relationship “is incorporated in” <http://sws.geonames.org/6252001/> => identifies country “USA” 1 This is a shortcut for <http://permid.org/ontology/organization/isIncorporatedIn>. RDF uses XML prefix notation, where the prefix organization is a shortcut for <http://permid.org/ontology/organization/>.
  • 14. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. RDF GRAPH: COLLECTION OF TRIPLES (1) # Every edge in the RDF graph is represented as # a (subject, predicate, object) triple <https://permid.org/1-4295902158> organization:isIncorporatedIn <http://sws.geonames.org/6252001/> . subject predicate object
  • 15. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. RDF GRAPH: COLLECTION OF TRIPLES (2) # Every edge in the RDF graph is represented as # a (subject, predicate, object) triple <https://permid.org/1-4295902158> organization:isIncorporatedIn <http://sws.geonames.org/6252001/> . <https://permid.org/1-4295902158> vcard:organization-name "Netflix Inc" . subject predicate object (URI) subject predicate object (literal) Literals are “sinks” in the graph. They do not have any outgoing edges. RDF supports strings and other XML datatypes (bool, integer, dates, floats, doubles, …)
  • 16. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. RDF GRAPH: COLLECTION OF TRIPLES (3) # Every edge in the RDF graph is represented as # a (subject, predicate, object) triple <https://permid.org/1-4295902158> organization:isIncorporatedIn <http://sws.geonames.org/6252001/> . <https://permid.org/1-4295902158> vcard:organization-name "Netflix Inc" . <https://permid.org/1-4295902158> organization:hasRegisteredPhoneNumber "13026587581" . <http://sws.geonames.org/6252001/> iso:countryCode ”US” . Same URI used as both subject and object, depending on whether we represent outgoing vs. incoming RDF edges.
  • 17. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. THE BENEFIT OF URIs: LINKED DATA Linking across datasets by referencing globally unique URIs GeoNames Wikidata PermID Example: PermID (re)uses <http://sws.geonames.org/6252001/> as a global Identifier for the USA, which is an identifier rooted in GeoNames.
  • 18. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. THE LINKED OPEN DATA CLOUD Linking Open Data cloud diagram 2017, by Andrejs Abele, John P. McCrae, Paul Buitelaar, Anja Jentzsch and Richard Cyganiak. http://lod-cloud.net/ (CC-BY-SA) Example: SNOMED CT (Systematized Nomenclature of Medicine –Clinical Terms)
  • 19. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. RDF: A GLIMPSE BEYOND • Predefined vocabulary URIs with fixed semantics • rdf:type, rdfs:label, rdfs:Class, rdfs:subClassOf, rdfs:domain, rdfs:range, ... • Domain-specific vocabularies (e.g. vCard, FOAF, DC, SKOS, etc.) • Built-in support for advanced modelling • Lists & other containers • From triples to quads • Support for “named graphs” to group triples in distinguished, queryable subgraphs • Helpful to manage logically separated (fragments of) data sets • Various standardized serialization formats • NTriples/NQuads, RDF/XML, Turtle
  • 20. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. QUERYING RDF USING SPARQL (1) ?name Variables are prefixed with “?”.
  • 21. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. QUERYING RDF USING SPARQL (2) ?property ?property ?property ?node ?node ?node
  • 22. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. QUERYING RDF USING SPARQL (3) ?org ?phone
  • 23. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. QUERYING RDF USING SPARQL (4) ?org ?countryCode ?org ?country
  • 24. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Data from Wikidata THE POWER OF LINKED DATA Data from PermID Data from GeoNames
  • 25. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. EXTRACTING & TRANSFORMING GRAPHS
  • 26. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. DATA MANIPULATION VIA SPARQL UPDATE "1997-08-29"^^xsd:date vcard:bday
  • 27. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. SPARQL: A GLIMPSE BEYOND • Query Language (https://www.w3.org/TR/sparql11-query/) • Operators: “.” (aka join), OPTIONAL, UNION, MINUS, FILTER, ... • Aggregations: GROUP BY, HAVING, SUM, MIN, ... • Property paths for graph traversal • Solution modifiers: LIMIT, OFFSET, ORDER BY • SPARQL 1.1 Protocol (https://www.w3.org/TR/sparql11-protocol/) • Standardized, HTTP based API Endpoint for querying & manipulation • Supports different output formats via Content Negotiation
  • 28. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. INTERACTING WITH AMAZON NEPTUNE SPARQL • HTTP Endpoint based on SPARQL 1.1 Protocol • W3C Standard: https://www.w3.org/TR/sparql11-protocol/ • Use HTTP clients (curl, wget) • Dedicated SPARQL consoles (e.g. RDF4J console) • Libraries for various query languages • RDF4J (Java), dotNetRDF, pysparql (Python), ... • APN and third-party tooling providing GUIs on top of Neptune SPARQL Example: Interacting with Neptune using the RDF4J console (http://rdf4j.org) Example: Using APN software to build, maintain, and explore Knowledge Graphs stored in Amazon Neptune
  • 29. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. BUILDING APPLICATIONS ON AMAZON NEPTUNE: PARTNER NETWORK EXAMPLE Knowledge Graph Management • SPARQL endpoint UI • Navigation, exploration, visualization • Authoring, ontology and instance data management Knowledge Graph Application Development • Rapid prototyping of end-user oriented applications • Web components for end-user oriented data interaction Knowledge Graph Middleware • “Queries as a Service” • Interfaces to third party applications
  • 30. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. AMAZON NEPTUNE SPARQL TUTORIAL 1. Connect to your instance via SSH, following the handout guidelines 2. Open http://localhost:2345/ in your browser and log in 3. Click the “Start Tutorial” link on the start page 4. Complete sections 2 – 6 of the tutorial (~30min)
  • 31. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 10 MIN BREAK!
  • 32. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Neptune Gremlin
  • 33. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. PROPERTY GRAPH A property graph is a set of vertices and edges with respective properties (i.e. key/value pairs) • Vertex represents entities/domains • Edge represents directional relationship between vertices. • Each edge has a label that denotes the type of relationship • Each vertex & edge has a unique identifier • Vertex and edges can have properties • Properties express non-relational information about the vertices and edges
  • 34. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. PROPERTY GRAPH & APACHE TINKERPOP™ • Structure (graph) Data model represented by a vertex/edge/property topology • Process (traversal) Means by which graph is analyzed • Apache TinkerPop Open source graph computing framework • Gremlin Graph traversal language used to analyze the graph
  • 35. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. AMAZON NEPTUNE & APACHE TINKERPOP • Full compatibility with Tinkerpop Gremlin 3.3.0 (latest version released August 2017) • Optimized query execution engine for Gremlin query language • Enhanced Gremlin features • Optional user supplied IDs • Multiple labels for vertex
  • 36. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. GREMLIN: GRAPH TRAVERSAL LANGUAGE • Domain specific language for graph • Open source under Apache v2 license • Open source clients for multiple languages like Java, Python, .NET, Groovy etc. • Gremlin is a language composed of steps • A step performs an atomic operation on the data stream • Steps are chained together to form a traversal • The output to a previous step is input to the next step that follows
  • 37. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. MUSIC BRAINZ DATASET artist FROM_AREA area work labelPUBLISHING FROM_AREA https://musicbrainz.org/
  • 38. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. QUERY EXPLAINED Show the place where the writer of song “I Miss You” lives g.V()
  • 39. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. QUERY EXPLAINED Show the place where the writer of song “I Miss You” lives hasLabel("work")
  • 40. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. QUERY EXPLAINED Show the place where the writer of song “I Miss You” lives has("type", "Song").has("name", "I Miss You")
  • 41. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. QUERY EXPLAINED Show the place where the writer of song “I Miss You” lives in("WRITER")
  • 42. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. QUERY EXPLAINED Show the place where the writer of song “I Miss You” lives out("FROM_AREA")
  • 43. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. QUERY EXPLAINED Show the place where the writer of song “I Miss You” lives Values("name")
  • 44. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Source: https://github.com/apache/tinkerpop/blob/master/docs/static/images/gremlin-dashboard.png LET’S TAKE GREMLIN FOR A SPIN!
  • 45. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. GREMLIN CONSOLE • Interactive REPL groovy shell • Uses WebSocket • Preinstalled on your machines • Start it up!
  • 46. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. GREMLIN: SIMPLE FILTERS Filter on values steps has(), hasNot(), where(), hasLabel() Filter on elements steps dedup(), limit(), coin() Boolean connectives steps and(), or()
  • 47. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. GREMLIN: PROJECTION QUERY
  • 48. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. GREMLIN: MUTATION
  • 49. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. TRY IT OUT!
  • 50. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Q&A Michael Schmidt, Sr. Software Development Engineer - schmdtm@amazon.com Divij Vaidya, Software Development Engineer - divijv@amazon.com
  • 51. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Tom Sawyer Perspectives Amazon Partner Network Graph Database Browser for Amazon Neptune
  • 52. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Presented by: Patrick Madden Principal Solutions Architect Tom Sawyer Software
  • 53. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Agenda • Introduction • Tom Sawyer Perspectives for Amazon Neptune • Graph Database Browser Demonstration • Questions
  • 54. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Tom Sawyer Software • Leading provider of software for building graph and data visualization and analysis applications • Flagship product—Tom Sawyer Perspectives • Full-service data visualization vendor • Well-known for having the best graph layout technology • Headquartered in Berkeley, California • Offices in the United States, Australia, Germany, Greece, Latvia, and Mexico • Founded 1992
  • 55. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Customers
  • 56. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Tom Sawyer Perspectives
  • 57. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Standards-based Data Integration Amazon Neptune
  • 58. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Tom Sawyer Perspectives Configurations Graph and Data Visualization SDK Graph Database Browser Model-Based Engineering Business Processes
  • 59. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Graph Database Browser for Neptune • Easy to load data from Amazon S3 without writing Amazon Neptune load commands • Load data from many sources • Automatically detects and displays labeled data types • Query and data validation • Browse and visualize connections • Automated layout and interactive views • Built-in graph algorithms: Social network analysis, Clustering, Reachability, Shortest path analysis, Traversals and Flows
  • 60. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Demonstration
  • 61. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Q&A Patrick Madden pmadden@tomsawyer.com www.tomsawyer.com
  • 62. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. THANK YOU!
  • 63. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. BACKUP SLIDES
  • 64. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. SETTING UP AMAZON NEPTUNE VIA CONSOLE https://yukon.aws.amazon.com/neptune?region=us-east-1
  • 65. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. • Secure deployment in a VPC • Increased availability through deployment in two subnets in two different Availability Zones (AZs) • Cluster volume always spans three AZ to provide durable storage • See https://alpha-docs- aws.amazon.com/neptune/latest/userguide /get-started-prerequisites.html for VPC setup details AMAZON NEPTUNE: SECURE VPC DEPLOYMENT
  • 66. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. GET /sparql/?query=PREFIX%20dc%3A%20%3Chttp%3A%2F%2Fpurl.org%2Fdc%2Felements%2F1.1%2F%3E%20%0ASELECT%20%3Fbook%20%3Fwho%20%0A WHERE%20%7B%20%3Fbook%20dc%3Acreator%20%3Fwho%20%7D%0A HTTP/1.1 Host: www.example User-agent: my-sparql-client/0.1 HTTP/1.1 200 OK Date: Fri, 06 May 2005 20:55:12 GMT ... <?xml version="1.0"?> <sparql xmlns="http://www.w3.org/2005/sparql-results#"> <head> <variable name="book"/> <variable name="who"/> </head> <results> <result> <binding name="book"> <uri>http://www.example/book/book5</uri> </binding> <binding name="who"> <bnode>r29392923r2922</bnode></binding> </result> </sparql> SPARQL Protocol
  • 67. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. curl --cacert cert.pem -G https://demo-cluster-01:8182/sparql --data-urlencode "query=SELECT * WHERE { ?s ?p ?o } LIMIT 2" Output: <?xml version='1.0' encoding='UTF-8'?> <sparql xmlns='http://www.w3.org/2005/sparql-results#'> <head> <variable name='s'/> <variable name='p'/> <variable name='o'/> </head> <results> <result> <binding name='s'> <uri>http://www.w3.org/1999/02/22-rdf-syntax-ns#type</uri> </binding> <binding name='p'> <uri>http://www.w3.org/1999/02/22-rdf-syntax-ns#type</uri> </binding> <binding name='o'> <uri>http://www.w3.org/2000/01/rdf-schema#Resource</uri> </binding> </result> </results> </sparql> SPARQL Queries via curl