SlideShare una empresa de Scribd logo
1 de 77
Descargar para leer sin conexión
Amazing Title Goes Here
Awesome Subtitle
Name Name
Title Title Title Title Title
Using a graph database for analyzing
your Liferay data
Máté Thurzó @matethurzo
Staging Lead, Senior Software Engineer
Budapest
What is
graph?
G=(V,E)
Undirected
Directed
Bi-directed
Mixed
Cyclical
Acyclical
Multigraph
Simple graph
Complete graph
Why graphs
Internet and
networks
Human
relationships
Staging Human body
It’s a
graph!
Graphs are fun
Graphs are easy to work with
DEMO
neo4j org structure
Graphs are whiteboard
friendly
Graphs
algorithms/performance
Loading data
NEO4J STORED PROCEDURE
LOADING DATA
BACKGROUND TASK EXECUTOR
Liferay neo4j
driver
Who does Jorge
manage?
Who ARE THE
CONTENT CREATORS?
Who hasn’t created
any content?
Who to follow?
How far are they are
from me?
× Discovering relationships,
behavior, interests
× Providing suggestions on products
staging?
Again?
1.
Advanced publication tool
Content can be assembled and
reviewed on a staging site and can
be published to live
A staging publication process
replicates data between sites and
performs extra operations – such as
validation
2.
replication
Image
Web
Content
Blogs
Entity
Staging is operating on a graph of
entities, discovering and processing
the relationships between them
wysiwyg behavior
In order to ensure a
smooth experience we
might need to pull
other contents too
reference validation
Certain business rules
needs to be validated
and reported back
no graph stored
There is no
information before
the execution of the
graph
graph maintenance
On edit approach vs
processing every time
XML format
Performance
considerations –
especially on the
memory side
graph not homogenous
The graph vertices are not the
same – graph operations not
possible
static calling
Pre-defined entry points
combined with a static
controlling setup
Image
Content
Blog
Image
2
Folder
Content
2
Science kicks in – Enter
graph theory
Topological
sorting– coffman
graham
Image
Content
Blog
Image
2
Folder
Content
2
Image
Content Blog
Image
2
Folder
Content
2
Image
2
ContentBlog
Image Folder
Content
2
Directed
Direction is important to tell
what comes after what –
This is defined in the business logic
Graph
Duh!
Acyclical
In a cycle everything
has a predecessor and a
successor
Clean
bathroom
Sweep floors Wash windows
Armond $2 $3 $3
Francine $3 $2 $3
Herbert $3 $3 $2
Armond – Clean bathroom
Francine – Sweep floors
Herbert – Wash windows
Name/Task Writing a unit
test
Implement a
new staging
data handler
Fix a bug in a
BackgroundTas
kExecutor
Mária f(x) f(x) f(x)
Dániel f(x) f(x) f(x)
Ákos f(x) f(x) f(x)
Graph creation
Graph searching
× Path finding
× Artifical intelligence
× Not using Neo4j
× JGraphT library
× Finding insurance fraudulant
activity
× Risk assessement
× News site – content with links
to other content
× Panama papers
Structural
analysis
× Parkinson’s disease
× Protein struture prediction
× Cancer research
László babai
university of chicago
graph isomorphism can be solved in quasi
polinomial time
× Static code analysis – Codecheck,
Liferay Source Formatter
× Abstract Syntax Tree (AST)
× Abstract Semantic Graph (ASG)
Predicting the
future
× Probability distribution over graphs
× Complex network modeling
× Erdos-Rényi model
Pál
erdos
× Statistics gathering in a graph
form and analysing the
produced result
It’s a
graph!
Questions?
Gists
@matethurzo

Más contenido relacionado

Destacado

Sketchnotes of the PRCA annual conference 2013
Sketchnotes of the PRCA annual conference 2013Sketchnotes of the PRCA annual conference 2013
Sketchnotes of the PRCA annual conference 2013
Prezly
 
Microservices: The OSGi way A different vision on microservices
Microservices: The OSGi way A different vision on microservicesMicroservices: The OSGi way A different vision on microservices
Microservices: The OSGi way A different vision on microservices
Miguel Pastor
 

Destacado (14)

Communication 2020 - Are you ready?
Communication 2020 - Are you ready?Communication 2020 - Are you ready?
Communication 2020 - Are you ready?
 
Communication 2020 – Spokesperson conference visual summary
Communication 2020 – Spokesperson conference visual summaryCommunication 2020 – Spokesperson conference visual summary
Communication 2020 – Spokesperson conference visual summary
 
Sketchnotes of the PRCA annual conference 2013
Sketchnotes of the PRCA annual conference 2013Sketchnotes of the PRCA annual conference 2013
Sketchnotes of the PRCA annual conference 2013
 
The future of PR - visual summary of the ICCO conference in Paris
The future of PR - visual summary of the ICCO conference in ParisThe future of PR - visual summary of the ICCO conference in Paris
The future of PR - visual summary of the ICCO conference in Paris
 
Microservices: The OSGi way A different vision on microservices
Microservices: The OSGi way A different vision on microservicesMicroservices: The OSGi way A different vision on microservices
Microservices: The OSGi way A different vision on microservices
 
Document management system using liferay 7
Document management system using liferay 7Document management system using liferay 7
Document management system using liferay 7
 
Moved to https://slidr.io/azzazzel/liferay-7-microservices-for-the-enterprise
Moved to https://slidr.io/azzazzel/liferay-7-microservices-for-the-enterpriseMoved to https://slidr.io/azzazzel/liferay-7-microservices-for-the-enterprise
Moved to https://slidr.io/azzazzel/liferay-7-microservices-for-the-enterprise
 
Visual guide to Media Relations by @prezly
Visual guide to Media Relations by @prezlyVisual guide to Media Relations by @prezly
Visual guide to Media Relations by @prezly
 
Liferay overview
Liferay overviewLiferay overview
Liferay overview
 
Building an EmPyre with Python
Building an EmPyre with PythonBuilding an EmPyre with Python
Building an EmPyre with Python
 
Overview of Liferay 7 Technology
Overview of Liferay 7 TechnologyOverview of Liferay 7 Technology
Overview of Liferay 7 Technology
 
Liferay Portal Introduction
Liferay Portal IntroductionLiferay Portal Introduction
Liferay Portal Introduction
 
10 Do's and Don'ts for Using Stock Photos in Your Marketing
10 Do's and Don'ts for Using Stock Photos in Your Marketing10 Do's and Don'ts for Using Stock Photos in Your Marketing
10 Do's and Don'ts for Using Stock Photos in Your Marketing
 
Public Relations
Public RelationsPublic Relations
Public Relations
 

Similar a Using a graph database for analyzing your Liferay data

Web Data Extraction Como2010
Web Data Extraction Como2010Web Data Extraction Como2010
Web Data Extraction Como2010
Giorgio Orsi
 

Similar a Using a graph database for analyzing your Liferay data (20)

Science behind Staging
Science behind StagingScience behind Staging
Science behind Staging
 
Building a cutting-edge data processing environment on a budget
Building a cutting-edge data processing environment on a budgetBuilding a cutting-edge data processing environment on a budget
Building a cutting-edge data processing environment on a budget
 
Building a Cutting-Edge Data Process Environment on a Budget by Gael Varoquaux
Building a Cutting-Edge Data Process Environment on a Budget by Gael VaroquauxBuilding a Cutting-Edge Data Process Environment on a Budget by Gael Varoquaux
Building a Cutting-Edge Data Process Environment on a Budget by Gael Varoquaux
 
Data Structure Graph DMZ #DMZone
Data Structure Graph DMZ #DMZoneData Structure Graph DMZ #DMZone
Data Structure Graph DMZ #DMZone
 
Social Network Analysis Introduction including Data Structure Graph overview.
Social Network Analysis Introduction including Data Structure Graph overview. Social Network Analysis Introduction including Data Structure Graph overview.
Social Network Analysis Introduction including Data Structure Graph overview.
 
Big Data at DYNO
Big Data at DYNOBig Data at DYNO
Big Data at DYNO
 
Learning to assess Linked Data relationships using Genetic Programming
Learning to assess Linked Data relationships using Genetic ProgrammingLearning to assess Linked Data relationships using Genetic Programming
Learning to assess Linked Data relationships using Genetic Programming
 
GraphTour 2020 - Graphs & AI: A Path for Data Science
GraphTour 2020 - Graphs & AI: A Path for Data ScienceGraphTour 2020 - Graphs & AI: A Path for Data Science
GraphTour 2020 - Graphs & AI: A Path for Data Science
 
User Interfaces that Design Themselves: Talk given at Data-Driven Design Day ...
User Interfaces that Design Themselves: Talk given at Data-Driven Design Day ...User Interfaces that Design Themselves: Talk given at Data-Driven Design Day ...
User Interfaces that Design Themselves: Talk given at Data-Driven Design Day ...
 
Multiplatform Spark solution for Graph datasources by Javier Dominguez
Multiplatform Spark solution for Graph datasources by Javier DominguezMultiplatform Spark solution for Graph datasources by Javier Dominguez
Multiplatform Spark solution for Graph datasources by Javier Dominguez
 
Challenges in business analytics
Challenges in business analyticsChallenges in business analytics
Challenges in business analytics
 
Web Data Extraction Como2010
Web Data Extraction Como2010Web Data Extraction Como2010
Web Data Extraction Como2010
 
Luigi Presentation at OSCON 2013
Luigi Presentation at OSCON 2013Luigi Presentation at OSCON 2013
Luigi Presentation at OSCON 2013
 
Spark Based Distributed Deep Learning Framework For Big Data Applications
Spark Based Distributed Deep Learning Framework For Big Data Applications Spark Based Distributed Deep Learning Framework For Big Data Applications
Spark Based Distributed Deep Learning Framework For Big Data Applications
 
Data Science.pptx
Data Science.pptxData Science.pptx
Data Science.pptx
 
GraphGen: Conducting Graph Analytics over Relational Databases
GraphGen: Conducting Graph Analytics over Relational DatabasesGraphGen: Conducting Graph Analytics over Relational Databases
GraphGen: Conducting Graph Analytics over Relational Databases
 
GraphGen: Conducting Graph Analytics over Relational Databases
GraphGen: Conducting Graph Analytics over Relational DatabasesGraphGen: Conducting Graph Analytics over Relational Databases
GraphGen: Conducting Graph Analytics over Relational Databases
 
How to Build a Semantic Search System
How to Build a Semantic Search SystemHow to Build a Semantic Search System
How to Build a Semantic Search System
 
An Overview of the Emerging Graph Landscape (Oct 2013)
An Overview of the Emerging Graph Landscape (Oct 2013)An Overview of the Emerging Graph Landscape (Oct 2013)
An Overview of the Emerging Graph Landscape (Oct 2013)
 
Apache Spark GraphX & GraphFrame Synthetic ID Fraud Use Case
Apache Spark GraphX & GraphFrame Synthetic ID Fraud Use CaseApache Spark GraphX & GraphFrame Synthetic ID Fraud Use Case
Apache Spark GraphX & GraphFrame Synthetic ID Fraud Use Case
 

Último

CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
giselly40
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
vu2urc
 

Último (20)

Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Evaluating the top large language models.pdf
Evaluating the top large language models.pdfEvaluating the top large language models.pdf
Evaluating the top large language models.pdf
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 

Using a graph database for analyzing your Liferay data