This document discusses using a graph database for analyzing Liferay data. It describes what a graph is from a data structure perspective and provides examples of why graphs are useful, such as for modeling networks, human relationships, and the human body. The document then demonstrates how graphs can be used for various Liferay use cases like discovering relationships between users, content, and entities. It also discusses how graph algorithms and staging processes that replicate data between sites can utilize graph structures and operations.
2024: Domino Containers - The Next Step. News from the Domino Container commu...
Using a graph database for analyzing your Liferay data
1. 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
44. Entity
Staging is operating on a graph of
entities, discovering and processing
the relationships between them
45. 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
46. 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
47. 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
54. 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
55.
56.
57.
58. 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
59. 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)