SlideShare a Scribd company logo
© 2002-2018 Jahia© 2002-2018 Jahia
Elasticsearch
powered EDP
By Cedric Mailleux
© 2002-2018 Jahia© 2002-2018 Jahia
1.
Introduction
© 2002-2018 Jahia© 2002-2018 Jahia
External Data Provider
EDPs are a way of accessing content from outside DX as local content
With the External Data Provider, external data can be accessed,
manipulated and searched as if they were directly stored in the DX
repository
© 2002-2018 Jahia© 2002-2018 Jahia
Commerce Platform
Many datasets (Products/Catalogs/Customers/Orders/…)
Sometimes many entry points of data need to be accessed to make sense of
it
For examples :
● Get the catalog structure
● Get the products
© 2002-2018 Jahia© 2002-2018 Jahia
Elasticsearch
Elasticsearch is a distributed, RESTful search and analytics engine capable of
solving a growing number of use cases. As the heart of the Elastic Stack, it
centrally stores your data so you can discover the expected and uncover the
unexpected.
© 2002-2018 Jahia© 2002-2018 Jahia
2.
Elasticsearch/EDP
© 2002-2018 Jahia© 2002-2018 Jahia
Why use Elasticsearch
Most data of the catalog/product are static, it did not make sense to query
them everytime, a cache will help but won’t give us extra capabilities
Whereas Elasticsearch allows to index data the way we want to find them.
It also offers the possibility to query multiple indices at the same time
© 2002-2018 Jahia© 2002-2018 Jahia
Challenges
Elasticsearch indices must be as flat as possible so you need to denormalize
your objects.
In our case for each products category we expands the whole categories
information instead of having only the identifier
{ "categoryType": "categories",
"shortIdUrl": "/categories/330000/330100",
"code": "330100",
"shortUrl": "/Categories/Snowwear-youth/Snow-Jackets-youth",
"name": "Snow Jackets youth",
"categoryIdType": "categories"
}
© 2002-2018 Jahia© 2002-2018 Jahia
Another challenge was that JCR is a tree structure, not meant to handle
100K or more of flat products
Chosen solution is to generate a system path for each product based on hash
of their sku
"mountedPath": "/p/cd/jb/ie/95366_honeydew",
"vanityUrl": "/product/en/95366_honeydew.html"
And also associate a vanity URL for SEO purposes
Challenges
© 2002-2018 Jahia© 2002-2018 Jahia
Catalogue browsing
● Only the catalog is browsable,
mounted in the site
© 2002-2018 Jahia© 2002-2018 Jahia
Product browsing
● Products are only searchable
○ New product picker
© 2002-2018 Jahia© 2002-2018 Jahia
Enrich data
Getting the data out of the ecommerce platform for the products and
catalog allows also to enrich them, like tagging the photo automatically with
IBM Watson, this can be done in a 3rd index to avoid going back to IBM
Watson unless the product information changed
© 2002-2018 Jahia© 2002-2018 Jahia
3.
Implementation
© 2002-2018 Jahia© 2002-2018 Jahia
EDP
Mapping data from indices to
JCR nodes
Catalog Tree browsing
Products/Medias nodes
Uses Elasticsearch connector
module for access to
Elasticsearch cluster
© 2002-2018 Jahia© 2002-2018 Jahia
Indexation process
First indexation happens upon saving the settings
DX request the catalog from the ecommerce system
Products are loaded in parallel with paginated queries
30s for 2K SKUs
After first indexation, a background job is checking every 5 minutes if there
is changes if yes we reindex in new indices and switch the active indices
when indexing is over
© 2002-2018 Jahia© 2002-2018 Jahia
EDP - Vanity/I18N
DX mixin for vanity URLS
Lazy properties for I18N
Ensure products have human
readable URLs in different
languages
© 2002-2018 Jahia© 2002-2018 Jahia
EDP - Federated search
Send events to DX to index the
products as contents
Allowing to search products and
content using the full text
search API and the DX
Elasticsearch provider
© 2002-2018 Jahia© 2002-2018 Jahia
Experience components
Provide macros to include
products everywhere as
references
Exposing GraphQL endpoints to
have dedicated Commerce API
bypassing JCR and requesting
Elasticsearch directly
Find products, facets
Get up to date info for price and
stock by requesting Ecommerce
backend if needed
© 2002-2018 Jahia© 2002-2018 Jahia
GraphQL example
query products {
cioProducts(connection:"commio01",index:"apparelukfull_alias_en",ca
tegory:"/brands",limit:100,offset:0){
sku
name
vanityUrl
mountedPath
}
}
query facets {
cioShopByCategory(connection:"commio01",index:"apparelukfull_alias_
en",category:"/categories",type:"categories") {
docCount
key
category {
name
children {
name
}
}
}
}
© 2002-2018 Jahia© 2002-2018 Jahia
Questions
Answers

More Related Content

What's hot

Apex Connector for Lightning Connect: Make Anything a Salesforce Object
Apex Connector for Lightning Connect: Make Anything a Salesforce ObjectApex Connector for Lightning Connect: Make Anything a Salesforce Object
Apex Connector for Lightning Connect: Make Anything a Salesforce Object
Salesforce Developers
 
Salesforce Connect External Object Reports
Salesforce Connect External Object ReportsSalesforce Connect External Object Reports
Salesforce Connect External Object Reports
Sumit Sarkar
 
Migrating Fast to Solr
Migrating Fast to SolrMigrating Fast to Solr
Migrating Fast to Solr
Cominvent AS
 
OData, External objects & Lightning Connect
OData, External objects & Lightning ConnectOData, External objects & Lightning Connect
OData, External objects & Lightning Connect
Prasanna Deshpande ☁
 
Search engine optimization (seo) from Endeca & ATG
Search engine optimization (seo) from Endeca & ATGSearch engine optimization (seo) from Endeca & ATG
Search engine optimization (seo) from Endeca & ATG
Vignesh sitaraman
 
Real-time SQL Access to Your Salesforce.com Data Using Progress Data Direct
Real-time SQL Access to Your Salesforce.com Data Using Progress Data DirectReal-time SQL Access to Your Salesforce.com Data Using Progress Data Direct
Real-time SQL Access to Your Salesforce.com Data Using Progress Data Direct
Salesforce Developers
 
Develop Integrations for Salesforce and AWS (API320) - AWS re:Invent 2018
Develop Integrations for Salesforce and AWS (API320) - AWS re:Invent 2018Develop Integrations for Salesforce and AWS (API320) - AWS re:Invent 2018
Develop Integrations for Salesforce and AWS (API320) - AWS re:Invent 2018
Amazon Web Services
 
João Faria - Syone - OSL19
João Faria - Syone - OSL19João Faria - Syone - OSL19
João Faria - Syone - OSL19
marketingsyone
 
Integrating Salesforce With Business Intelligence and Data Warehouses
Integrating Salesforce With Business Intelligence and Data WarehousesIntegrating Salesforce With Business Intelligence and Data Warehouses
Integrating Salesforce With Business Intelligence and Data Warehouses
Salesforce Developers
 
Database@Home - Data Driven : Loading, Indexing, and Searching with Text and ...
Database@Home - Data Driven : Loading, Indexing, and Searching with Text and ...Database@Home - Data Driven : Loading, Indexing, and Searching with Text and ...
Database@Home - Data Driven : Loading, Indexing, and Searching with Text and ...
Tammy Bednar
 
Database@Home - Data Driven Reference Architecture
Database@Home - Data Driven Reference ArchitectureDatabase@Home - Data Driven Reference Architecture
Database@Home - Data Driven Reference Architecture
Tammy Bednar
 
The latest in Retain & GWAVA
The latest in Retain & GWAVAThe latest in Retain & GWAVA
The latest in Retain & GWAVA
GWAVA
 
Oracle Data Integration CON9737 at OpenWorld
Oracle Data Integration CON9737 at OpenWorldOracle Data Integration CON9737 at OpenWorld
Oracle Data Integration CON9737 at OpenWorld
Jeffrey T. Pollock
 
Tiago Fonseca & Rui Velho - Syone & Leroy Merlin - OSL19
Tiago Fonseca & Rui Velho - Syone & Leroy Merlin - OSL19Tiago Fonseca & Rui Velho - Syone & Leroy Merlin - OSL19
Tiago Fonseca & Rui Velho - Syone & Leroy Merlin - OSL19
marketingsyone
 
OData: A Standard API for Data Access
OData: A Standard API for Data AccessOData: A Standard API for Data Access
OData: A Standard API for Data Access
Pat Patterson
 
Viadeo - The Kasper way
Viadeo - The Kasper wayViadeo - The Kasper way
Viadeo - The Kasper way
Loïc Dias Da Silva
 
[NEW LAUNCH!] Building modern applications using Amazon DynamoDB transactions...
[NEW LAUNCH!] Building modern applications using Amazon DynamoDB transactions...[NEW LAUNCH!] Building modern applications using Amazon DynamoDB transactions...
[NEW LAUNCH!] Building modern applications using Amazon DynamoDB transactions...
Amazon Web Services
 
Snowflake for Data Engineering
Snowflake for Data EngineeringSnowflake for Data Engineering
Snowflake for Data Engineering
Harald Erb
 
Access External Data in Real-time with Lightning Connect
Access External Data in Real-time with Lightning ConnectAccess External Data in Real-time with Lightning Connect
Access External Data in Real-time with Lightning Connect
Salesforce Developers
 
Anypoint platform for api
Anypoint platform for apiAnypoint platform for api
Anypoint platform for api
Krishna_in
 

What's hot (20)

Apex Connector for Lightning Connect: Make Anything a Salesforce Object
Apex Connector for Lightning Connect: Make Anything a Salesforce ObjectApex Connector for Lightning Connect: Make Anything a Salesforce Object
Apex Connector for Lightning Connect: Make Anything a Salesforce Object
 
Salesforce Connect External Object Reports
Salesforce Connect External Object ReportsSalesforce Connect External Object Reports
Salesforce Connect External Object Reports
 
Migrating Fast to Solr
Migrating Fast to SolrMigrating Fast to Solr
Migrating Fast to Solr
 
OData, External objects & Lightning Connect
OData, External objects & Lightning ConnectOData, External objects & Lightning Connect
OData, External objects & Lightning Connect
 
Search engine optimization (seo) from Endeca & ATG
Search engine optimization (seo) from Endeca & ATGSearch engine optimization (seo) from Endeca & ATG
Search engine optimization (seo) from Endeca & ATG
 
Real-time SQL Access to Your Salesforce.com Data Using Progress Data Direct
Real-time SQL Access to Your Salesforce.com Data Using Progress Data DirectReal-time SQL Access to Your Salesforce.com Data Using Progress Data Direct
Real-time SQL Access to Your Salesforce.com Data Using Progress Data Direct
 
Develop Integrations for Salesforce and AWS (API320) - AWS re:Invent 2018
Develop Integrations for Salesforce and AWS (API320) - AWS re:Invent 2018Develop Integrations for Salesforce and AWS (API320) - AWS re:Invent 2018
Develop Integrations for Salesforce and AWS (API320) - AWS re:Invent 2018
 
João Faria - Syone - OSL19
João Faria - Syone - OSL19João Faria - Syone - OSL19
João Faria - Syone - OSL19
 
Integrating Salesforce With Business Intelligence and Data Warehouses
Integrating Salesforce With Business Intelligence and Data WarehousesIntegrating Salesforce With Business Intelligence and Data Warehouses
Integrating Salesforce With Business Intelligence and Data Warehouses
 
Database@Home - Data Driven : Loading, Indexing, and Searching with Text and ...
Database@Home - Data Driven : Loading, Indexing, and Searching with Text and ...Database@Home - Data Driven : Loading, Indexing, and Searching with Text and ...
Database@Home - Data Driven : Loading, Indexing, and Searching with Text and ...
 
Database@Home - Data Driven Reference Architecture
Database@Home - Data Driven Reference ArchitectureDatabase@Home - Data Driven Reference Architecture
Database@Home - Data Driven Reference Architecture
 
The latest in Retain & GWAVA
The latest in Retain & GWAVAThe latest in Retain & GWAVA
The latest in Retain & GWAVA
 
Oracle Data Integration CON9737 at OpenWorld
Oracle Data Integration CON9737 at OpenWorldOracle Data Integration CON9737 at OpenWorld
Oracle Data Integration CON9737 at OpenWorld
 
Tiago Fonseca & Rui Velho - Syone & Leroy Merlin - OSL19
Tiago Fonseca & Rui Velho - Syone & Leroy Merlin - OSL19Tiago Fonseca & Rui Velho - Syone & Leroy Merlin - OSL19
Tiago Fonseca & Rui Velho - Syone & Leroy Merlin - OSL19
 
OData: A Standard API for Data Access
OData: A Standard API for Data AccessOData: A Standard API for Data Access
OData: A Standard API for Data Access
 
Viadeo - The Kasper way
Viadeo - The Kasper wayViadeo - The Kasper way
Viadeo - The Kasper way
 
[NEW LAUNCH!] Building modern applications using Amazon DynamoDB transactions...
[NEW LAUNCH!] Building modern applications using Amazon DynamoDB transactions...[NEW LAUNCH!] Building modern applications using Amazon DynamoDB transactions...
[NEW LAUNCH!] Building modern applications using Amazon DynamoDB transactions...
 
Snowflake for Data Engineering
Snowflake for Data EngineeringSnowflake for Data Engineering
Snowflake for Data Engineering
 
Access External Data in Real-time with Lightning Connect
Access External Data in Real-time with Lightning ConnectAccess External Data in Real-time with Lightning Connect
Access External Data in Real-time with Lightning Connect
 
Anypoint platform for api
Anypoint platform for apiAnypoint platform for api
Anypoint platform for api
 

Similar to Elasticsearch powered EDP by Cedric Mailleux

Acquia Platform Update: New Features & Capabilities
Acquia Platform Update: New Features & CapabilitiesAcquia Platform Update: New Features & Capabilities
Acquia Platform Update: New Features & Capabilities
Acquia
 
James Jara Portfolio 2014 - Enterprise datagrid - Part 3
James Jara Portfolio 2014  - Enterprise datagrid - Part 3James Jara Portfolio 2014  - Enterprise datagrid - Part 3
James Jara Portfolio 2014 - Enterprise datagrid - Part 3
James Jara
 
Quarterly Products Update Q2 For Customer & Partners
Quarterly Products Update Q2 For Customer & PartnersQuarterly Products Update Q2 For Customer & Partners
Quarterly Products Update Q2 For Customer & Partners
Acquia
 
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
Jahia 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 Safoutou
Jahia Solutions Group
 
Guacamole Fiesta: What do avocados and databases have in common?
Guacamole Fiesta: What do avocados and databases have in common?Guacamole Fiesta: What do avocados and databases have in common?
Guacamole Fiesta: What do avocados and databases have in common?
ArangoDB Database
 
Data-Centric Infrastructure for Agile Development
Data-Centric Infrastructure for Agile DevelopmentData-Centric Infrastructure for Agile Development
Data-Centric Infrastructure for Agile Development
DATAVERSITY
 
Oracle Data Science Platform
Oracle Data Science PlatformOracle Data Science Platform
Oracle Data Science Platform
Oracle Developers
 
Integrate ERP and CRM Metadata into ER/Studio
Integrate ERP and CRM Metadata into ER/StudioIntegrate ERP and CRM Metadata into ER/Studio
Integrate ERP and CRM Metadata into ER/Studio
DATAVERSITY
 
Public hyperledger meetup sf may 2018
Public hyperledger meetup sf may 2018Public hyperledger meetup sf may 2018
Public hyperledger meetup sf may 2018
Oracle Developers
 
Partner Enablement: Key Differentiators of Denodo Platform 6.0 for the Field
Partner Enablement: Key Differentiators of Denodo Platform 6.0 for the FieldPartner Enablement: Key Differentiators of Denodo Platform 6.0 for the Field
Partner Enablement: Key Differentiators of Denodo Platform 6.0 for the Field
Denodo
 
Why our customers choose teradata.
Why our customers choose teradata.Why our customers choose teradata.
Why our customers choose teradata.
Adam Swaney
 
AMIS Oracle OpenWorld & CodeOne Review - Pillar 2 - SaaS and Standard Applica...
AMIS Oracle OpenWorld & CodeOne Review - Pillar 2 - SaaS and Standard Applica...AMIS Oracle OpenWorld & CodeOne Review - Pillar 2 - SaaS and Standard Applica...
AMIS Oracle OpenWorld & CodeOne Review - Pillar 2 - SaaS and Standard Applica...
Lucas Jellema
 
AMIS Oracle OpenWorld en Code One Review 2018 - Pillar 2: SaaS
AMIS Oracle OpenWorld en Code One Review 2018 - Pillar 2: SaaSAMIS Oracle OpenWorld en Code One Review 2018 - Pillar 2: SaaS
AMIS Oracle OpenWorld en Code One Review 2018 - Pillar 2: SaaS
Getting value from IoT, Integration and Data Analytics
 
Oracle Autonomous Data Warehouse Cloud and Data Visualization
Oracle Autonomous Data Warehouse Cloud and Data VisualizationOracle Autonomous Data Warehouse Cloud and Data Visualization
Oracle Autonomous Data Warehouse Cloud and Data Visualization
Edelweiss Kammermann
 
Embedded-ml(ai)applications - Bjoern Staender
Embedded-ml(ai)applications - Bjoern StaenderEmbedded-ml(ai)applications - Bjoern Staender
Embedded-ml(ai)applications - Bjoern Staender
Dataconomy Media
 
Building Serverless ETL Pipelines with AWS Glue
Building Serverless ETL Pipelines with AWS GlueBuilding Serverless ETL Pipelines with AWS Glue
Building Serverless ETL Pipelines with AWS Glue
Amazon Web Services
 
Building Serverless ETL Pipelines
Building Serverless ETL PipelinesBuilding Serverless ETL Pipelines
Building Serverless ETL Pipelines
Amazon Web Services
 
Why You Need Manageability Now More than Ever and How to Get It
Why You Need Manageability Now More than Ever and How to Get ItWhy You Need Manageability Now More than Ever and How to Get It
Why You Need Manageability Now More than Ever and How to Get It
Gustavo Rene Antunez
 
Doc store
Doc storeDoc store
Doc store
Mysql User Camp
 

Similar to Elasticsearch powered EDP by Cedric Mailleux (20)

Acquia Platform Update: New Features & Capabilities
Acquia Platform Update: New Features & CapabilitiesAcquia Platform Update: New Features & Capabilities
Acquia Platform Update: New Features & Capabilities
 
James Jara Portfolio 2014 - Enterprise datagrid - Part 3
James Jara Portfolio 2014  - Enterprise datagrid - Part 3James Jara Portfolio 2014  - Enterprise datagrid - Part 3
James Jara Portfolio 2014 - Enterprise datagrid - Part 3
 
Quarterly Products Update Q2 For Customer & Partners
Quarterly Products Update Q2 For Customer & PartnersQuarterly Products Update Q2 For Customer & Partners
Quarterly Products Update Q2 For Customer & Partners
 
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
 
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
 
Guacamole Fiesta: What do avocados and databases have in common?
Guacamole Fiesta: What do avocados and databases have in common?Guacamole Fiesta: What do avocados and databases have in common?
Guacamole Fiesta: What do avocados and databases have in common?
 
Data-Centric Infrastructure for Agile Development
Data-Centric Infrastructure for Agile DevelopmentData-Centric Infrastructure for Agile Development
Data-Centric Infrastructure for Agile Development
 
Oracle Data Science Platform
Oracle Data Science PlatformOracle Data Science Platform
Oracle Data Science Platform
 
Integrate ERP and CRM Metadata into ER/Studio
Integrate ERP and CRM Metadata into ER/StudioIntegrate ERP and CRM Metadata into ER/Studio
Integrate ERP and CRM Metadata into ER/Studio
 
Public hyperledger meetup sf may 2018
Public hyperledger meetup sf may 2018Public hyperledger meetup sf may 2018
Public hyperledger meetup sf may 2018
 
Partner Enablement: Key Differentiators of Denodo Platform 6.0 for the Field
Partner Enablement: Key Differentiators of Denodo Platform 6.0 for the FieldPartner Enablement: Key Differentiators of Denodo Platform 6.0 for the Field
Partner Enablement: Key Differentiators of Denodo Platform 6.0 for the Field
 
Why our customers choose teradata.
Why our customers choose teradata.Why our customers choose teradata.
Why our customers choose teradata.
 
AMIS Oracle OpenWorld & CodeOne Review - Pillar 2 - SaaS and Standard Applica...
AMIS Oracle OpenWorld & CodeOne Review - Pillar 2 - SaaS and Standard Applica...AMIS Oracle OpenWorld & CodeOne Review - Pillar 2 - SaaS and Standard Applica...
AMIS Oracle OpenWorld & CodeOne Review - Pillar 2 - SaaS and Standard Applica...
 
AMIS Oracle OpenWorld en Code One Review 2018 - Pillar 2: SaaS
AMIS Oracle OpenWorld en Code One Review 2018 - Pillar 2: SaaSAMIS Oracle OpenWorld en Code One Review 2018 - Pillar 2: SaaS
AMIS Oracle OpenWorld en Code One Review 2018 - Pillar 2: SaaS
 
Oracle Autonomous Data Warehouse Cloud and Data Visualization
Oracle Autonomous Data Warehouse Cloud and Data VisualizationOracle Autonomous Data Warehouse Cloud and Data Visualization
Oracle Autonomous Data Warehouse Cloud and Data Visualization
 
Embedded-ml(ai)applications - Bjoern Staender
Embedded-ml(ai)applications - Bjoern StaenderEmbedded-ml(ai)applications - Bjoern Staender
Embedded-ml(ai)applications - Bjoern Staender
 
Building Serverless ETL Pipelines with AWS Glue
Building Serverless ETL Pipelines with AWS GlueBuilding Serverless ETL Pipelines with AWS Glue
Building Serverless ETL Pipelines with AWS Glue
 
Building Serverless ETL Pipelines
Building Serverless ETL PipelinesBuilding Serverless ETL Pipelines
Building Serverless ETL Pipelines
 
Why You Need Manageability Now More than Ever and How to Get It
Why You Need Manageability Now More than Ever and How to Get ItWhy You Need Manageability Now More than Ever and How to Get It
Why You Need Manageability Now More than Ever and How to Get It
 
Doc store
Doc storeDoc store
Doc store
 

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 Auvray
Jahia 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 Maher
Jahia 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 Solis
Jahia 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 Safran
Jahia 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 Barba
Jahia 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 Evolution
Jahia 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 Gauthier
Jahia 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 Petersen
Jahia 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 Babinet
Jahia 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 Group
Jahia 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, Tribal
Jahia 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 Voci
Jahia Solutions Group
 
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
 
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
Jahia Solutions Group
 
Keep Calm & Open the Tools - Online Developers Meetup - April 2017
Keep Calm & Open the Tools - Online Developers Meetup - April 2017Keep Calm & Open the Tools - Online Developers Meetup - April 2017
Keep Calm & Open the Tools - Online Developers Meetup - April 2017
Jahia Solutions Group
 
Transfert de données de Form Factory vers MongoDB - Developers Meetup - Febru...
Transfert de données de Form Factory vers MongoDB - Developers Meetup - Febru...Transfert de données de Form Factory vers MongoDB - Developers Meetup - Febru...
Transfert de données de Form Factory vers MongoDB - Developers Meetup - Febru...
Jahia 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
 
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
 
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...
 
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
 
Keep Calm & Open the Tools - Online Developers Meetup - April 2017
Keep Calm & Open the Tools - Online Developers Meetup - April 2017Keep Calm & Open the Tools - Online Developers Meetup - April 2017
Keep Calm & Open the Tools - Online Developers Meetup - April 2017
 
Transfert de données de Form Factory vers MongoDB - Developers Meetup - Febru...
Transfert de données de Form Factory vers MongoDB - Developers Meetup - Febru...Transfert de données de Form Factory vers MongoDB - Developers Meetup - Febru...
Transfert de données de Form Factory vers MongoDB - Developers Meetup - Febru...
 

Recently uploaded

3.0 Project 2_ Developing My Brand Identity Kit.pptx
3.0 Project 2_ Developing My Brand Identity Kit.pptx3.0 Project 2_ Developing My Brand Identity Kit.pptx
3.0 Project 2_ Developing My Brand Identity Kit.pptx
tanyjahb
 
Evgen Osmak: Methods of key project parameters estimation: from the shaman-in...
Evgen Osmak: Methods of key project parameters estimation: from the shaman-in...Evgen Osmak: Methods of key project parameters estimation: from the shaman-in...
Evgen Osmak: Methods of key project parameters estimation: from the shaman-in...
Lviv Startup Club
 
ikea_woodgreen_petscharity_dog-alogue_digital.pdf
ikea_woodgreen_petscharity_dog-alogue_digital.pdfikea_woodgreen_petscharity_dog-alogue_digital.pdf
ikea_woodgreen_petscharity_dog-alogue_digital.pdf
agatadrynko
 
Bài tập - Tiếng anh 11 Global Success UNIT 1 - Bản HS.doc
Bài tập - Tiếng anh 11 Global Success UNIT 1 - Bản HS.docBài tập - Tiếng anh 11 Global Success UNIT 1 - Bản HS.doc
Bài tập - Tiếng anh 11 Global Success UNIT 1 - Bản HS.doc
daothibichhang1
 
Digital Transformation and IT Strategy Toolkit and Templates
Digital Transformation and IT Strategy Toolkit and TemplatesDigital Transformation and IT Strategy Toolkit and Templates
Digital Transformation and IT Strategy Toolkit and Templates
Aurelien Domont, MBA
 
Sustainability: Balancing the Environment, Equity & Economy
Sustainability: Balancing the Environment, Equity & EconomySustainability: Balancing the Environment, Equity & Economy
Sustainability: Balancing the Environment, Equity & Economy
Operational Excellence Consulting
 
20240425_ TJ Communications Credentials_compressed.pdf
20240425_ TJ Communications Credentials_compressed.pdf20240425_ TJ Communications Credentials_compressed.pdf
20240425_ TJ Communications Credentials_compressed.pdf
tjcomstrang
 
Affordable Stationery Printing Services in Jaipur | Navpack n Print
Affordable Stationery Printing Services in Jaipur | Navpack n PrintAffordable Stationery Printing Services in Jaipur | Navpack n Print
Affordable Stationery Printing Services in Jaipur | Navpack n Print
Navpack & Print
 
Event Report - SAP Sapphire 2024 Orlando - lots of innovation and old challenges
Event Report - SAP Sapphire 2024 Orlando - lots of innovation and old challengesEvent Report - SAP Sapphire 2024 Orlando - lots of innovation and old challenges
Event Report - SAP Sapphire 2024 Orlando - lots of innovation and old challenges
Holger Mueller
 
Improving profitability for small business
Improving profitability for small businessImproving profitability for small business
Improving profitability for small business
Ben Wann
 
Auditing study material for b.com final year students
Auditing study material for b.com final year  studentsAuditing study material for b.com final year  students
Auditing study material for b.com final year students
narasimhamurthyh4
 
The Influence of Marketing Strategy and Market Competition on Business Perfor...
The Influence of Marketing Strategy and Market Competition on Business Perfor...The Influence of Marketing Strategy and Market Competition on Business Perfor...
The Influence of Marketing Strategy and Market Competition on Business Perfor...
Adam Smith
 
Discover the innovative and creative projects that highlight my journey throu...
Discover the innovative and creative projects that highlight my journey throu...Discover the innovative and creative projects that highlight my journey throu...
Discover the innovative and creative projects that highlight my journey throu...
dylandmeas
 
ModelingMarketingStrategiesMKS.CollumbiaUniversitypdf
ModelingMarketingStrategiesMKS.CollumbiaUniversitypdfModelingMarketingStrategiesMKS.CollumbiaUniversitypdf
ModelingMarketingStrategiesMKS.CollumbiaUniversitypdf
fisherameliaisabella
 
VAT Registration Outlined In UAE: Benefits and Requirements
VAT Registration Outlined In UAE: Benefits and RequirementsVAT Registration Outlined In UAE: Benefits and Requirements
VAT Registration Outlined In UAE: Benefits and Requirements
uae taxgpt
 
Organizational Change Leadership Agile Tour Geneve 2024
Organizational Change Leadership Agile Tour Geneve 2024Organizational Change Leadership Agile Tour Geneve 2024
Organizational Change Leadership Agile Tour Geneve 2024
Kirill Klimov
 
Putting the SPARK into Virtual Training.pptx
Putting the SPARK into Virtual Training.pptxPutting the SPARK into Virtual Training.pptx
Putting the SPARK into Virtual Training.pptx
Cynthia Clay
 
Building Your Employer Brand with Social Media
Building Your Employer Brand with Social MediaBuilding Your Employer Brand with Social Media
Building Your Employer Brand with Social Media
LuanWise
 
Company Valuation webinar series - Tuesday, 4 June 2024
Company Valuation webinar series - Tuesday, 4 June 2024Company Valuation webinar series - Tuesday, 4 June 2024
Company Valuation webinar series - Tuesday, 4 June 2024
FelixPerez547899
 
Authentically Social by Corey Perlman - EO Puerto Rico
Authentically Social by Corey Perlman - EO Puerto RicoAuthentically Social by Corey Perlman - EO Puerto Rico
Authentically Social by Corey Perlman - EO Puerto Rico
Corey Perlman, Social Media Speaker and Consultant
 

Recently uploaded (20)

3.0 Project 2_ Developing My Brand Identity Kit.pptx
3.0 Project 2_ Developing My Brand Identity Kit.pptx3.0 Project 2_ Developing My Brand Identity Kit.pptx
3.0 Project 2_ Developing My Brand Identity Kit.pptx
 
Evgen Osmak: Methods of key project parameters estimation: from the shaman-in...
Evgen Osmak: Methods of key project parameters estimation: from the shaman-in...Evgen Osmak: Methods of key project parameters estimation: from the shaman-in...
Evgen Osmak: Methods of key project parameters estimation: from the shaman-in...
 
ikea_woodgreen_petscharity_dog-alogue_digital.pdf
ikea_woodgreen_petscharity_dog-alogue_digital.pdfikea_woodgreen_petscharity_dog-alogue_digital.pdf
ikea_woodgreen_petscharity_dog-alogue_digital.pdf
 
Bài tập - Tiếng anh 11 Global Success UNIT 1 - Bản HS.doc
Bài tập - Tiếng anh 11 Global Success UNIT 1 - Bản HS.docBài tập - Tiếng anh 11 Global Success UNIT 1 - Bản HS.doc
Bài tập - Tiếng anh 11 Global Success UNIT 1 - Bản HS.doc
 
Digital Transformation and IT Strategy Toolkit and Templates
Digital Transformation and IT Strategy Toolkit and TemplatesDigital Transformation and IT Strategy Toolkit and Templates
Digital Transformation and IT Strategy Toolkit and Templates
 
Sustainability: Balancing the Environment, Equity & Economy
Sustainability: Balancing the Environment, Equity & EconomySustainability: Balancing the Environment, Equity & Economy
Sustainability: Balancing the Environment, Equity & Economy
 
20240425_ TJ Communications Credentials_compressed.pdf
20240425_ TJ Communications Credentials_compressed.pdf20240425_ TJ Communications Credentials_compressed.pdf
20240425_ TJ Communications Credentials_compressed.pdf
 
Affordable Stationery Printing Services in Jaipur | Navpack n Print
Affordable Stationery Printing Services in Jaipur | Navpack n PrintAffordable Stationery Printing Services in Jaipur | Navpack n Print
Affordable Stationery Printing Services in Jaipur | Navpack n Print
 
Event Report - SAP Sapphire 2024 Orlando - lots of innovation and old challenges
Event Report - SAP Sapphire 2024 Orlando - lots of innovation and old challengesEvent Report - SAP Sapphire 2024 Orlando - lots of innovation and old challenges
Event Report - SAP Sapphire 2024 Orlando - lots of innovation and old challenges
 
Improving profitability for small business
Improving profitability for small businessImproving profitability for small business
Improving profitability for small business
 
Auditing study material for b.com final year students
Auditing study material for b.com final year  studentsAuditing study material for b.com final year  students
Auditing study material for b.com final year students
 
The Influence of Marketing Strategy and Market Competition on Business Perfor...
The Influence of Marketing Strategy and Market Competition on Business Perfor...The Influence of Marketing Strategy and Market Competition on Business Perfor...
The Influence of Marketing Strategy and Market Competition on Business Perfor...
 
Discover the innovative and creative projects that highlight my journey throu...
Discover the innovative and creative projects that highlight my journey throu...Discover the innovative and creative projects that highlight my journey throu...
Discover the innovative and creative projects that highlight my journey throu...
 
ModelingMarketingStrategiesMKS.CollumbiaUniversitypdf
ModelingMarketingStrategiesMKS.CollumbiaUniversitypdfModelingMarketingStrategiesMKS.CollumbiaUniversitypdf
ModelingMarketingStrategiesMKS.CollumbiaUniversitypdf
 
VAT Registration Outlined In UAE: Benefits and Requirements
VAT Registration Outlined In UAE: Benefits and RequirementsVAT Registration Outlined In UAE: Benefits and Requirements
VAT Registration Outlined In UAE: Benefits and Requirements
 
Organizational Change Leadership Agile Tour Geneve 2024
Organizational Change Leadership Agile Tour Geneve 2024Organizational Change Leadership Agile Tour Geneve 2024
Organizational Change Leadership Agile Tour Geneve 2024
 
Putting the SPARK into Virtual Training.pptx
Putting the SPARK into Virtual Training.pptxPutting the SPARK into Virtual Training.pptx
Putting the SPARK into Virtual Training.pptx
 
Building Your Employer Brand with Social Media
Building Your Employer Brand with Social MediaBuilding Your Employer Brand with Social Media
Building Your Employer Brand with Social Media
 
Company Valuation webinar series - Tuesday, 4 June 2024
Company Valuation webinar series - Tuesday, 4 June 2024Company Valuation webinar series - Tuesday, 4 June 2024
Company Valuation webinar series - Tuesday, 4 June 2024
 
Authentically Social by Corey Perlman - EO Puerto Rico
Authentically Social by Corey Perlman - EO Puerto RicoAuthentically Social by Corey Perlman - EO Puerto Rico
Authentically Social by Corey Perlman - EO Puerto Rico
 

Elasticsearch powered EDP by Cedric Mailleux

  • 1. © 2002-2018 Jahia© 2002-2018 Jahia Elasticsearch powered EDP By Cedric Mailleux
  • 2. © 2002-2018 Jahia© 2002-2018 Jahia 1. Introduction
  • 3. © 2002-2018 Jahia© 2002-2018 Jahia External Data Provider EDPs are a way of accessing content from outside DX as local content With the External Data Provider, external data can be accessed, manipulated and searched as if they were directly stored in the DX repository
  • 4. © 2002-2018 Jahia© 2002-2018 Jahia Commerce Platform Many datasets (Products/Catalogs/Customers/Orders/…) Sometimes many entry points of data need to be accessed to make sense of it For examples : ● Get the catalog structure ● Get the products
  • 5. © 2002-2018 Jahia© 2002-2018 Jahia Elasticsearch Elasticsearch is a distributed, RESTful search and analytics engine capable of solving a growing number of use cases. As the heart of the Elastic Stack, it centrally stores your data so you can discover the expected and uncover the unexpected.
  • 6. © 2002-2018 Jahia© 2002-2018 Jahia 2. Elasticsearch/EDP
  • 7. © 2002-2018 Jahia© 2002-2018 Jahia Why use Elasticsearch Most data of the catalog/product are static, it did not make sense to query them everytime, a cache will help but won’t give us extra capabilities Whereas Elasticsearch allows to index data the way we want to find them. It also offers the possibility to query multiple indices at the same time
  • 8. © 2002-2018 Jahia© 2002-2018 Jahia Challenges Elasticsearch indices must be as flat as possible so you need to denormalize your objects. In our case for each products category we expands the whole categories information instead of having only the identifier { "categoryType": "categories", "shortIdUrl": "/categories/330000/330100", "code": "330100", "shortUrl": "/Categories/Snowwear-youth/Snow-Jackets-youth", "name": "Snow Jackets youth", "categoryIdType": "categories" }
  • 9. © 2002-2018 Jahia© 2002-2018 Jahia Another challenge was that JCR is a tree structure, not meant to handle 100K or more of flat products Chosen solution is to generate a system path for each product based on hash of their sku "mountedPath": "/p/cd/jb/ie/95366_honeydew", "vanityUrl": "/product/en/95366_honeydew.html" And also associate a vanity URL for SEO purposes Challenges
  • 10. © 2002-2018 Jahia© 2002-2018 Jahia Catalogue browsing ● Only the catalog is browsable, mounted in the site
  • 11. © 2002-2018 Jahia© 2002-2018 Jahia Product browsing ● Products are only searchable ○ New product picker
  • 12. © 2002-2018 Jahia© 2002-2018 Jahia Enrich data Getting the data out of the ecommerce platform for the products and catalog allows also to enrich them, like tagging the photo automatically with IBM Watson, this can be done in a 3rd index to avoid going back to IBM Watson unless the product information changed
  • 13. © 2002-2018 Jahia© 2002-2018 Jahia 3. Implementation
  • 14. © 2002-2018 Jahia© 2002-2018 Jahia EDP Mapping data from indices to JCR nodes Catalog Tree browsing Products/Medias nodes Uses Elasticsearch connector module for access to Elasticsearch cluster
  • 15. © 2002-2018 Jahia© 2002-2018 Jahia Indexation process First indexation happens upon saving the settings DX request the catalog from the ecommerce system Products are loaded in parallel with paginated queries 30s for 2K SKUs After first indexation, a background job is checking every 5 minutes if there is changes if yes we reindex in new indices and switch the active indices when indexing is over
  • 16. © 2002-2018 Jahia© 2002-2018 Jahia EDP - Vanity/I18N DX mixin for vanity URLS Lazy properties for I18N Ensure products have human readable URLs in different languages
  • 17. © 2002-2018 Jahia© 2002-2018 Jahia EDP - Federated search Send events to DX to index the products as contents Allowing to search products and content using the full text search API and the DX Elasticsearch provider
  • 18. © 2002-2018 Jahia© 2002-2018 Jahia Experience components Provide macros to include products everywhere as references Exposing GraphQL endpoints to have dedicated Commerce API bypassing JCR and requesting Elasticsearch directly Find products, facets Get up to date info for price and stock by requesting Ecommerce backend if needed
  • 19. © 2002-2018 Jahia© 2002-2018 Jahia GraphQL example query products { cioProducts(connection:"commio01",index:"apparelukfull_alias_en",ca tegory:"/brands",limit:100,offset:0){ sku name vanityUrl mountedPath } } query facets { cioShopByCategory(connection:"commio01",index:"apparelukfull_alias_ en",category:"/categories",type:"categories") { docCount key category { name children { name } } } }
  • 20. © 2002-2018 Jahia© 2002-2018 Jahia Questions Answers