SlideShare a Scribd company logo
1 of 20
Download to read offline
Find your data
Use GraphDB capabilities in
XPages applications
8th Sutol Conference, November 2016
8th Sutol Conference, November 2016
What’s up in the next 45 mins?
• Who am I?
• What are GraphDBs?
• Famous GraphDBs and Use Cases
• Terminology
• Introduction to GraphNSF in ODA
• Implementation & Data Modelling
• Demo
8th Sutol Conference, November 2016
Oliver Busse
• Back again! 2nd SUTOL :-)
• Bleeding yellow since R4.5
• Software Architect at We4IT
• aveedo® Application Framework
• ScanAlyzr® Application Metrics
• OpenNTF Board Member
• NotesIn9 Producer
• IBM Champion 2015 + 2016
• @zeromancer1972
• www.oliverbusse.com
• www.we4it.com
8th Sutol Conference, November 2016
The Graph Principle
8th Sutol Conference, November 2016
GraphDB - Definition
A graph database, also called a graph-oriented
database, is a type of NoSQL database that
uses graph theory to store, map and query
relationships.
A graph database is essentially a collection of
vertices and edges. Each vertex represents an
entity (such as a person or business) and each
edge represents a connection or relationship
between two vertices.
http://whatis.techtarget.com/definition/graph-database
8th Sutol Conference, November 2016
Some GraphDBs and Frameworks
• Neo4J
• OrientDB
• Titan/Cassandra
• Tinkerpop (used here in ODA)
• Apache Lucene / Solr
8th Sutol Conference, November 2016
Who’s using GraphDBs?
• Amazon
• Google/Youtube
• Facebook, Twitter
• IBM Watson Workspace
• almost every application that offers something like
• "summarize", "assist"
• "related posts" (blogs)
• "others also bought this" (shops)
• collect relations and "likes"
• …
8th Sutol Conference, November 2016
GraphDB - Terminology
• Vertices (singular: Vertex)
• has Properties (Key-Value pairs)
• sometimes referred to as Nodes or Elements
• Edges
• Connections, Relations between Vertices
• ElementStores
• for us: NSF databases
• MetaverseIDs (GraphNSF)
• Replica + UNID (hashed)
• internal use only (don‘t care about them)
8th Sutol Conference, November 2016
Introducing:
GraphNSF
8th Sutol Conference, November 2016
GraphNSF is part of ODA
• Introduced and maintained by
• Nathan T. Freeman
• Paul S. Withers
• Uses Tinkerpop framework
• Under heavy development since ODA 2.0
• Current version is ODA 3.0
• GraphNSF is transactional
8th Sutol Conference, November 2016
GraphNSF = GraphDB in Domino
• Vertices and Edges are stored as Documents
• The data container is a NSF
• The ElementStore defines the file path to the
NSF
• An ElementStore can hold different types of
Vertices
• Usually you create one ElementStore for
each Vertex type
8th Sutol Conference, November 2016
Implementation & Data Modeling
• Vertices are defined as Interface classes
• Fields are defined as properties with Getter
and Setter
• Methods define how the Node can build
Edges to other Vertices
• Methods also return all Edges to a certain
Vertex
• All inside the NSF using ODA
8th Sutol Conference, November 2016
Init the Graph
• Define the Element Store(s)
• Add Element Store(s) to the Graph
Configuration
• Define the DFramedTransactionalGraph
object with the Graph Configuration
• Add Vertex types to Element store(s)
• Work with the Graph object
8th Sutol Conference, November 2016
Create an Edge
• Parameterize Object 1
• Get Object 2 by a unique key
• Call one of the „add“ methods of your Node
class
• Commit your changes
8th Sutol Conference, November 2016
A strategy? Add some meta data
• a most common use case is to add meta
data to existing data using Graph data
• no need to touch the original data :-)
• graph data is highly extensible (like NoSQL
is in general)
8th Sutol Conference, November 2016
DEMO TIME!
DEMO TIME!
8th Sutol Conference, November 2016
Like what you saw?
• It’s IBM Champion nomination time
• Nominate YOUR IBM Champions 

until Nov 14
• http://www.ibm.com/developerworks/
community/profiles/dw/anonymous.jsp?
id=2016
8th Sutol Conference, November 2016
8th Sutol Conference, November 2016
Resources
• The XPages demo application
• http://notesx.net:8090/obusse/
ICONUK_2016_Demo_Database
• A nice glossary
• http://www.intec.co.uk/from-xpages-to-web-app-glossary/
• OpenNTF Domino API
• http://www.openntf.org/main.nsf/project.xsp?r=project/
OpenNTF%20Domino%20API
• http://www.openntf.org/main.nsf/project.xsp?r=project/
OpenNTF%20Domino%20API%20Demo%20Database
• Graphs
• http://de.slideshare.net/ktree19/the-graph-revolution

More Related Content

What's hot

NOSQL Databases for the .NET Developer
NOSQL Databases for the .NET DeveloperNOSQL Databases for the .NET Developer
NOSQL Databases for the .NET Developer
Jesus Rodriguez
 

What's hot (20)

Key Challenges in Cloud Computing and How Yahoo! is Approaching Them
Key Challenges in Cloud Computing and How Yahoo! is Approaching ThemKey Challenges in Cloud Computing and How Yahoo! is Approaching Them
Key Challenges in Cloud Computing and How Yahoo! is Approaching Them
 
Presto Summit 2018 - 09 - Netflix Iceberg
Presto Summit 2018  - 09 - Netflix IcebergPresto Summit 2018  - 09 - Netflix Iceberg
Presto Summit 2018 - 09 - Netflix Iceberg
 
Search api d8
Search api d8Search api d8
Search api d8
 
NOSQL Databases for the .NET Developer
NOSQL Databases for the .NET DeveloperNOSQL Databases for the .NET Developer
NOSQL Databases for the .NET Developer
 
HUG France Feb 2016 - Migration de données structurées entre Hadoop et RDBMS ...
HUG France Feb 2016 - Migration de données structurées entre Hadoop et RDBMS ...HUG France Feb 2016 - Migration de données structurées entre Hadoop et RDBMS ...
HUG France Feb 2016 - Migration de données structurées entre Hadoop et RDBMS ...
 
DSpace at ILRI : A semi-technical overview of “CGSpace”
DSpace at ILRI : A semi-technical overview of “CGSpace”DSpace at ILRI : A semi-technical overview of “CGSpace”
DSpace at ILRI : A semi-technical overview of “CGSpace”
 
Presto talk @ Global AI conference 2018 Boston
Presto talk @ Global AI conference 2018 BostonPresto talk @ Global AI conference 2018 Boston
Presto talk @ Global AI conference 2018 Boston
 
Adf and ala design c sharp corner toronto chapter feb 2019 meetup nik shahriar
Adf and ala design c sharp corner toronto chapter feb 2019 meetup nik shahriarAdf and ala design c sharp corner toronto chapter feb 2019 meetup nik shahriar
Adf and ala design c sharp corner toronto chapter feb 2019 meetup nik shahriar
 
Scaling ELK Stack - DevOpsDays Singapore
Scaling ELK Stack - DevOpsDays SingaporeScaling ELK Stack - DevOpsDays Singapore
Scaling ELK Stack - DevOpsDays Singapore
 
Intro to Graphs for Fedict
Intro to Graphs for FedictIntro to Graphs for Fedict
Intro to Graphs for Fedict
 
Ciel, mes données ne sont plus relationnelles
Ciel, mes données ne sont plus relationnellesCiel, mes données ne sont plus relationnelles
Ciel, mes données ne sont plus relationnelles
 
JanusGraph, Jupyter Meetup NYC
JanusGraph, Jupyter Meetup NYCJanusGraph, Jupyter Meetup NYC
JanusGraph, Jupyter Meetup NYC
 
Superset druid realtime
Superset druid realtimeSuperset druid realtime
Superset druid realtime
 
Polyglot Persistence Utilizing Open Source Databases as a Swiss Pocket Knife
Polyglot Persistence Utilizing Open Source Databases as a Swiss Pocket KnifePolyglot Persistence Utilizing Open Source Databases as a Swiss Pocket Knife
Polyglot Persistence Utilizing Open Source Databases as a Swiss Pocket Knife
 
DSpace at ILRI: A semi-technical overview of “CGSpace”
DSpace at ILRI: A semi-technical overview of “CGSpace”DSpace at ILRI: A semi-technical overview of “CGSpace”
DSpace at ILRI: A semi-technical overview of “CGSpace”
 
NATE-Central-Log
NATE-Central-LogNATE-Central-Log
NATE-Central-Log
 
Graph Databases for SQL Server Professionals
Graph Databases for SQL Server ProfessionalsGraph Databases for SQL Server Professionals
Graph Databases for SQL Server Professionals
 
On demand cloud services
On demand cloud servicesOn demand cloud services
On demand cloud services
 
Use cases for cassandra in federal and state government
Use cases for cassandra in federal and state governmentUse cases for cassandra in federal and state government
Use cases for cassandra in federal and state government
 
Keynote -- Percona Live Europe 2018
Keynote -- Percona Live Europe 2018Keynote -- Percona Live Europe 2018
Keynote -- Percona Live Europe 2018
 

Viewers also liked

OSA Anwendertreffen 2014 - "Clients ausgedünnt: Notes-/Domino-Anwendungen web...
OSA Anwendertreffen 2014 - "Clients ausgedünnt: Notes-/Domino-Anwendungenweb...OSA Anwendertreffen 2014 - "Clients ausgedünnt: Notes-/Domino-Anwendungenweb...
OSA Anwendertreffen 2014 - "Clients ausgedünnt: Notes-/Domino-Anwendungen web...
Oliver Busse
 
DNUG 38: "Einen Rahmen schaffen: Vorteile durch Frameworks in der Domino-Webe...
DNUG 38: "Einen Rahmen schaffen: Vorteile durch Frameworks in der Domino-Webe...DNUG 38: "Einen Rahmen schaffen: Vorteile durch Frameworks in der Domino-Webe...
DNUG 38: "Einen Rahmen schaffen: Vorteile durch Frameworks in der Domino-Webe...
Oliver Busse
 
ULC - Connect 2014 Nachlese
ULC - Connect 2014 NachleseULC - Connect 2014 Nachlese
ULC - Connect 2014 Nachlese
Oliver Busse
 

Viewers also liked (20)

Fix & fertig: Best Practises für "XPages-Migranten"
Fix & fertig: Best Practises für "XPages-Migranten"Fix & fertig: Best Practises für "XPages-Migranten"
Fix & fertig: Best Practises für "XPages-Migranten"
 
OSA Anwendertreffen 2014 - "Clients ausgedünnt: Notes-/Domino-Anwendungen web...
OSA Anwendertreffen 2014 - "Clients ausgedünnt: Notes-/Domino-Anwendungenweb...OSA Anwendertreffen 2014 - "Clients ausgedünnt: Notes-/Domino-Anwendungenweb...
OSA Anwendertreffen 2014 - "Clients ausgedünnt: Notes-/Domino-Anwendungen web...
 
The Autobahn Has No Speed Limit - Your XPages Shouldn't Either!
The Autobahn Has No Speed Limit - Your XPages Shouldn't Either!The Autobahn Has No Speed Limit - Your XPages Shouldn't Either!
The Autobahn Has No Speed Limit - Your XPages Shouldn't Either!
 
bccon-2014 key01 ibm_collaboration_solutions_connect_2014
bccon-2014 key01 ibm_collaboration_solutions_connect_2014bccon-2014 key01 ibm_collaboration_solutions_connect_2014
bccon-2014 key01 ibm_collaboration_solutions_connect_2014
 
bccon-2014 dev02 xpages-coffe-from-a-friend-using-third-party-java-libraries
bccon-2014 dev02 xpages-coffe-from-a-friend-using-third-party-java-librariesbccon-2014 dev02 xpages-coffe-from-a-friend-using-third-party-java-libraries
bccon-2014 dev02 xpages-coffe-from-a-friend-using-third-party-java-libraries
 
Saleforce For Domino Dogs
Saleforce For Domino DogsSaleforce For Domino Dogs
Saleforce For Domino Dogs
 
Websocket technology for XPages
Websocket technology for XPagesWebsocket technology for XPages
Websocket technology for XPages
 
XPages Performance
XPages PerformanceXPages Performance
XPages Performance
 
Dnug 112014 modernization_openn_ntf_ersatzsession
Dnug 112014 modernization_openn_ntf_ersatzsessionDnug 112014 modernization_openn_ntf_ersatzsession
Dnug 112014 modernization_openn_ntf_ersatzsession
 
DNUG 38: "Einen Rahmen schaffen: Vorteile durch Frameworks in der Domino-Webe...
DNUG 38: "Einen Rahmen schaffen: Vorteile durch Frameworks in der Domino-Webe...DNUG 38: "Einen Rahmen schaffen: Vorteile durch Frameworks in der Domino-Webe...
DNUG 38: "Einen Rahmen schaffen: Vorteile durch Frameworks in der Domino-Webe...
 
Utilizing the OpenNTF Domino API
Utilizing the OpenNTF Domino APIUtilizing the OpenNTF Domino API
Utilizing the OpenNTF Domino API
 
ULC - Connect 2014 Nachlese
ULC - Connect 2014 NachleseULC - Connect 2014 Nachlese
ULC - Connect 2014 Nachlese
 
Utilizing the open ntf domino api
Utilizing the open ntf domino apiUtilizing the open ntf domino api
Utilizing the open ntf domino api
 
DNUG 2014 Herbstkonferenz: Moderne Architektur - Hochskalierbare Anwendungsar...
DNUG 2014 Herbstkonferenz: Moderne Architektur - Hochskalierbare Anwendungsar...DNUG 2014 Herbstkonferenz: Moderne Architektur - Hochskalierbare Anwendungsar...
DNUG 2014 Herbstkonferenz: Moderne Architektur - Hochskalierbare Anwendungsar...
 
SUTOL 2015 - Utilizing the OpenNTF Domino API
SUTOL 2015 - Utilizing the OpenNTF Domino APISUTOL 2015 - Utilizing the OpenNTF Domino API
SUTOL 2015 - Utilizing the OpenNTF Domino API
 
Calcite meetup-2016-04-20
Calcite meetup-2016-04-20Calcite meetup-2016-04-20
Calcite meetup-2016-04-20
 
Transformations
TransformationsTransformations
Transformations
 
Transformations - a TLCC & Teamstudio Webinar
Transformations - a TLCC & Teamstudio WebinarTransformations - a TLCC & Teamstudio Webinar
Transformations - a TLCC & Teamstudio Webinar
 
Xpages - oder was man mit einer alten Notes-DB so alles anstellen kann
Xpages - oder was man mit einer alten Notes-DB so alles anstellen kannXpages - oder was man mit einer alten Notes-DB so alles anstellen kann
Xpages - oder was man mit einer alten Notes-DB so alles anstellen kann
 
2016 SUTOL - Salesforce App Cloud and Domino - same same, but different
2016 SUTOL - Salesforce App Cloud and Domino - same same, but different2016 SUTOL - Salesforce App Cloud and Domino - same same, but different
2016 SUTOL - Salesforce App Cloud and Domino - same same, but different
 

Similar to Find your data

What's new in pandas and the SciPy stack for financial users
What's new in pandas and the SciPy stack for financial usersWhat's new in pandas and the SciPy stack for financial users
What's new in pandas and the SciPy stack for financial users
Wes McKinney
 

Similar to Find your data (20)

Polyglot Persistence with MongoDB and Neo4j
Polyglot Persistence with MongoDB and Neo4jPolyglot Persistence with MongoDB and Neo4j
Polyglot Persistence with MongoDB and Neo4j
 
R training at Aimia
R training at AimiaR training at Aimia
R training at Aimia
 
MongoDB Basics
MongoDB BasicsMongoDB Basics
MongoDB Basics
 
Trino: A Ludicrously Fast Query Engine - Pulsar Summit NA 2021
Trino: A Ludicrously Fast Query Engine - Pulsar Summit NA 2021Trino: A Ludicrously Fast Query Engine - Pulsar Summit NA 2021
Trino: A Ludicrously Fast Query Engine - Pulsar Summit NA 2021
 
Webinar about Spring Data Neo4j 4
Webinar about Spring Data Neo4j 4Webinar about Spring Data Neo4j 4
Webinar about Spring Data Neo4j 4
 
An R primer for SQL folks
An R primer for SQL folksAn R primer for SQL folks
An R primer for SQL folks
 
Utilizing the OpenNTF Domino API
Utilizing the OpenNTF Domino APIUtilizing the OpenNTF Domino API
Utilizing the OpenNTF Domino API
 
On-Demand RDF Graph Databases in the Cloud
On-Demand RDF Graph Databases in the CloudOn-Demand RDF Graph Databases in the Cloud
On-Demand RDF Graph Databases in the Cloud
 
Bloor Research & DataStax: How graph databases solve previously unsolvable bu...
Bloor Research & DataStax: How graph databases solve previously unsolvable bu...Bloor Research & DataStax: How graph databases solve previously unsolvable bu...
Bloor Research & DataStax: How graph databases solve previously unsolvable bu...
 
How To Model and Construct Graphs with Oracle Database (AskTOM Office Hours p...
How To Model and Construct Graphs with Oracle Database (AskTOM Office Hours p...How To Model and Construct Graphs with Oracle Database (AskTOM Office Hours p...
How To Model and Construct Graphs with Oracle Database (AskTOM Office Hours p...
 
Red hat infrastructure for analytics
Red hat infrastructure for analyticsRed hat infrastructure for analytics
Red hat infrastructure for analytics
 
Introduction to basic data analytics tools
Introduction to basic data analytics toolsIntroduction to basic data analytics tools
Introduction to basic data analytics tools
 
Find your data - using GraphDB capabilities in XPages applications - ICS.UG 2016
Find your data - using GraphDB capabilities in XPages applications - ICS.UG 2016Find your data - using GraphDB capabilities in XPages applications - ICS.UG 2016
Find your data - using GraphDB capabilities in XPages applications - ICS.UG 2016
 
What's new in pandas and the SciPy stack for financial users
What's new in pandas and the SciPy stack for financial usersWhat's new in pandas and the SciPy stack for financial users
What's new in pandas and the SciPy stack for financial users
 
Big Data and NoSQL for Database and BI Pros
Big Data and NoSQL for Database and BI ProsBig Data and NoSQL for Database and BI Pros
Big Data and NoSQL for Database and BI Pros
 
Advanced Data Analytics techniques .pptx
Advanced Data Analytics techniques .pptxAdvanced Data Analytics techniques .pptx
Advanced Data Analytics techniques .pptx
 
Graph Analytics on Data from Meetup.com
Graph Analytics on Data from Meetup.comGraph Analytics on Data from Meetup.com
Graph Analytics on Data from Meetup.com
 
Choosing the Right Graph Database to Succeed in Your Project
Choosing the Right Graph Database to Succeed in Your ProjectChoosing the Right Graph Database to Succeed in Your Project
Choosing the Right Graph Database to Succeed in Your Project
 
Introduction to knime
Introduction to knimeIntroduction to knime
Introduction to knime
 
Reco4J @ Munich Meetup (April 18th)
Reco4J @ Munich Meetup (April 18th)Reco4J @ Munich Meetup (April 18th)
Reco4J @ Munich Meetup (April 18th)
 

More from Oliver Busse (9)

HCL Domino Volt - der NSF Killer?
HCL Domino Volt - der NSF Killer?HCL Domino Volt - der NSF Killer?
HCL Domino Volt - der NSF Killer?
 
Outlook becomes a Team Player - with a clever add-in
Outlook becomes a Team Player - with a clever add-inOutlook becomes a Team Player - with a clever add-in
Outlook becomes a Team Player - with a clever add-in
 
The NERD stuff - opening for Domino to the modern web developer
The NERD stuff - opening for Domino to the modern web developerThe NERD stuff - opening for Domino to the modern web developer
The NERD stuff - opening for Domino to the modern web developer
 
DNUG Development Day 2019
DNUG Development Day 2019DNUG Development Day 2019
DNUG Development Day 2019
 
DNUG44 Watson Workspace
DNUG44 Watson WorkspaceDNUG44 Watson Workspace
DNUG44 Watson Workspace
 
Paradiesisch - OpenNTF
Paradiesisch - OpenNTFParadiesisch - OpenNTF
Paradiesisch - OpenNTF
 
XPages on Bluemix - the Do's and Dont's
XPages on Bluemix - the Do's and Dont'sXPages on Bluemix - the Do's and Dont's
XPages on Bluemix - the Do's and Dont's
 
Out of the Blue - the Workflow in Bluemix Development
Out of the Blue - the Workflow in Bluemix DevelopmentOut of the Blue - the Workflow in Bluemix Development
Out of the Blue - the Workflow in Bluemix Development
 
Out of the Blue: Getting started with IBM Bluemix development
Out of the Blue: Getting started with IBM Bluemix developmentOut of the Blue: Getting started with IBM Bluemix development
Out of the Blue: Getting started with IBM Bluemix development
 

Recently uploaded

Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
VictoriaMetrics
 
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Medical / Health Care (+971588192166) Mifepristone and Misoprostol tablets 200mg
 

Recently uploaded (20)

Architecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the pastArchitecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the past
 
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
 
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
 
WSO2CON 2024 - Building a Digital Government in Uganda
WSO2CON 2024 - Building a Digital Government in UgandaWSO2CON 2024 - Building a Digital Government in Uganda
WSO2CON 2024 - Building a Digital Government in Uganda
 
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open Source
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open SourceWSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open Source
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open Source
 
WSO2Con2024 - Low-Code Integration Tooling
WSO2Con2024 - Low-Code Integration ToolingWSO2Con2024 - Low-Code Integration Tooling
WSO2Con2024 - Low-Code Integration Tooling
 
WSO2CON 2024 - Not Just Microservices: Rightsize Your Services!
WSO2CON 2024 - Not Just Microservices: Rightsize Your Services!WSO2CON 2024 - Not Just Microservices: Rightsize Your Services!
WSO2CON 2024 - Not Just Microservices: Rightsize Your Services!
 
WSO2CON 2024 - Software Engineering for Digital Businesses
WSO2CON 2024 - Software Engineering for Digital BusinessesWSO2CON 2024 - Software Engineering for Digital Businesses
WSO2CON 2024 - Software Engineering for Digital Businesses
 
WSO2CON 2024 Slides - Unlocking Value with AI
WSO2CON 2024 Slides - Unlocking Value with AIWSO2CON 2024 Slides - Unlocking Value with AI
WSO2CON 2024 Slides - Unlocking Value with AI
 
WSO2CON 2024 - OSU & WSO2: A Decade Journey in Integration & Innovation
WSO2CON 2024 - OSU & WSO2: A Decade Journey in Integration & InnovationWSO2CON 2024 - OSU & WSO2: A Decade Journey in Integration & Innovation
WSO2CON 2024 - OSU & WSO2: A Decade Journey in Integration & Innovation
 
WSO2Con2024 - Facilitating Broadband Switching Services for UK Telecoms Provi...
WSO2Con2024 - Facilitating Broadband Switching Services for UK Telecoms Provi...WSO2Con2024 - Facilitating Broadband Switching Services for UK Telecoms Provi...
WSO2Con2024 - Facilitating Broadband Switching Services for UK Telecoms Provi...
 
WSO2Con2024 - GitOps in Action: Navigating Application Deployment in the Plat...
WSO2Con2024 - GitOps in Action: Navigating Application Deployment in the Plat...WSO2Con2024 - GitOps in Action: Navigating Application Deployment in the Plat...
WSO2Con2024 - GitOps in Action: Navigating Application Deployment in the Plat...
 
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
 
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
 
WSO2CON 2024 - How to Run a Security Program
WSO2CON 2024 - How to Run a Security ProgramWSO2CON 2024 - How to Run a Security Program
WSO2CON 2024 - How to Run a Security Program
 
AzureNativeQumulo_HPC_Cloud_Native_Benchmarks.pdf
AzureNativeQumulo_HPC_Cloud_Native_Benchmarks.pdfAzureNativeQumulo_HPC_Cloud_Native_Benchmarks.pdf
AzureNativeQumulo_HPC_Cloud_Native_Benchmarks.pdf
 
What Goes Wrong with Language Definitions and How to Improve the Situation
What Goes Wrong with Language Definitions and How to Improve the SituationWhat Goes Wrong with Language Definitions and How to Improve the Situation
What Goes Wrong with Language Definitions and How to Improve the Situation
 
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
 
WSO2CON 2024 - Designing Event-Driven Enterprises: Stories of Transformation
WSO2CON 2024 - Designing Event-Driven Enterprises: Stories of TransformationWSO2CON 2024 - Designing Event-Driven Enterprises: Stories of Transformation
WSO2CON 2024 - Designing Event-Driven Enterprises: Stories of Transformation
 
Driving Innovation: Scania's API Revolution with WSO2
Driving Innovation: Scania's API Revolution with WSO2Driving Innovation: Scania's API Revolution with WSO2
Driving Innovation: Scania's API Revolution with WSO2
 

Find your data

  • 1. Find your data Use GraphDB capabilities in XPages applications
  • 2. 8th Sutol Conference, November 2016
  • 3. 8th Sutol Conference, November 2016 What’s up in the next 45 mins? • Who am I? • What are GraphDBs? • Famous GraphDBs and Use Cases • Terminology • Introduction to GraphNSF in ODA • Implementation & Data Modelling • Demo
  • 4. 8th Sutol Conference, November 2016 Oliver Busse • Back again! 2nd SUTOL :-) • Bleeding yellow since R4.5 • Software Architect at We4IT • aveedo® Application Framework • ScanAlyzr® Application Metrics • OpenNTF Board Member • NotesIn9 Producer • IBM Champion 2015 + 2016 • @zeromancer1972 • www.oliverbusse.com • www.we4it.com
  • 5. 8th Sutol Conference, November 2016 The Graph Principle
  • 6. 8th Sutol Conference, November 2016 GraphDB - Definition A graph database, also called a graph-oriented database, is a type of NoSQL database that uses graph theory to store, map and query relationships. A graph database is essentially a collection of vertices and edges. Each vertex represents an entity (such as a person or business) and each edge represents a connection or relationship between two vertices. http://whatis.techtarget.com/definition/graph-database
  • 7. 8th Sutol Conference, November 2016 Some GraphDBs and Frameworks • Neo4J • OrientDB • Titan/Cassandra • Tinkerpop (used here in ODA) • Apache Lucene / Solr
  • 8. 8th Sutol Conference, November 2016 Who’s using GraphDBs? • Amazon • Google/Youtube • Facebook, Twitter • IBM Watson Workspace • almost every application that offers something like • "summarize", "assist" • "related posts" (blogs) • "others also bought this" (shops) • collect relations and "likes" • …
  • 9. 8th Sutol Conference, November 2016 GraphDB - Terminology • Vertices (singular: Vertex) • has Properties (Key-Value pairs) • sometimes referred to as Nodes or Elements • Edges • Connections, Relations between Vertices • ElementStores • for us: NSF databases • MetaverseIDs (GraphNSF) • Replica + UNID (hashed) • internal use only (don‘t care about them)
  • 10. 8th Sutol Conference, November 2016 Introducing: GraphNSF
  • 11. 8th Sutol Conference, November 2016 GraphNSF is part of ODA • Introduced and maintained by • Nathan T. Freeman • Paul S. Withers • Uses Tinkerpop framework • Under heavy development since ODA 2.0 • Current version is ODA 3.0 • GraphNSF is transactional
  • 12. 8th Sutol Conference, November 2016 GraphNSF = GraphDB in Domino • Vertices and Edges are stored as Documents • The data container is a NSF • The ElementStore defines the file path to the NSF • An ElementStore can hold different types of Vertices • Usually you create one ElementStore for each Vertex type
  • 13. 8th Sutol Conference, November 2016 Implementation & Data Modeling • Vertices are defined as Interface classes • Fields are defined as properties with Getter and Setter • Methods define how the Node can build Edges to other Vertices • Methods also return all Edges to a certain Vertex • All inside the NSF using ODA
  • 14. 8th Sutol Conference, November 2016 Init the Graph • Define the Element Store(s) • Add Element Store(s) to the Graph Configuration • Define the DFramedTransactionalGraph object with the Graph Configuration • Add Vertex types to Element store(s) • Work with the Graph object
  • 15. 8th Sutol Conference, November 2016 Create an Edge • Parameterize Object 1 • Get Object 2 by a unique key • Call one of the „add“ methods of your Node class • Commit your changes
  • 16. 8th Sutol Conference, November 2016 A strategy? Add some meta data • a most common use case is to add meta data to existing data using Graph data • no need to touch the original data :-) • graph data is highly extensible (like NoSQL is in general)
  • 17. 8th Sutol Conference, November 2016 DEMO TIME! DEMO TIME!
  • 18. 8th Sutol Conference, November 2016 Like what you saw? • It’s IBM Champion nomination time • Nominate YOUR IBM Champions 
 until Nov 14 • http://www.ibm.com/developerworks/ community/profiles/dw/anonymous.jsp? id=2016
  • 19. 8th Sutol Conference, November 2016
  • 20. 8th Sutol Conference, November 2016 Resources • The XPages demo application • http://notesx.net:8090/obusse/ ICONUK_2016_Demo_Database • A nice glossary • http://www.intec.co.uk/from-xpages-to-web-app-glossary/ • OpenNTF Domino API • http://www.openntf.org/main.nsf/project.xsp?r=project/ OpenNTF%20Domino%20API • http://www.openntf.org/main.nsf/project.xsp?r=project/ OpenNTF%20Domino%20API%20Demo%20Database • Graphs • http://de.slideshare.net/ktree19/the-graph-revolution