SlideShare a Scribd company logo
1 of 41
APACHECON North America
Sept. 24-27, 2018
Apache Unomi: a Customer
Data Platform …
● Serge Huber
Apache Unomi / Jahia
@sergehuber
shuber@apache.org
APACHECON North America
Introduction
20 years Web
Dev experience
Coder at heart
(since I’m 7)
Very intested in
User experiences
Co-founder &
CTO of Jahia
Apache Committer
(Jackrabbit, Unomi)
Co-chair OASIS
Context Server TC
APACHECON North America
What is a Customer Data
Platform ?
● From Wikipedia: “Customer Data Platform (CDP) is a
marketer-based management system. It creates a
persistent, unified customer database that is accessible
to other systems. Data is pulled from multiple sources,
cleaned and combined to create a single customer
profile. This structured data is then made available to
other marketing systems. CDP provides real-time
segmentation for personalized marketing.
CDP is currently a $300 million industry and projected
to reach $1 billion by 2019”
APACHECON North America
Why do I need one ?
● If you want to...
○ learn more about your visitors
○ deliver personalized experiences on your website or
mobile app
○ make sure you comply with stricter regulations now
in place (GDPR) or upcoming
○ be in control of your analytics and personalization
(instead of giving away your data to others like
Google Analytics)
○ avoid reinventing the wheel by building your own
customer database, related hooks and segmentation
APACHECON North America
What is Apache Unomi ?
● Apache Unomi is an open source CDP
● A Java platform based on a completely
modular and highly scalable
architecture
● Is the reference implementation of the
ConteXt Server specification standard
(CXS)
● Is event-based and uses ElasticSearch
as a scalable backend for persistence
and querying
APACHECON North America
What is CXS ?
● The ConteXt Server Specification (to be renamed to CDP
standard !)
● Being established at the OASIS Foundation
● Defines a standard to deliver personalized experiences
● Allow for interoperability and customer data exchanges
APACHECON North America
Why was the project started at
Apache ?
● No open source implementation
existed !
● Apache is well recognized to
provide platform solutions
● Apache is truly independant (eg.
Github == Microsoft)
● Apache provides highly
recognized and solid
infrastructure
● Community is great, good
things will automatically happen
to the code
APACHECON North America
Apache Unomi functionalities
APACHECON North America
Why privacy is now critical !
● GDPR : A new EU directive that
imposes strict conditions on dealing
with customer data
● Fines are very expensive, up to 4% of
annual company turnover or €20
million, whichever is higher !
● Consent for data usage is now
explicitly required -> lots of ugly/buggy
popups on web browsers, and most
are not compliant !
● Users must be able to download their
profiles or delete them !
APACHECON North America
Unomi supports all that !
● Profile properties management
● Defines “personal identifiers” properties
● “Anonymize my profile” endpoint (erase any personal
identifier)
● Consent management (get AND update)
● “Private browsing”
● Downloading profile
APACHECON North America
Consent Management UI
Consent definition
(outside of Unomi’s scope)
APACHECON North America
Consent Management UI
Built on top of Unomi’s Consent API
End user user interface
(updated through consent events)
Reporting
APACHECON North America
Performance & scalability
● At Jahia we test Apache Unomi
on a weekly basis with over 5
million profiles
● Server is designed to be
scalable
● ElasticSearch cluster allows
growth to achieve proper
scalability
● Known bottlenecks:
○ ingestion speed
○ rule processing
● Solutions:
○ Add more ES & Unomi
nodes
APACHECON North America
Use case : web site tracking &
personalization
APACHECON North America
Use case : mobile app & personalization
Mobile app CMS Apache Unomi
Send profile id & session id
Get context for profile
Send app active event
Send screen change event
Get personalized content or
screen Execute filters for profile
Get personalized content
or screens
APACHECON North America
Architecture
ElasticSearch cluster
Apache Karaf (cluster)
CXS REST API (using Apache CXF + Servlets)
(Dev) Shell
Commands
Rule Engine Profile Service
Segment Service
Definitions Service
(conditions, actions)
Query Service
Event Service
Personalization
Service
Goals Service
Salesforce Actions Weather Actions Mailchimp Actions
APACHECON North America
Look Inside
Custom plugins may:
- Implement rule conditions
- Implement rule actions
- Deploy rules
- Do anything an OSGi bundle may do (define new servlets, APIs, karaf
shell commands…)
APACHECON North America
Example deployments
http / Unomi public / port 8181
Unomi
Private url
CMS - Node 1 + MF Modules
CMS - Node 2 + MF Modules
CMS - Node 3 + MF Modules
Unomi 3
ES Data
Unomi 2
ES Data
Unomi 1
ES Data
Unomi
Public url
CMS
Public url
www
Internal network
http or
https
https / Unomi admin / port 9443
Architecture
Layers & Ports
Apache HTTP Server
Visitors
browsers
http or
https
tcp / ES Transport / port 9300
tcp / RMI + Hazelcast / ports 1099 + 5700-5800 Apache Unomi
nodes
ElasticSearch nodes
CMS nodes
tcp / ES Transport / port 9300
tcp / Hazelcast / ports 5700-5800
https / DX public / port 8080
APACHECON North America
Profiles
- Generic properties
- Goals
- Segments
- Scores
- Consents
{
"itemId" : "48563fd0-6319-4260-8dba-ae421beba26f",
"itemType" : "profile",
"version" : 91,
"properties" : {
"nbOfVisits" : 42,
"pageViewCount" : {
"digitall" : 7,
"systemscope" : 7
},
"lastVisit" : "2018-09-25T09:23:33Z",
"firstVisit" : "2018-02-10T17:15:25Z",
"preferredLanguage" : "en",
"previousVisit" : "2018-09-25T09:21:39Z",
"j:email" : "shuber@apache.org",
"emailNotificationsDisabled" : "false",
"j:organization" : "Jahia",
"j:firstName" : "Serge",
"j:lastName" : "Huber",
"j:nodename" : "root"
},
"systemProperties" : {
"goals" : {
"pageview_1519726765394StartReached" : "2018-09-25T09:23:33Z",
"_gu4inatp1TargetReached" : "2018-04-04T13:57:18Z",
},
"mergeIdentifier" : "root"
},
"segments" : [ “over30”, “male”, “technology” ],
"scores" : {
"scoring_1" : 0,
"scoring_0" : 0,
},
"mergedWith" : null,
"consents" : {
"digitall/tracking" : {
"scope" : "digitall",
"typeIdentifier" : "tracking",
"status" : "GRANTED",
"statusDate" : "2018-01-19T14:54:01Z",
"revokeDate" : "2020-01-19T14:54:01Z"
},
"digitall/newsletter" : {
"scope" : "digitall",
"typeIdentifier" : "newsletter",
"status" : "DENIED",
"statusDate" : "2018-01-22T16:15:05Z",
"revokeDate" : "2020-01-22T16:15:05Z"
}
}
}
APACHECON North America
Segments
Defined as conditions on profiles:
Rich people over 30:
a profile has income > 200’000
AND his age is over 30
An active visitor interested in technology:
a profile has read 10 pages with the tag “technology”
AND he has created 10 session in the last 10 days
APACHECON North America
Rule Engine
when
condition is true
then
actions are executed
in REAL-TIME !
APACHECON North America
Rule Engine
when
a page event occurs
then
increment profile page count
APACHECON North America
Rule Engine
when
a login event occurs
AND
it comes from a trusted third party
then
1. copy login account information into
profile
2. merge with other pre-existing profiles
3. send updated profile to external system
(CRM)
APACHECON North America
Conditions
Organized as a tree
Condition types:
- boolean (and, or, not)
- on event/session/profile
property values (equals, in list,
etc…)
- on existence of previous events
for a profile
- extensible, you can build your
own !
AND
age > 30
income > 200’000
has come back to the
site 3 times in the last
month
APACHECON North America
Actions
- executed when a rule
condition is satisfied
- executed as a list of actions,
executed sequentially
- actions can:
- update the current
profile
- push or pull data to a
different system
- be extended using
plugins !
Action sequence example:
1. Retrieve data from form
event and copy into profile
2. Update profile segments
3. Send updated profile to
Salesforce account
APACHECON North America
Integrations
Out of the box:
- Salesforce CRM integration
- Twitter sample
- Weather API (enrich session)
- Mailchimp (update lists)
Easy to build your own using
custom actions and plug into rules !
APACHECON North America
Jahia Marketing Factory
● Basically a UI built on top of Apache Unomi’s
REST API
● Uses AngularJS as a front-end framework
● Provides tight integration with the CMS
APACHECON North America
Others
- Building an advertisement server using
Apache Unomi
- Evaluating Unomi to build personalization
for a TV network’s website
Are you using/interested in Apache Unomi ?
Please let us know and reach out for help !
APACHECON North America
Let's integrate now !
Let’s add Apache Unomi to an existing
website
-> let’s use it for tracking
-> let’s see how we can view events coming
in
-> let’s look at profile examples
-> let’s use profile information to build
personalization !
APACHECON North America
Existing website
APACHECON North America
Add Javascript to send events to
Apache Unomi
Unomi tracker is an extension of the open
source Analytics.js tracking script
<script type="text/javascript">
var unomiOption = {
scope: 'unomiWebSite',
url: 'http://localhost:8181'
};
window.unomiTracker||(window.unomiTracker={}),function(){function e(e){for(unomiTracker.initialize({"Apache Uno
r=n.shift(),t=r.shift();unomiTracker[t]&&unomiTracker[t].apply(unomiTracker,r)}}for(var
n=[],r=["trackSubmit","trackClick","trackLink","trackForm","initialize","pageview","identify","reset","group","track","ready
length;t++){var i=r[t];window.unomiTracker[i]=function(e){return function(){var r=Array.prototype.slice.call(arguments);
r.unshift(e),n.push(r),window.unomiTracker}}(i)}unomiTracker.load=function(){var
n=document.createElement("script");n.type="text/javascript",n.async=!0,n.src=unomiOption.url+"/tracker/unomi-
tracker.min.js",n.addEventListener?n.addEventListener("load",function(n){"function"==typeof
e&&e(n)},!1):n.onreadystatechange=function(){"complete"!==this.readyState&&"loaded"!==this.readyState||e(window.
r=document.getElementsByTagName("script")[0];r.parentNode.insertBefore(n,r)},document.addEventListener("DOMC
</script>
APACHECON North America
View events
unomi:event-tail
APACHECON North America
View profiles
unomi:profile-view
APACHECON North America
What's next for Apache Unomi ?
● Graduate to top level project !
● Improve scalability (Kafka integration)
● Implement final version of CXS spec
● Provide a web UI
APACHECON North America
CXS GraphQL API
● CXS Specification switched
from REST API to GraphQL API
a year ago -> must implement
the changes in Apache Unomi
(uses REST API for the
moment)
● GraphQL makes it easy to
integrate with very different
types of clients (web, mobile)
● Clients such as GraphiQL or
GraphQL Playground make
learning and testing GraphQL
APIs easy and fun !
APACHECON North America
New User Interface !
Jahia is considering contributing parts of
the Marketing Factory web UI to Apache
Unomi !
APACHECON North America
Our community
Don’t be shy !
Use the communication channel you prefer
Mailing lists:
users@unomi.apache.org
dev@unomi.apache.org
JIRA:
https://issues.apache.org/jira/projects/UNOMI
ASF Slack:
#unomi, https://the-asf.slack.com/messages/CBP2Z98Q7
APACHECON North America
More resources
Website : https://unomi.apache.org
Github (mirror): https://github.com/apache/incubator-unomi
OASIS Context Server Technical Committee:
https://www.oasis-
open.org/committees/tc_home.php?wg_abbrev=cxs
OASIS Context Server API on Github:
https://github.com/sergehuber/contextserver-graphql-api
APACHECON North America
Questions
… and hopefully good answers
APACHECON North America
Thanks
- Jean Baptiste for all the mentoring and dedication
throughout the years
- Bertrand Delacretaz for helping and supporting the
project
- All the contributors over the years !
- Some very active newcomers (thanks Francois Papon !
Hope they will be more soon!)
- The community of users !
THANK YOU
● SERGE HUBER
● @sergehuber
● shuber@apache.org
shuber@jahia.com

More Related Content

What's hot

Domino OSGi Development
Domino OSGi DevelopmentDomino OSGi Development
Domino OSGi DevelopmentPaul Fiore
 
HOW TO RUN RSTUDIO SERVERS ANYWHERE WITH CONTAINERS - HPC, CLOUD, AND LOCALLY
HOW TO RUN RSTUDIO SERVERS ANYWHERE WITH CONTAINERS - HPC, CLOUD, AND LOCALLYHOW TO RUN RSTUDIO SERVERS ANYWHERE WITH CONTAINERS - HPC, CLOUD, AND LOCALLY
HOW TO RUN RSTUDIO SERVERS ANYWHERE WITH CONTAINERS - HPC, CLOUD, AND LOCALLYWendy Wong
 
Server monitoring using grafana and prometheus
Server monitoring using grafana and prometheusServer monitoring using grafana and prometheus
Server monitoring using grafana and prometheusCeline George
 
ICINGA (Monitoring Basics & Reporting)
ICINGA (Monitoring Basics & Reporting) ICINGA (Monitoring Basics & Reporting)
ICINGA (Monitoring Basics & Reporting) Mohammad Awais Javaid
 
Monitor every app, in every stage, with free and open Elastic APM
Monitor every app, in every stage, with free and open Elastic APMMonitor every app, in every stage, with free and open Elastic APM
Monitor every app, in every stage, with free and open Elastic APMElasticsearch
 
Serverless Machine Learning Model Inference on Kubernetes with KServe.pdf
Serverless Machine Learning Model Inference on Kubernetes with KServe.pdfServerless Machine Learning Model Inference on Kubernetes with KServe.pdf
Serverless Machine Learning Model Inference on Kubernetes with KServe.pdfStavros Kontopoulos
 
Monitoring using Prometheus and Grafana
Monitoring using Prometheus and GrafanaMonitoring using Prometheus and Grafana
Monitoring using Prometheus and GrafanaArvind Kumar G.S
 
Optimizing Kubernetes Resource Requests/Limits for Cost-Efficiency and Latenc...
Optimizing Kubernetes Resource Requests/Limits for Cost-Efficiency and Latenc...Optimizing Kubernetes Resource Requests/Limits for Cost-Efficiency and Latenc...
Optimizing Kubernetes Resource Requests/Limits for Cost-Efficiency and Latenc...Henning Jacobs
 
Introduction to Kong API Gateway
Introduction to Kong API GatewayIntroduction to Kong API Gateway
Introduction to Kong API GatewayYohann Ciurlik
 
Building Modern Audio Apps with AVAudioEngine
Building Modern Audio Apps with AVAudioEngineBuilding Modern Audio Apps with AVAudioEngine
Building Modern Audio Apps with AVAudioEngineBob McCune
 
SSO with SAML 2.0
SSO with SAML 2.0SSO with SAML 2.0
SSO with SAML 2.0Thieu Mao
 
MuleSoft Surat Meetup#41 - Universal API Management, Anypoint Flex Gateway an...
MuleSoft Surat Meetup#41 - Universal API Management, Anypoint Flex Gateway an...MuleSoft Surat Meetup#41 - Universal API Management, Anypoint Flex Gateway an...
MuleSoft Surat Meetup#41 - Universal API Management, Anypoint Flex Gateway an...Jitendra Bafna
 
Node red with Arduino
Node red with ArduinoNode red with Arduino
Node red with ArduinoAnshu Pandey
 
DDS vs DDS4CCM
DDS vs DDS4CCMDDS vs DDS4CCM
DDS vs DDS4CCMRemedy IT
 
How IBM's Massive POWER9 UNIX Servers Benefit from InfluxDB and Grafana Techn...
How IBM's Massive POWER9 UNIX Servers Benefit from InfluxDB and Grafana Techn...How IBM's Massive POWER9 UNIX Servers Benefit from InfluxDB and Grafana Techn...
How IBM's Massive POWER9 UNIX Servers Benefit from InfluxDB and Grafana Techn...DevOps.com
 
Orion Context Broker 1.15.0
Orion Context Broker 1.15.0Orion Context Broker 1.15.0
Orion Context Broker 1.15.0Fermin Galan
 
Logs/Metrics Gathering With OpenShift EFK Stack
Logs/Metrics Gathering With OpenShift EFK StackLogs/Metrics Gathering With OpenShift EFK Stack
Logs/Metrics Gathering With OpenShift EFK StackJosef Karásek
 

What's hot (20)

Domino OSGi Development
Domino OSGi DevelopmentDomino OSGi Development
Domino OSGi Development
 
HOW TO RUN RSTUDIO SERVERS ANYWHERE WITH CONTAINERS - HPC, CLOUD, AND LOCALLY
HOW TO RUN RSTUDIO SERVERS ANYWHERE WITH CONTAINERS - HPC, CLOUD, AND LOCALLYHOW TO RUN RSTUDIO SERVERS ANYWHERE WITH CONTAINERS - HPC, CLOUD, AND LOCALLY
HOW TO RUN RSTUDIO SERVERS ANYWHERE WITH CONTAINERS - HPC, CLOUD, AND LOCALLY
 
Server monitoring using grafana and prometheus
Server monitoring using grafana and prometheusServer monitoring using grafana and prometheus
Server monitoring using grafana and prometheus
 
ICINGA (Monitoring Basics & Reporting)
ICINGA (Monitoring Basics & Reporting) ICINGA (Monitoring Basics & Reporting)
ICINGA (Monitoring Basics & Reporting)
 
Monitor every app, in every stage, with free and open Elastic APM
Monitor every app, in every stage, with free and open Elastic APMMonitor every app, in every stage, with free and open Elastic APM
Monitor every app, in every stage, with free and open Elastic APM
 
Serverless Machine Learning Model Inference on Kubernetes with KServe.pdf
Serverless Machine Learning Model Inference on Kubernetes with KServe.pdfServerless Machine Learning Model Inference on Kubernetes with KServe.pdf
Serverless Machine Learning Model Inference on Kubernetes with KServe.pdf
 
Monitoring using Prometheus and Grafana
Monitoring using Prometheus and GrafanaMonitoring using Prometheus and Grafana
Monitoring using Prometheus and Grafana
 
Optimizing Kubernetes Resource Requests/Limits for Cost-Efficiency and Latenc...
Optimizing Kubernetes Resource Requests/Limits for Cost-Efficiency and Latenc...Optimizing Kubernetes Resource Requests/Limits for Cost-Efficiency and Latenc...
Optimizing Kubernetes Resource Requests/Limits for Cost-Efficiency and Latenc...
 
Introduction to Kong API Gateway
Introduction to Kong API GatewayIntroduction to Kong API Gateway
Introduction to Kong API Gateway
 
SLE BCI
SLE BCISLE BCI
SLE BCI
 
Building Modern Audio Apps with AVAudioEngine
Building Modern Audio Apps with AVAudioEngineBuilding Modern Audio Apps with AVAudioEngine
Building Modern Audio Apps with AVAudioEngine
 
SSO with SAML 2.0
SSO with SAML 2.0SSO with SAML 2.0
SSO with SAML 2.0
 
Rethinking Cloud Proxies
Rethinking Cloud ProxiesRethinking Cloud Proxies
Rethinking Cloud Proxies
 
MuleSoft Surat Meetup#41 - Universal API Management, Anypoint Flex Gateway an...
MuleSoft Surat Meetup#41 - Universal API Management, Anypoint Flex Gateway an...MuleSoft Surat Meetup#41 - Universal API Management, Anypoint Flex Gateway an...
MuleSoft Surat Meetup#41 - Universal API Management, Anypoint Flex Gateway an...
 
Node red with Arduino
Node red with ArduinoNode red with Arduino
Node red with Arduino
 
DDS vs DDS4CCM
DDS vs DDS4CCMDDS vs DDS4CCM
DDS vs DDS4CCM
 
Kong
KongKong
Kong
 
How IBM's Massive POWER9 UNIX Servers Benefit from InfluxDB and Grafana Techn...
How IBM's Massive POWER9 UNIX Servers Benefit from InfluxDB and Grafana Techn...How IBM's Massive POWER9 UNIX Servers Benefit from InfluxDB and Grafana Techn...
How IBM's Massive POWER9 UNIX Servers Benefit from InfluxDB and Grafana Techn...
 
Orion Context Broker 1.15.0
Orion Context Broker 1.15.0Orion Context Broker 1.15.0
Orion Context Broker 1.15.0
 
Logs/Metrics Gathering With OpenShift EFK Stack
Logs/Metrics Gathering With OpenShift EFK StackLogs/Metrics Gathering With OpenShift EFK Stack
Logs/Metrics Gathering With OpenShift EFK Stack
 

Similar to Apache Unomi presentation and update. By Serge Huber, CTO Jahia

Preparing for Data Residency and Custom Domains
Preparing for Data Residency and Custom DomainsPreparing for Data Residency and Custom Domains
Preparing for Data Residency and Custom DomainsAtlassian
 
Take back the control of your customer data with Apache Unomi - Developers Me...
Take back the control of your customer data with Apache Unomi - Developers Me...Take back the control of your customer data with Apache Unomi - Developers Me...
Take back the control of your customer data with Apache Unomi - Developers Me...Jahia Solutions Group
 
01_Team_03_CS_591_Project
01_Team_03_CS_591_Project01_Team_03_CS_591_Project
01_Team_03_CS_591_Projectharsh mehta
 
Data Engineer's Lunch #81: Reverse ETL Tools for Modern Data Platforms
Data Engineer's Lunch #81: Reverse ETL Tools for Modern Data PlatformsData Engineer's Lunch #81: Reverse ETL Tools for Modern Data Platforms
Data Engineer's Lunch #81: Reverse ETL Tools for Modern Data PlatformsAnant Corporation
 
Improve your productivity with Microsoft Fow - Power to the people
Improve your productivity with Microsoft Fow - Power to the peopleImprove your productivity with Microsoft Fow - Power to the people
Improve your productivity with Microsoft Fow - Power to the peopleserge luca
 
WSO2Con EU 2015: An Introduction to the WSO2 Data Analytics Platform
WSO2Con EU 2015: An Introduction to the WSO2 Data Analytics PlatformWSO2Con EU 2015: An Introduction to the WSO2 Data Analytics Platform
WSO2Con EU 2015: An Introduction to the WSO2 Data Analytics PlatformWSO2
 
James Turner (Caplin) - Enterprise HTML5 Patterns
James Turner (Caplin) - Enterprise HTML5 PatternsJames Turner (Caplin) - Enterprise HTML5 Patterns
James Turner (Caplin) - Enterprise HTML5 Patternsakqaanoraks
 
(ARC346) Scaling To 25 Billion Daily Requests Within 3 Months On AWS
(ARC346) Scaling To 25 Billion Daily Requests Within 3 Months On AWS(ARC346) Scaling To 25 Billion Daily Requests Within 3 Months On AWS
(ARC346) Scaling To 25 Billion Daily Requests Within 3 Months On AWSAmazon Web Services
 
Introducing the Hub for Data Orchestration
Introducing the Hub for Data OrchestrationIntroducing the Hub for Data Orchestration
Introducing the Hub for Data OrchestrationAlluxio, Inc.
 
WSO2Con'14 US - Roadmap to a Connected Business
WSO2Con'14 US - Roadmap to a Connected BusinessWSO2Con'14 US - Roadmap to a Connected Business
WSO2Con'14 US - Roadmap to a Connected BusinessAsanka Abeysinghe
 
Max Prin - brightonSEO San Diego 2023 - Developing SEO Tools
Max Prin - brightonSEO San Diego 2023 - Developing SEO ToolsMax Prin - brightonSEO San Diego 2023 - Developing SEO Tools
Max Prin - brightonSEO San Diego 2023 - Developing SEO ToolsMax Prin
 
Online fast food django.docx
Online fast food django.docxOnline fast food django.docx
Online fast food django.docxvidhi184862
 
Introduction to WSO2 Analytics Platform: 2016 Q2 Update
Introduction to WSO2 Analytics Platform: 2016 Q2 UpdateIntroduction to WSO2 Analytics Platform: 2016 Q2 Update
Introduction to WSO2 Analytics Platform: 2016 Q2 UpdateSrinath Perera
 
Proof of Concept: Adobe Analytics Live Stream on Amazon Web Services
Proof of Concept: Adobe Analytics Live Stream on Amazon Web ServicesProof of Concept: Adobe Analytics Live Stream on Amazon Web Services
Proof of Concept: Adobe Analytics Live Stream on Amazon Web ServicesYASH Technologies
 
Flink Forward Berlin 2017 Keynote: Ferd Scheepers - Taking away customer fric...
Flink Forward Berlin 2017 Keynote: Ferd Scheepers - Taking away customer fric...Flink Forward Berlin 2017 Keynote: Ferd Scheepers - Taking away customer fric...
Flink Forward Berlin 2017 Keynote: Ferd Scheepers - Taking away customer fric...Flink Forward
 
Data-Driven Transformation: Leveraging Big Data at Showtime with Apache Spark
Data-Driven Transformation: Leveraging Big Data at Showtime with Apache SparkData-Driven Transformation: Leveraging Big Data at Showtime with Apache Spark
Data-Driven Transformation: Leveraging Big Data at Showtime with Apache SparkDatabricks
 
Jeremy cabral search marketing summit - scraping data-driven content (1)
Jeremy cabral   search marketing summit - scraping data-driven content (1)Jeremy cabral   search marketing summit - scraping data-driven content (1)
Jeremy cabral search marketing summit - scraping data-driven content (1)Jeremy Cabral
 

Similar to Apache Unomi presentation and update. By Serge Huber, CTO Jahia (20)

Preparing for Data Residency and Custom Domains
Preparing for Data Residency and Custom DomainsPreparing for Data Residency and Custom Domains
Preparing for Data Residency and Custom Domains
 
Take back the control of your customer data with Apache Unomi - Developers Me...
Take back the control of your customer data with Apache Unomi - Developers Me...Take back the control of your customer data with Apache Unomi - Developers Me...
Take back the control of your customer data with Apache Unomi - Developers Me...
 
01_Team_03_CS_591_Project
01_Team_03_CS_591_Project01_Team_03_CS_591_Project
01_Team_03_CS_591_Project
 
Data Engineer's Lunch #81: Reverse ETL Tools for Modern Data Platforms
Data Engineer's Lunch #81: Reverse ETL Tools for Modern Data PlatformsData Engineer's Lunch #81: Reverse ETL Tools for Modern Data Platforms
Data Engineer's Lunch #81: Reverse ETL Tools for Modern Data Platforms
 
Improve your productivity with Microsoft Fow - Power to the people
Improve your productivity with Microsoft Fow - Power to the peopleImprove your productivity with Microsoft Fow - Power to the people
Improve your productivity with Microsoft Fow - Power to the people
 
WSO2Con EU 2015: An Introduction to the WSO2 Data Analytics Platform
WSO2Con EU 2015: An Introduction to the WSO2 Data Analytics PlatformWSO2Con EU 2015: An Introduction to the WSO2 Data Analytics Platform
WSO2Con EU 2015: An Introduction to the WSO2 Data Analytics Platform
 
James Turner (Caplin) - Enterprise HTML5 Patterns
James Turner (Caplin) - Enterprise HTML5 PatternsJames Turner (Caplin) - Enterprise HTML5 Patterns
James Turner (Caplin) - Enterprise HTML5 Patterns
 
(ARC346) Scaling To 25 Billion Daily Requests Within 3 Months On AWS
(ARC346) Scaling To 25 Billion Daily Requests Within 3 Months On AWS(ARC346) Scaling To 25 Billion Daily Requests Within 3 Months On AWS
(ARC346) Scaling To 25 Billion Daily Requests Within 3 Months On AWS
 
presentation slides
presentation slidespresentation slides
presentation slides
 
Introducing the Hub for Data Orchestration
Introducing the Hub for Data OrchestrationIntroducing the Hub for Data Orchestration
Introducing the Hub for Data Orchestration
 
WSO2Con'14 US - Roadmap to a Connected Business
WSO2Con'14 US - Roadmap to a Connected BusinessWSO2Con'14 US - Roadmap to a Connected Business
WSO2Con'14 US - Roadmap to a Connected Business
 
Case study on search engine and toolbar with a chance to win prizes
Case study on search engine and toolbar with a chance to win prizesCase study on search engine and toolbar with a chance to win prizes
Case study on search engine and toolbar with a chance to win prizes
 
Max Prin - brightonSEO San Diego 2023 - Developing SEO Tools
Max Prin - brightonSEO San Diego 2023 - Developing SEO ToolsMax Prin - brightonSEO San Diego 2023 - Developing SEO Tools
Max Prin - brightonSEO San Diego 2023 - Developing SEO Tools
 
Online fast food django.docx
Online fast food django.docxOnline fast food django.docx
Online fast food django.docx
 
Introduction to WSO2 Analytics Platform: 2016 Q2 Update
Introduction to WSO2 Analytics Platform: 2016 Q2 UpdateIntroduction to WSO2 Analytics Platform: 2016 Q2 Update
Introduction to WSO2 Analytics Platform: 2016 Q2 Update
 
#TDXRecap India tour
#TDXRecap India tour#TDXRecap India tour
#TDXRecap India tour
 
Proof of Concept: Adobe Analytics Live Stream on Amazon Web Services
Proof of Concept: Adobe Analytics Live Stream on Amazon Web ServicesProof of Concept: Adobe Analytics Live Stream on Amazon Web Services
Proof of Concept: Adobe Analytics Live Stream on Amazon Web Services
 
Flink Forward Berlin 2017 Keynote: Ferd Scheepers - Taking away customer fric...
Flink Forward Berlin 2017 Keynote: Ferd Scheepers - Taking away customer fric...Flink Forward Berlin 2017 Keynote: Ferd Scheepers - Taking away customer fric...
Flink Forward Berlin 2017 Keynote: Ferd Scheepers - Taking away customer fric...
 
Data-Driven Transformation: Leveraging Big Data at Showtime with Apache Spark
Data-Driven Transformation: Leveraging Big Data at Showtime with Apache SparkData-Driven Transformation: Leveraging Big Data at Showtime with Apache Spark
Data-Driven Transformation: Leveraging Big Data at Showtime with Apache Spark
 
Jeremy cabral search marketing summit - scraping data-driven content (1)
Jeremy cabral   search marketing summit - scraping data-driven content (1)Jeremy cabral   search marketing summit - scraping data-driven content (1)
Jeremy cabral search marketing summit - scraping data-driven content (1)
 

More from Jahia Solutions Group

The Road ahead: What we see as the future of digital. By Elie Auvray
The Road ahead: What we see as the future of digital. By Elie AuvrayThe Road ahead: What we see as the future of digital. By Elie Auvray
The Road ahead: What we see as the future of digital. By Elie AuvrayJahia Solutions Group
 
Monitoring and Data-Driven Decision Making with Daniel Maher
Monitoring and Data-Driven Decision Making with Daniel MaherMonitoring and Data-Driven Decision Making with Daniel Maher
Monitoring and Data-Driven Decision Making with Daniel MaherJahia Solutions Group
 
The ultimate search of the perfect customer experience By Brian Solis
The ultimate search of the perfect customer experience By Brian SolisThe ultimate search of the perfect customer experience By Brian Solis
The ultimate search of the perfect customer experience By Brian SolisJahia Solutions Group
 
Docker, Kubernetes, Openshift: Jahia on steroids in production with Julian Ma...
Docker, Kubernetes, Openshift: Jahia on steroids in production with Julian Ma...Docker, Kubernetes, Openshift: Jahia on steroids in production with Julian Ma...
Docker, Kubernetes, Openshift: Jahia on steroids in production with Julian Ma...Jahia Solutions Group
 
Data for Dummies by Dan Katz, CDO at Safran
Data for Dummies by Dan Katz, CDO at SafranData for Dummies by Dan Katz, CDO at Safran
Data for Dummies by Dan Katz, CDO at SafranJahia Solutions Group
 
Content and commerce: The perfect combo. By Catherine Barba
Content and commerce: The perfect combo. By Catherine BarbaContent and commerce: The perfect combo. By Catherine Barba
Content and commerce: The perfect combo. By Catherine BarbaJahia Solutions Group
 
The power of great customer experience in today’s world. Olivier Mourrieras &...
The power of great customer experience in today’s world. Olivier Mourrieras &...The power of great customer experience in today’s world. Olivier Mourrieras &...
The power of great customer experience in today’s world. Olivier Mourrieras &...Jahia Solutions Group
 
Making Digital simpler. Occam’s Razor, Horses, Zebras, and Evolution
Making Digital simpler. Occam’s Razor, Horses, Zebras, and EvolutionMaking Digital simpler. Occam’s Razor, Horses, Zebras, and Evolution
Making Digital simpler. Occam’s Razor, Horses, Zebras, and EvolutionJahia Solutions Group
 
Elasticsearch powered EDP by Cedric Mailleux
Elasticsearch powered EDP by Cedric MailleuxElasticsearch powered EDP by Cedric Mailleux
Elasticsearch powered EDP by Cedric MailleuxJahia Solutions Group
 
Jahia Cloud Offerings by Julian Maurel & Abass Safoutou
Jahia Cloud Offerings by Julian Maurel & Abass SafoutouJahia Cloud Offerings by Julian Maurel & Abass Safoutou
Jahia Cloud Offerings by Julian Maurel & Abass SafoutouJahia Solutions Group
 
Learn how to go headless with Jahia DX by Serge Huber
Learn how to go headless with Jahia DX by Serge HuberLearn how to go headless with Jahia DX by Serge Huber
Learn how to go headless with Jahia DX by Serge HuberJahia Solutions Group
 
Making the life of patients easier in the healthcare sector thanks to digital...
Making the life of patients easier in the healthcare sector thanks to digital...Making the life of patients easier in the healthcare sector thanks to digital...
Making the life of patients easier in the healthcare sector thanks to digital...Jahia Solutions Group
 
Impletementing Analytics - Stop talking, Start doing! by Ben Salmon, We are C...
Impletementing Analytics - Stop talking, Start doing! by Ben Salmon, We are C...Impletementing Analytics - Stop talking, Start doing! by Ben Salmon, We are C...
Impletementing Analytics - Stop talking, Start doing! by Ben Salmon, We are C...Jahia Solutions Group
 
Strategy for content with local and global sites by Romain Gauthier
Strategy for content with local and global sites by Romain GauthierStrategy for content with local and global sites by Romain Gauthier
Strategy for content with local and global sites by Romain GauthierJahia Solutions Group
 
Personalisation and Headless in a business context by Lars Petersen
Personalisation and Headless in a business context by Lars PetersenPersonalisation and Headless in a business context by Lars Petersen
Personalisation and Headless in a business context by Lars PetersenJahia Solutions Group
 
Digital Revolution from Silo to Platform by Gilles Babinet
Digital Revolution from Silo to Platform by Gilles BabinetDigital Revolution from Silo to Platform by Gilles Babinet
Digital Revolution from Silo to Platform by Gilles BabinetJahia Solutions Group
 
A customer journey with AI by Xavier Vaccari, Softeam Group
A customer journey with AI by Xavier Vaccari, Softeam GroupA customer journey with AI by Xavier Vaccari, Softeam Group
A customer journey with AI by Xavier Vaccari, Softeam GroupJahia Solutions Group
 
Using CX to unlock Total Experience by David Balko, Tribal
Using CX to unlock Total Experience by David Balko, TribalUsing CX to unlock Total Experience by David Balko, Tribal
Using CX to unlock Total Experience by David Balko, TribalJahia Solutions Group
 
AI-monitor & Marketing Factory, customer case study by Valerie Voci
AI-monitor & Marketing Factory, customer case study by Valerie VociAI-monitor & Marketing Factory, customer case study by Valerie Voci
AI-monitor & Marketing Factory, customer case study by Valerie VociJahia Solutions Group
 
Mobile First et AMP - Developers Meetup - May 2017
Mobile First et AMP - Developers Meetup - May 2017Mobile First et AMP - Developers Meetup - May 2017
Mobile First et AMP - Developers Meetup - May 2017Jahia Solutions Group
 

More from Jahia Solutions Group (20)

The Road ahead: What we see as the future of digital. By Elie Auvray
The Road ahead: What we see as the future of digital. By Elie AuvrayThe Road ahead: What we see as the future of digital. By Elie Auvray
The Road ahead: What we see as the future of digital. By Elie Auvray
 
Monitoring and Data-Driven Decision Making with Daniel Maher
Monitoring and Data-Driven Decision Making with Daniel MaherMonitoring and Data-Driven Decision Making with Daniel Maher
Monitoring and Data-Driven Decision Making with Daniel Maher
 
The ultimate search of the perfect customer experience By Brian Solis
The ultimate search of the perfect customer experience By Brian SolisThe ultimate search of the perfect customer experience By Brian Solis
The ultimate search of the perfect customer experience By Brian Solis
 
Docker, Kubernetes, Openshift: Jahia on steroids in production with Julian Ma...
Docker, Kubernetes, Openshift: Jahia on steroids in production with Julian Ma...Docker, Kubernetes, Openshift: Jahia on steroids in production with Julian Ma...
Docker, Kubernetes, Openshift: Jahia on steroids in production with Julian Ma...
 
Data for Dummies by Dan Katz, CDO at Safran
Data for Dummies by Dan Katz, CDO at SafranData for Dummies by Dan Katz, CDO at Safran
Data for Dummies by Dan Katz, CDO at Safran
 
Content and commerce: The perfect combo. By Catherine Barba
Content and commerce: The perfect combo. By Catherine BarbaContent and commerce: The perfect combo. By Catherine Barba
Content and commerce: The perfect combo. By Catherine Barba
 
The power of great customer experience in today’s world. Olivier Mourrieras &...
The power of great customer experience in today’s world. Olivier Mourrieras &...The power of great customer experience in today’s world. Olivier Mourrieras &...
The power of great customer experience in today’s world. Olivier Mourrieras &...
 
Making Digital simpler. Occam’s Razor, Horses, Zebras, and Evolution
Making Digital simpler. Occam’s Razor, Horses, Zebras, and EvolutionMaking Digital simpler. Occam’s Razor, Horses, Zebras, and Evolution
Making Digital simpler. Occam’s Razor, Horses, Zebras, and Evolution
 
Elasticsearch powered EDP by Cedric Mailleux
Elasticsearch powered EDP by Cedric MailleuxElasticsearch powered EDP by Cedric Mailleux
Elasticsearch powered EDP by Cedric Mailleux
 
Jahia Cloud Offerings by Julian Maurel & Abass Safoutou
Jahia Cloud Offerings by Julian Maurel & Abass SafoutouJahia Cloud Offerings by Julian Maurel & Abass Safoutou
Jahia Cloud Offerings by Julian Maurel & Abass Safoutou
 
Learn how to go headless with Jahia DX by Serge Huber
Learn how to go headless with Jahia DX by Serge HuberLearn how to go headless with Jahia DX by Serge Huber
Learn how to go headless with Jahia DX by Serge Huber
 
Making the life of patients easier in the healthcare sector thanks to digital...
Making the life of patients easier in the healthcare sector thanks to digital...Making the life of patients easier in the healthcare sector thanks to digital...
Making the life of patients easier in the healthcare sector thanks to digital...
 
Impletementing Analytics - Stop talking, Start doing! by Ben Salmon, We are C...
Impletementing Analytics - Stop talking, Start doing! by Ben Salmon, We are C...Impletementing Analytics - Stop talking, Start doing! by Ben Salmon, We are C...
Impletementing Analytics - Stop talking, Start doing! by Ben Salmon, We are C...
 
Strategy for content with local and global sites by Romain Gauthier
Strategy for content with local and global sites by Romain GauthierStrategy for content with local and global sites by Romain Gauthier
Strategy for content with local and global sites by Romain Gauthier
 
Personalisation and Headless in a business context by Lars Petersen
Personalisation and Headless in a business context by Lars PetersenPersonalisation and Headless in a business context by Lars Petersen
Personalisation and Headless in a business context by Lars Petersen
 
Digital Revolution from Silo to Platform by Gilles Babinet
Digital Revolution from Silo to Platform by Gilles BabinetDigital Revolution from Silo to Platform by Gilles Babinet
Digital Revolution from Silo to Platform by Gilles Babinet
 
A customer journey with AI by Xavier Vaccari, Softeam Group
A customer journey with AI by Xavier Vaccari, Softeam GroupA customer journey with AI by Xavier Vaccari, Softeam Group
A customer journey with AI by Xavier Vaccari, Softeam Group
 
Using CX to unlock Total Experience by David Balko, Tribal
Using CX to unlock Total Experience by David Balko, TribalUsing CX to unlock Total Experience by David Balko, Tribal
Using CX to unlock Total Experience by David Balko, Tribal
 
AI-monitor & Marketing Factory, customer case study by Valerie Voci
AI-monitor & Marketing Factory, customer case study by Valerie VociAI-monitor & Marketing Factory, customer case study by Valerie Voci
AI-monitor & Marketing Factory, customer case study by Valerie Voci
 
Mobile First et AMP - Developers Meetup - May 2017
Mobile First et AMP - Developers Meetup - May 2017Mobile First et AMP - Developers Meetup - May 2017
Mobile First et AMP - Developers Meetup - May 2017
 

Recently uploaded

VIP Call Girls Gandi Maisamma ( Hyderabad ) Phone 8250192130 | ₹5k To 25k Wit...
VIP Call Girls Gandi Maisamma ( Hyderabad ) Phone 8250192130 | ₹5k To 25k Wit...VIP Call Girls Gandi Maisamma ( Hyderabad ) Phone 8250192130 | ₹5k To 25k Wit...
VIP Call Girls Gandi Maisamma ( Hyderabad ) Phone 8250192130 | ₹5k To 25k Wit...Suhani Kapoor
 
9599632723 Top Call Girls in Delhi at your Door Step Available 24x7 Delhi
9599632723 Top Call Girls in Delhi at your Door Step Available 24x7 Delhi9599632723 Top Call Girls in Delhi at your Door Step Available 24x7 Delhi
9599632723 Top Call Girls in Delhi at your Door Step Available 24x7 DelhiCall Girls in Delhi
 
0183760ssssssssssssssssssssssssssss00101011 (27).pdf
0183760ssssssssssssssssssssssssssss00101011 (27).pdf0183760ssssssssssssssssssssssssssss00101011 (27).pdf
0183760ssssssssssssssssssssssssssss00101011 (27).pdfRenandantas16
 
HONOR Veterans Event Keynote by Michael Hawkins
HONOR Veterans Event Keynote by Michael HawkinsHONOR Veterans Event Keynote by Michael Hawkins
HONOR Veterans Event Keynote by Michael HawkinsMichael W. Hawkins
 
The Coffee Bean & Tea Leaf(CBTL), Business strategy case study
The Coffee Bean & Tea Leaf(CBTL), Business strategy case studyThe Coffee Bean & Tea Leaf(CBTL), Business strategy case study
The Coffee Bean & Tea Leaf(CBTL), Business strategy case studyEthan lee
 
A305_A2_file_Batkhuu progress report.pdf
A305_A2_file_Batkhuu progress report.pdfA305_A2_file_Batkhuu progress report.pdf
A305_A2_file_Batkhuu progress report.pdftbatkhuu1
 
Creating Low-Code Loan Applications using the Trisotech Mortgage Feature Set
Creating Low-Code Loan Applications using the Trisotech Mortgage Feature SetCreating Low-Code Loan Applications using the Trisotech Mortgage Feature Set
Creating Low-Code Loan Applications using the Trisotech Mortgage Feature SetDenis Gagné
 
7.pdf This presentation captures many uses and the significance of the number...
7.pdf This presentation captures many uses and the significance of the number...7.pdf This presentation captures many uses and the significance of the number...
7.pdf This presentation captures many uses and the significance of the number...Paul Menig
 
A DAY IN THE LIFE OF A SALESMAN / WOMAN
A DAY IN THE LIFE OF A  SALESMAN / WOMANA DAY IN THE LIFE OF A  SALESMAN / WOMAN
A DAY IN THE LIFE OF A SALESMAN / WOMANIlamathiKannappan
 
Progress Report - Oracle Database Analyst Summit
Progress  Report - Oracle Database Analyst SummitProgress  Report - Oracle Database Analyst Summit
Progress Report - Oracle Database Analyst SummitHolger Mueller
 
Grateful 7 speech thanking everyone that has helped.pdf
Grateful 7 speech thanking everyone that has helped.pdfGrateful 7 speech thanking everyone that has helped.pdf
Grateful 7 speech thanking everyone that has helped.pdfPaul Menig
 
Boost the utilization of your HCL environment by reevaluating use cases and f...
Boost the utilization of your HCL environment by reevaluating use cases and f...Boost the utilization of your HCL environment by reevaluating use cases and f...
Boost the utilization of your HCL environment by reevaluating use cases and f...Roland Driesen
 
Monthly Social Media Update April 2024 pptx.pptx
Monthly Social Media Update April 2024 pptx.pptxMonthly Social Media Update April 2024 pptx.pptx
Monthly Social Media Update April 2024 pptx.pptxAndy Lambert
 
Call Girls Navi Mumbai Just Call 9907093804 Top Class Call Girl Service Avail...
Call Girls Navi Mumbai Just Call 9907093804 Top Class Call Girl Service Avail...Call Girls Navi Mumbai Just Call 9907093804 Top Class Call Girl Service Avail...
Call Girls Navi Mumbai Just Call 9907093804 Top Class Call Girl Service Avail...Dipal Arora
 
Mysore Call Girls 8617370543 WhatsApp Number 24x7 Best Services
Mysore Call Girls 8617370543 WhatsApp Number 24x7 Best ServicesMysore Call Girls 8617370543 WhatsApp Number 24x7 Best Services
Mysore Call Girls 8617370543 WhatsApp Number 24x7 Best ServicesDipal Arora
 
Call Girls Pune Just Call 9907093804 Top Class Call Girl Service Available
Call Girls Pune Just Call 9907093804 Top Class Call Girl Service AvailableCall Girls Pune Just Call 9907093804 Top Class Call Girl Service Available
Call Girls Pune Just Call 9907093804 Top Class Call Girl Service AvailableDipal Arora
 
Mondelez State of Snacking and Future Trends 2023
Mondelez State of Snacking and Future Trends 2023Mondelez State of Snacking and Future Trends 2023
Mondelez State of Snacking and Future Trends 2023Neil Kimberley
 
M.C Lodges -- Guest House in Jhang.
M.C Lodges --  Guest House in Jhang.M.C Lodges --  Guest House in Jhang.
M.C Lodges -- Guest House in Jhang.Aaiza Hassan
 
Famous Olympic Siblings from the 21st Century
Famous Olympic Siblings from the 21st CenturyFamous Olympic Siblings from the 21st Century
Famous Olympic Siblings from the 21st Centuryrwgiffor
 

Recently uploaded (20)

VIP Call Girls Gandi Maisamma ( Hyderabad ) Phone 8250192130 | ₹5k To 25k Wit...
VIP Call Girls Gandi Maisamma ( Hyderabad ) Phone 8250192130 | ₹5k To 25k Wit...VIP Call Girls Gandi Maisamma ( Hyderabad ) Phone 8250192130 | ₹5k To 25k Wit...
VIP Call Girls Gandi Maisamma ( Hyderabad ) Phone 8250192130 | ₹5k To 25k Wit...
 
9599632723 Top Call Girls in Delhi at your Door Step Available 24x7 Delhi
9599632723 Top Call Girls in Delhi at your Door Step Available 24x7 Delhi9599632723 Top Call Girls in Delhi at your Door Step Available 24x7 Delhi
9599632723 Top Call Girls in Delhi at your Door Step Available 24x7 Delhi
 
0183760ssssssssssssssssssssssssssss00101011 (27).pdf
0183760ssssssssssssssssssssssssssss00101011 (27).pdf0183760ssssssssssssssssssssssssssss00101011 (27).pdf
0183760ssssssssssssssssssssssssssss00101011 (27).pdf
 
HONOR Veterans Event Keynote by Michael Hawkins
HONOR Veterans Event Keynote by Michael HawkinsHONOR Veterans Event Keynote by Michael Hawkins
HONOR Veterans Event Keynote by Michael Hawkins
 
The Coffee Bean & Tea Leaf(CBTL), Business strategy case study
The Coffee Bean & Tea Leaf(CBTL), Business strategy case studyThe Coffee Bean & Tea Leaf(CBTL), Business strategy case study
The Coffee Bean & Tea Leaf(CBTL), Business strategy case study
 
A305_A2_file_Batkhuu progress report.pdf
A305_A2_file_Batkhuu progress report.pdfA305_A2_file_Batkhuu progress report.pdf
A305_A2_file_Batkhuu progress report.pdf
 
Creating Low-Code Loan Applications using the Trisotech Mortgage Feature Set
Creating Low-Code Loan Applications using the Trisotech Mortgage Feature SetCreating Low-Code Loan Applications using the Trisotech Mortgage Feature Set
Creating Low-Code Loan Applications using the Trisotech Mortgage Feature Set
 
7.pdf This presentation captures many uses and the significance of the number...
7.pdf This presentation captures many uses and the significance of the number...7.pdf This presentation captures many uses and the significance of the number...
7.pdf This presentation captures many uses and the significance of the number...
 
A DAY IN THE LIFE OF A SALESMAN / WOMAN
A DAY IN THE LIFE OF A  SALESMAN / WOMANA DAY IN THE LIFE OF A  SALESMAN / WOMAN
A DAY IN THE LIFE OF A SALESMAN / WOMAN
 
Progress Report - Oracle Database Analyst Summit
Progress  Report - Oracle Database Analyst SummitProgress  Report - Oracle Database Analyst Summit
Progress Report - Oracle Database Analyst Summit
 
Grateful 7 speech thanking everyone that has helped.pdf
Grateful 7 speech thanking everyone that has helped.pdfGrateful 7 speech thanking everyone that has helped.pdf
Grateful 7 speech thanking everyone that has helped.pdf
 
Boost the utilization of your HCL environment by reevaluating use cases and f...
Boost the utilization of your HCL environment by reevaluating use cases and f...Boost the utilization of your HCL environment by reevaluating use cases and f...
Boost the utilization of your HCL environment by reevaluating use cases and f...
 
Monthly Social Media Update April 2024 pptx.pptx
Monthly Social Media Update April 2024 pptx.pptxMonthly Social Media Update April 2024 pptx.pptx
Monthly Social Media Update April 2024 pptx.pptx
 
Call Girls Navi Mumbai Just Call 9907093804 Top Class Call Girl Service Avail...
Call Girls Navi Mumbai Just Call 9907093804 Top Class Call Girl Service Avail...Call Girls Navi Mumbai Just Call 9907093804 Top Class Call Girl Service Avail...
Call Girls Navi Mumbai Just Call 9907093804 Top Class Call Girl Service Avail...
 
unwanted pregnancy Kit [+918133066128] Abortion Pills IN Dubai UAE Abudhabi
unwanted pregnancy Kit [+918133066128] Abortion Pills IN Dubai UAE Abudhabiunwanted pregnancy Kit [+918133066128] Abortion Pills IN Dubai UAE Abudhabi
unwanted pregnancy Kit [+918133066128] Abortion Pills IN Dubai UAE Abudhabi
 
Mysore Call Girls 8617370543 WhatsApp Number 24x7 Best Services
Mysore Call Girls 8617370543 WhatsApp Number 24x7 Best ServicesMysore Call Girls 8617370543 WhatsApp Number 24x7 Best Services
Mysore Call Girls 8617370543 WhatsApp Number 24x7 Best Services
 
Call Girls Pune Just Call 9907093804 Top Class Call Girl Service Available
Call Girls Pune Just Call 9907093804 Top Class Call Girl Service AvailableCall Girls Pune Just Call 9907093804 Top Class Call Girl Service Available
Call Girls Pune Just Call 9907093804 Top Class Call Girl Service Available
 
Mondelez State of Snacking and Future Trends 2023
Mondelez State of Snacking and Future Trends 2023Mondelez State of Snacking and Future Trends 2023
Mondelez State of Snacking and Future Trends 2023
 
M.C Lodges -- Guest House in Jhang.
M.C Lodges --  Guest House in Jhang.M.C Lodges --  Guest House in Jhang.
M.C Lodges -- Guest House in Jhang.
 
Famous Olympic Siblings from the 21st Century
Famous Olympic Siblings from the 21st CenturyFamous Olympic Siblings from the 21st Century
Famous Olympic Siblings from the 21st Century
 

Apache Unomi presentation and update. By Serge Huber, CTO Jahia

  • 1. APACHECON North America Sept. 24-27, 2018 Apache Unomi: a Customer Data Platform … ● Serge Huber Apache Unomi / Jahia @sergehuber shuber@apache.org
  • 2. APACHECON North America Introduction 20 years Web Dev experience Coder at heart (since I’m 7) Very intested in User experiences Co-founder & CTO of Jahia Apache Committer (Jackrabbit, Unomi) Co-chair OASIS Context Server TC
  • 3. APACHECON North America What is a Customer Data Platform ? ● From Wikipedia: “Customer Data Platform (CDP) is a marketer-based management system. It creates a persistent, unified customer database that is accessible to other systems. Data is pulled from multiple sources, cleaned and combined to create a single customer profile. This structured data is then made available to other marketing systems. CDP provides real-time segmentation for personalized marketing. CDP is currently a $300 million industry and projected to reach $1 billion by 2019”
  • 4. APACHECON North America Why do I need one ? ● If you want to... ○ learn more about your visitors ○ deliver personalized experiences on your website or mobile app ○ make sure you comply with stricter regulations now in place (GDPR) or upcoming ○ be in control of your analytics and personalization (instead of giving away your data to others like Google Analytics) ○ avoid reinventing the wheel by building your own customer database, related hooks and segmentation
  • 5. APACHECON North America What is Apache Unomi ? ● Apache Unomi is an open source CDP ● A Java platform based on a completely modular and highly scalable architecture ● Is the reference implementation of the ConteXt Server specification standard (CXS) ● Is event-based and uses ElasticSearch as a scalable backend for persistence and querying
  • 6. APACHECON North America What is CXS ? ● The ConteXt Server Specification (to be renamed to CDP standard !) ● Being established at the OASIS Foundation ● Defines a standard to deliver personalized experiences ● Allow for interoperability and customer data exchanges
  • 7. APACHECON North America Why was the project started at Apache ? ● No open source implementation existed ! ● Apache is well recognized to provide platform solutions ● Apache is truly independant (eg. Github == Microsoft) ● Apache provides highly recognized and solid infrastructure ● Community is great, good things will automatically happen to the code
  • 8. APACHECON North America Apache Unomi functionalities
  • 9. APACHECON North America Why privacy is now critical ! ● GDPR : A new EU directive that imposes strict conditions on dealing with customer data ● Fines are very expensive, up to 4% of annual company turnover or €20 million, whichever is higher ! ● Consent for data usage is now explicitly required -> lots of ugly/buggy popups on web browsers, and most are not compliant ! ● Users must be able to download their profiles or delete them !
  • 10. APACHECON North America Unomi supports all that ! ● Profile properties management ● Defines “personal identifiers” properties ● “Anonymize my profile” endpoint (erase any personal identifier) ● Consent management (get AND update) ● “Private browsing” ● Downloading profile
  • 11. APACHECON North America Consent Management UI Consent definition (outside of Unomi’s scope)
  • 12. APACHECON North America Consent Management UI Built on top of Unomi’s Consent API End user user interface (updated through consent events) Reporting
  • 13. APACHECON North America Performance & scalability ● At Jahia we test Apache Unomi on a weekly basis with over 5 million profiles ● Server is designed to be scalable ● ElasticSearch cluster allows growth to achieve proper scalability ● Known bottlenecks: ○ ingestion speed ○ rule processing ● Solutions: ○ Add more ES & Unomi nodes
  • 14. APACHECON North America Use case : web site tracking & personalization
  • 15. APACHECON North America Use case : mobile app & personalization Mobile app CMS Apache Unomi Send profile id & session id Get context for profile Send app active event Send screen change event Get personalized content or screen Execute filters for profile Get personalized content or screens
  • 16. APACHECON North America Architecture ElasticSearch cluster Apache Karaf (cluster) CXS REST API (using Apache CXF + Servlets) (Dev) Shell Commands Rule Engine Profile Service Segment Service Definitions Service (conditions, actions) Query Service Event Service Personalization Service Goals Service Salesforce Actions Weather Actions Mailchimp Actions
  • 17. APACHECON North America Look Inside Custom plugins may: - Implement rule conditions - Implement rule actions - Deploy rules - Do anything an OSGi bundle may do (define new servlets, APIs, karaf shell commands…)
  • 18. APACHECON North America Example deployments http / Unomi public / port 8181 Unomi Private url CMS - Node 1 + MF Modules CMS - Node 2 + MF Modules CMS - Node 3 + MF Modules Unomi 3 ES Data Unomi 2 ES Data Unomi 1 ES Data Unomi Public url CMS Public url www Internal network http or https https / Unomi admin / port 9443 Architecture Layers & Ports Apache HTTP Server Visitors browsers http or https tcp / ES Transport / port 9300 tcp / RMI + Hazelcast / ports 1099 + 5700-5800 Apache Unomi nodes ElasticSearch nodes CMS nodes tcp / ES Transport / port 9300 tcp / Hazelcast / ports 5700-5800 https / DX public / port 8080
  • 19. APACHECON North America Profiles - Generic properties - Goals - Segments - Scores - Consents { "itemId" : "48563fd0-6319-4260-8dba-ae421beba26f", "itemType" : "profile", "version" : 91, "properties" : { "nbOfVisits" : 42, "pageViewCount" : { "digitall" : 7, "systemscope" : 7 }, "lastVisit" : "2018-09-25T09:23:33Z", "firstVisit" : "2018-02-10T17:15:25Z", "preferredLanguage" : "en", "previousVisit" : "2018-09-25T09:21:39Z", "j:email" : "shuber@apache.org", "emailNotificationsDisabled" : "false", "j:organization" : "Jahia", "j:firstName" : "Serge", "j:lastName" : "Huber", "j:nodename" : "root" }, "systemProperties" : { "goals" : { "pageview_1519726765394StartReached" : "2018-09-25T09:23:33Z", "_gu4inatp1TargetReached" : "2018-04-04T13:57:18Z", }, "mergeIdentifier" : "root" }, "segments" : [ “over30”, “male”, “technology” ], "scores" : { "scoring_1" : 0, "scoring_0" : 0, }, "mergedWith" : null, "consents" : { "digitall/tracking" : { "scope" : "digitall", "typeIdentifier" : "tracking", "status" : "GRANTED", "statusDate" : "2018-01-19T14:54:01Z", "revokeDate" : "2020-01-19T14:54:01Z" }, "digitall/newsletter" : { "scope" : "digitall", "typeIdentifier" : "newsletter", "status" : "DENIED", "statusDate" : "2018-01-22T16:15:05Z", "revokeDate" : "2020-01-22T16:15:05Z" } } }
  • 20. APACHECON North America Segments Defined as conditions on profiles: Rich people over 30: a profile has income > 200’000 AND his age is over 30 An active visitor interested in technology: a profile has read 10 pages with the tag “technology” AND he has created 10 session in the last 10 days
  • 21. APACHECON North America Rule Engine when condition is true then actions are executed in REAL-TIME !
  • 22. APACHECON North America Rule Engine when a page event occurs then increment profile page count
  • 23. APACHECON North America Rule Engine when a login event occurs AND it comes from a trusted third party then 1. copy login account information into profile 2. merge with other pre-existing profiles 3. send updated profile to external system (CRM)
  • 24. APACHECON North America Conditions Organized as a tree Condition types: - boolean (and, or, not) - on event/session/profile property values (equals, in list, etc…) - on existence of previous events for a profile - extensible, you can build your own ! AND age > 30 income > 200’000 has come back to the site 3 times in the last month
  • 25. APACHECON North America Actions - executed when a rule condition is satisfied - executed as a list of actions, executed sequentially - actions can: - update the current profile - push or pull data to a different system - be extended using plugins ! Action sequence example: 1. Retrieve data from form event and copy into profile 2. Update profile segments 3. Send updated profile to Salesforce account
  • 26. APACHECON North America Integrations Out of the box: - Salesforce CRM integration - Twitter sample - Weather API (enrich session) - Mailchimp (update lists) Easy to build your own using custom actions and plug into rules !
  • 27. APACHECON North America Jahia Marketing Factory ● Basically a UI built on top of Apache Unomi’s REST API ● Uses AngularJS as a front-end framework ● Provides tight integration with the CMS
  • 28. APACHECON North America Others - Building an advertisement server using Apache Unomi - Evaluating Unomi to build personalization for a TV network’s website Are you using/interested in Apache Unomi ? Please let us know and reach out for help !
  • 29. APACHECON North America Let's integrate now ! Let’s add Apache Unomi to an existing website -> let’s use it for tracking -> let’s see how we can view events coming in -> let’s look at profile examples -> let’s use profile information to build personalization !
  • 31. APACHECON North America Add Javascript to send events to Apache Unomi Unomi tracker is an extension of the open source Analytics.js tracking script <script type="text/javascript"> var unomiOption = { scope: 'unomiWebSite', url: 'http://localhost:8181' }; window.unomiTracker||(window.unomiTracker={}),function(){function e(e){for(unomiTracker.initialize({"Apache Uno r=n.shift(),t=r.shift();unomiTracker[t]&&unomiTracker[t].apply(unomiTracker,r)}}for(var n=[],r=["trackSubmit","trackClick","trackLink","trackForm","initialize","pageview","identify","reset","group","track","ready length;t++){var i=r[t];window.unomiTracker[i]=function(e){return function(){var r=Array.prototype.slice.call(arguments); r.unshift(e),n.push(r),window.unomiTracker}}(i)}unomiTracker.load=function(){var n=document.createElement("script");n.type="text/javascript",n.async=!0,n.src=unomiOption.url+"/tracker/unomi- tracker.min.js",n.addEventListener?n.addEventListener("load",function(n){"function"==typeof e&&e(n)},!1):n.onreadystatechange=function(){"complete"!==this.readyState&&"loaded"!==this.readyState||e(window. r=document.getElementsByTagName("script")[0];r.parentNode.insertBefore(n,r)},document.addEventListener("DOMC </script>
  • 32. APACHECON North America View events unomi:event-tail
  • 33. APACHECON North America View profiles unomi:profile-view
  • 34. APACHECON North America What's next for Apache Unomi ? ● Graduate to top level project ! ● Improve scalability (Kafka integration) ● Implement final version of CXS spec ● Provide a web UI
  • 35. APACHECON North America CXS GraphQL API ● CXS Specification switched from REST API to GraphQL API a year ago -> must implement the changes in Apache Unomi (uses REST API for the moment) ● GraphQL makes it easy to integrate with very different types of clients (web, mobile) ● Clients such as GraphiQL or GraphQL Playground make learning and testing GraphQL APIs easy and fun !
  • 36. APACHECON North America New User Interface ! Jahia is considering contributing parts of the Marketing Factory web UI to Apache Unomi !
  • 37. APACHECON North America Our community Don’t be shy ! Use the communication channel you prefer Mailing lists: users@unomi.apache.org dev@unomi.apache.org JIRA: https://issues.apache.org/jira/projects/UNOMI ASF Slack: #unomi, https://the-asf.slack.com/messages/CBP2Z98Q7
  • 38. APACHECON North America More resources Website : https://unomi.apache.org Github (mirror): https://github.com/apache/incubator-unomi OASIS Context Server Technical Committee: https://www.oasis- open.org/committees/tc_home.php?wg_abbrev=cxs OASIS Context Server API on Github: https://github.com/sergehuber/contextserver-graphql-api
  • 39. APACHECON North America Questions … and hopefully good answers
  • 40. APACHECON North America Thanks - Jean Baptiste for all the mentoring and dedication throughout the years - Bertrand Delacretaz for helping and supporting the project - All the contributors over the years ! - Some very active newcomers (thanks Francois Papon ! Hope they will be more soon!) - The community of users !
  • 41. THANK YOU ● SERGE HUBER ● @sergehuber ● shuber@apache.org shuber@jahia.com