SlideShare a Scribd company logo
1 of 24
Download to read offline
June 6 - 8th, 2023
Hyland’s Global Headquarters – Westlake, OH
How to migrate from Search Services
to Search Enterprise
THE ALFRESCO NEXT-GEN SEARCH SERVICE
Angel Borroy
Developer Evangelist
AGENDA
§ Meet the Alfresco Search Family!
§ Deploying Alfresco Search Enterprise
§ Migrating from Alfresco Search Services
MEET THE SEARCH FAMILY!
REPOSITORY
SEARCH SERVICES
SEARCH
ENGINE
Search and
Insight Engine
Search Services
SEARCH PRODUCTS
Search Enterprise Cloud
Connector
(+) Sharding
(+) Reporting
2.x
3.x
STANDARD
COMMUNITY
Search Services
ENTERPRISE
Search and Insight Engine
Search Enterprise
SEARCH SERVICES + SEARCH AND INSIGHT ENGINE
Content Services
Search Services
HTTP
HTTP alfresco.cron=0/10 * * * * ? *
Transform Core
AIO
HTTP
Asynchronous polling request indexing mode
SEARCH ENTERPRISE
Content Services
Search Enterprise
Database
PostgreSQL
Messages
ActiveMQ
TCP
TCP
JDBC
HTTP
HTTP
Transform Service
JDBC
TCP
HTTP
Asynchronous message indexing mode
Cloud Connector
DEPLOYING SEARCH
ENTERPRISE
SIMPLE DEPLOYMENT : SEARCH & INDEXING
alfresco/alfresco-content-repository
alfresco/alfresco-activemq alfresco/alfresco-elasticsearch-live-indexing
alfresco/alfresco-transform-router
alfresco/alfresco-shared-file-store
Local deployment is supported via
java -jar alfresco-elasticsearch-live-indexing.jar
SIMPLE DEPLOYMENT : REINDEXING
alfresco/alfresco-content-repository
alfresco/alfresco-activemq
alfresco/alfresco-transform-router
alfresco/alfresco-shared-file-store
alfresco/alfresco-elasticsearch-reindexing
Local deployment is supported via
java -jar alfresco-elasticsearch-reindexing.jar
Metadata
Permissions
Paths
Content
metadata
metadata
SCALING UP : INDEXING
CLUSTER
mediation
metadata
content path
alfresco/alfresco-elasticsearch-live-indexing
alfresco/alfresco-activemq
alfresco/alfresco-shared-file-store
SCALING UP : INDEXING
content NoC < 10
Increasing the number of consumers doesn’t help
Number of Pending Messages +++
metadata NoC++
Increase the number of metadata consumers
Search Engine Resources++
Increase RAM / CPU of Cluster
Alternatively, add a new node to the Cluser
(shards are managed internally)
mediation NoC++
Increase the number of mediation consumers
SCALING UP : SEARCHING
https://www.elastic.co/guide/en/elasticsearch/reference/current/tune-for-search-speed.html
https://opensearch.org/docs/latest/search-plugins/knn/performance-tuning/#search-performance-tuning
§ Configure HEAP with ES_HEAP_SIZE
• Avoid using directly -Xms -Xmx
• Leave ½ of the memory available to Lucene
§ Reduce swapping
• Using bootstrap.mlockall:true property prevents JVM to swap
§ Set the right buffer size for indexing with
indices.memory.index_buffer_size
• Each Shard requires around 512 mb but increasing it doesn’t help
SCALING UP : REINDEXING WITH REMOTE PARTITIONS
alfresco-elasticsearch-reindexing
alfresco-elasticsearch-reindexing
alfresco-elasticsearch-reindexing
alfresco-activemq
MANAGER
DB Schema Validation
Partition creation
Reindexing
Database
WORKER 1
Read partition
Index nodes
WORKER N
Read partition
Index nodes
Alfresco
Database
Produce partition requests >
< Consume workers replies
…
< partition
< partition
reply >
reply >
Partition
By ID Range
By Date Range
SECURITY CONSIDERATIONS
Search Enterprise
ActiveMQ
Transform Service
mTLS
mTLS
mTLS
mTLS
Content Services
mTLS
https://github.com/alfresco/alfresco-ssl-generator
truststore
keystore
truststore
keystore
truststore
keystore
truststore keystore
truststore
keystore
MIGRATING FROM SEARCH
SERVICES
WHY TO ADOPT SEARCH ENTERPRISE
§ Supporting Elasticsearch and OpenSearch out-of-the-box products
§ Documents and values are available for searching sooner
§ Re-indexing large repositories is much faster, moving the scale of
time from days to hours
§ Scaling up the search engine is easier, and it can be almost
transparent when using managed services
§ Cloud deployment based in Kubernetes is better supported
§ Alfresco Search products based in SOLR are currently in
maintenance mode
DESIGNING YOUR PATH TO SEARCH ENTERPRISE
Upgraded
ACS
Compatibility
Existing
ACS
ACS >= 7.1
Upgrade
ACS
Rewrite
queries
Downtime
Parallel
Indexing
Unsupported Features Supported Platforms Zero Downtime Upgrade
COMPATIBILITY VERIFICATION
Review Unsupported Features documentation
§ Field Queries like DBID, TXID, ACLID, ANCESTOR or FTSSTATUS
§ SQL query language using JDBC Driver
§ Data types like any, assocref, locale and qname
Audit your ACS Deployment
§ Build a query catalog for your use case
§ Approach using the Audit Subsystem is available in
• https://github.com/AlfrescoLabs/alfresco-query-catalog-builder
Run a dry run on a testing environment using Search Enterprise with
your data and your apps
UPGRADING FROM ACS 6.X
ACS 6.x
SOLR
ACS 7.4
Elasticsearch | OpenSearch
ACS 7.4
Elasticsearch | OpenSearch Elasticsearch | OpenSearch
Replica DB
ACS 7.4
Reindexing Reindexing Indexing
Content Store
https://docs.alfresco.com/search-enterprise/latest/upgrade/#upgrade-from-legacy-content-services
ZERO DOWNTIME UPGRADE
ACS 7.4
SOLR
ACS 7.4
Elasticsearch | OpenSearch Elasticsearch | OpenSearch
Replica DB
ACS 7.4
Reindexing + Indexing Indexing
Content Store
https://docs.alfresco.com/search-enterprise/latest/upgrade/#zero-downtime-upgrade
UPGRADE TO SEARCH ENTERPRISE TODAY!
Thank you!

More Related Content

What's hot

Jose portillo dev con presentation 1138
Jose portillo   dev con presentation 1138Jose portillo   dev con presentation 1138
Jose portillo dev con presentation 1138Jose Portillo
 
Alfresco node lifecyle, services and zones
Alfresco node lifecyle, services and zonesAlfresco node lifecyle, services and zones
Alfresco node lifecyle, services and zonesSanket Mehta
 
Alfresco Security Best Practices Guide
Alfresco Security Best Practices GuideAlfresco Security Best Practices Guide
Alfresco Security Best Practices GuideToni de la Fuente
 
Guide to alfresco monitoring
Guide to alfresco monitoringGuide to alfresco monitoring
Guide to alfresco monitoringMiguel Rodriguez
 
Scale your Alfresco Solutions
Scale your Alfresco Solutions Scale your Alfresco Solutions
Scale your Alfresco Solutions Alfresco Software
 
Alfresco Security Best Practices 2014
Alfresco Security Best Practices 2014Alfresco Security Best Practices 2014
Alfresco Security Best Practices 2014Toni de la Fuente
 
Alfresco DevCon 2019 - Alfresco Identity Services in Action
Alfresco DevCon 2019 - Alfresco Identity Services in ActionAlfresco DevCon 2019 - Alfresco Identity Services in Action
Alfresco DevCon 2019 - Alfresco Identity Services in ActionFrancesco Corti
 
Moving Gigantic Files Into and Out of the Alfresco Repository
Moving Gigantic Files Into and Out of the Alfresco RepositoryMoving Gigantic Files Into and Out of the Alfresco Repository
Moving Gigantic Files Into and Out of the Alfresco RepositoryJeff Potts
 
Alfresco Backup and Disaster Recovery White Paper
Alfresco Backup and Disaster Recovery White PaperAlfresco Backup and Disaster Recovery White Paper
Alfresco Backup and Disaster Recovery White PaperToni de la Fuente
 
Alfresco DevCon 2019: Encryption at-rest and in-transit
Alfresco DevCon 2019: Encryption at-rest and in-transitAlfresco DevCon 2019: Encryption at-rest and in-transit
Alfresco DevCon 2019: Encryption at-rest and in-transitToni de la Fuente
 
Collaborative Editing Tools for Alfresco
Collaborative Editing Tools for AlfrescoCollaborative Editing Tools for Alfresco
Collaborative Editing Tools for AlfrescoAngel Borroy López
 
Alfresco 5.2 REST API
Alfresco 5.2 REST APIAlfresco 5.2 REST API
Alfresco 5.2 REST APIJ V
 
Sizing your alfresco platform
Sizing your alfresco platformSizing your alfresco platform
Sizing your alfresco platformLuis Cabaceira
 
Exciting New Alfresco REST APIs
Exciting New Alfresco REST APIsExciting New Alfresco REST APIs
Exciting New Alfresco REST APIsJ V
 
Alfresco Share - Recycle Bin Ideas
Alfresco Share - Recycle Bin IdeasAlfresco Share - Recycle Bin Ideas
Alfresco Share - Recycle Bin IdeasAlfrescoUE
 

What's hot (20)

Jose portillo dev con presentation 1138
Jose portillo   dev con presentation 1138Jose portillo   dev con presentation 1138
Jose portillo dev con presentation 1138
 
Alfresco node lifecyle, services and zones
Alfresco node lifecyle, services and zonesAlfresco node lifecyle, services and zones
Alfresco node lifecyle, services and zones
 
Alfresco Security Best Practices Guide
Alfresco Security Best Practices GuideAlfresco Security Best Practices Guide
Alfresco Security Best Practices Guide
 
Guide to alfresco monitoring
Guide to alfresco monitoringGuide to alfresco monitoring
Guide to alfresco monitoring
 
Scale your Alfresco Solutions
Scale your Alfresco Solutions Scale your Alfresco Solutions
Scale your Alfresco Solutions
 
Alfresco Security Best Practices 2014
Alfresco Security Best Practices 2014Alfresco Security Best Practices 2014
Alfresco Security Best Practices 2014
 
Alfresco DevCon 2019 - Alfresco Identity Services in Action
Alfresco DevCon 2019 - Alfresco Identity Services in ActionAlfresco DevCon 2019 - Alfresco Identity Services in Action
Alfresco DevCon 2019 - Alfresco Identity Services in Action
 
Moving Gigantic Files Into and Out of the Alfresco Repository
Moving Gigantic Files Into and Out of the Alfresco RepositoryMoving Gigantic Files Into and Out of the Alfresco Repository
Moving Gigantic Files Into and Out of the Alfresco Repository
 
Alfresco Backup and Disaster Recovery White Paper
Alfresco Backup and Disaster Recovery White PaperAlfresco Backup and Disaster Recovery White Paper
Alfresco Backup and Disaster Recovery White Paper
 
Alfresco tuning part2
Alfresco tuning part2Alfresco tuning part2
Alfresco tuning part2
 
Upgrading to Alfresco 6
Upgrading to Alfresco 6Upgrading to Alfresco 6
Upgrading to Alfresco 6
 
Alfresco DevCon 2019: Encryption at-rest and in-transit
Alfresco DevCon 2019: Encryption at-rest and in-transitAlfresco DevCon 2019: Encryption at-rest and in-transit
Alfresco DevCon 2019: Encryption at-rest and in-transit
 
Collaborative Editing Tools for Alfresco
Collaborative Editing Tools for AlfrescoCollaborative Editing Tools for Alfresco
Collaborative Editing Tools for Alfresco
 
Alfresco 5.2 REST API
Alfresco 5.2 REST APIAlfresco 5.2 REST API
Alfresco 5.2 REST API
 
Sizing your alfresco platform
Sizing your alfresco platformSizing your alfresco platform
Sizing your alfresco platform
 
Alfresco Certificates
Alfresco Certificates Alfresco Certificates
Alfresco Certificates
 
Exciting New Alfresco REST APIs
Exciting New Alfresco REST APIsExciting New Alfresco REST APIs
Exciting New Alfresco REST APIs
 
Storage and Alfresco
Storage and AlfrescoStorage and Alfresco
Storage and Alfresco
 
Alfresco CMIS
Alfresco CMISAlfresco CMIS
Alfresco CMIS
 
Alfresco Share - Recycle Bin Ideas
Alfresco Share - Recycle Bin IdeasAlfresco Share - Recycle Bin Ideas
Alfresco Share - Recycle Bin Ideas
 

Similar to How to migrate from Alfresco Search Services to Alfresco SearchEnterprise

WIN401_Migrating Microsoft Applications to AWS
WIN401_Migrating Microsoft Applications to AWSWIN401_Migrating Microsoft Applications to AWS
WIN401_Migrating Microsoft Applications to AWSAmazon Web Services
 
(DAT309) Scaling Massive Content Stores with Amazon Aurora
(DAT309) Scaling Massive Content Stores with Amazon Aurora(DAT309) Scaling Massive Content Stores with Amazon Aurora
(DAT309) Scaling Massive Content Stores with Amazon AuroraAmazon Web Services
 
Elasticsearch in Netflix
Elasticsearch in NetflixElasticsearch in Netflix
Elasticsearch in NetflixDanny Yuan
 
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Angel Borroy López
 
How leading financial services organisations are winning with tech
How leading financial services organisations are winning with techHow leading financial services organisations are winning with tech
How leading financial services organisations are winning with techMongoDB
 
Adding Search to Relational Databases
Adding Search to Relational DatabasesAdding Search to Relational Databases
Adding Search to Relational DatabasesAmazon Web Services
 
Adding Search to Relational Databases
Adding Search to Relational DatabasesAdding Search to Relational Databases
Adding Search to Relational DatabasesAmazon Web Services
 
Bluemix paas 기반 saas 개발 사례
Bluemix paas 기반 saas 개발 사례Bluemix paas 기반 saas 개발 사례
Bluemix paas 기반 saas 개발 사례uEngine Solutions
 
Scaling the Content Repository with Elasticsearch
Scaling the Content Repository with ElasticsearchScaling the Content Repository with Elasticsearch
Scaling the Content Repository with ElasticsearchNuxeo
 
MicroStrategy on Amazon Web Services (AWS) Cloud
MicroStrategy on Amazon Web Services (AWS) CloudMicroStrategy on Amazon Web Services (AWS) Cloud
MicroStrategy on Amazon Web Services (AWS) CloudCCG
 
Build A Website on AWS for Your First 10 Million Users
Build A Website on AWS for Your First 10 Million UsersBuild A Website on AWS for Your First 10 Million Users
Build A Website on AWS for Your First 10 Million UsersAmazon Web Services
 
Webinar: Unlock the Power of Streaming Data with Kinetica and Confluent
Webinar: Unlock the Power of Streaming Data with Kinetica and ConfluentWebinar: Unlock the Power of Streaming Data with Kinetica and Confluent
Webinar: Unlock the Power of Streaming Data with Kinetica and ConfluentKinetica
 
BDA402 Deep Dive: Log Analytics with Amazon Elasticsearch Service
BDA402 Deep Dive: Log Analytics with Amazon Elasticsearch ServiceBDA402 Deep Dive: Log Analytics with Amazon Elasticsearch Service
BDA402 Deep Dive: Log Analytics with Amazon Elasticsearch ServiceAmazon Web Services
 
How to Architect a Serverless Cloud Data Lake for Enhanced Data Analytics
How to Architect a Serverless Cloud Data Lake for Enhanced Data AnalyticsHow to Architect a Serverless Cloud Data Lake for Enhanced Data Analytics
How to Architect a Serverless Cloud Data Lake for Enhanced Data AnalyticsInformatica
 
IBM Omnifind Enterprise Portal Seach To Improve Productivity
IBM Omnifind Enterprise   Portal Seach To Improve ProductivityIBM Omnifind Enterprise   Portal Seach To Improve Productivity
IBM Omnifind Enterprise Portal Seach To Improve ProductivityFrancis Ricalde
 
Accelerating analytics in the cloud with the Starburst Presto + Alluxio stack
Accelerating analytics in the cloud with the Starburst Presto + Alluxio stackAccelerating analytics in the cloud with the Starburst Presto + Alluxio stack
Accelerating analytics in the cloud with the Starburst Presto + Alluxio stackAlluxio, Inc.
 
Scale 02 king_summit_aws
Scale 02 king_summit_awsScale 02 king_summit_aws
Scale 02 king_summit_awsAtlassian
 
Activating your Data, with a Faster Path to Results - Aaron Murphy, Commvault
Activating your Data, with a Faster Path to Results - Aaron Murphy, CommvaultActivating your Data, with a Faster Path to Results - Aaron Murphy, Commvault
Activating your Data, with a Faster Path to Results - Aaron Murphy, CommvaultLucidworks
 
Alluxio Data Orchestration Platform for the Cloud
Alluxio Data Orchestration Platform for the CloudAlluxio Data Orchestration Platform for the Cloud
Alluxio Data Orchestration Platform for the CloudShubham Tagra
 

Similar to How to migrate from Alfresco Search Services to Alfresco SearchEnterprise (20)

WIN401_Migrating Microsoft Applications to AWS
WIN401_Migrating Microsoft Applications to AWSWIN401_Migrating Microsoft Applications to AWS
WIN401_Migrating Microsoft Applications to AWS
 
(DAT309) Scaling Massive Content Stores with Amazon Aurora
(DAT309) Scaling Massive Content Stores with Amazon Aurora(DAT309) Scaling Massive Content Stores with Amazon Aurora
(DAT309) Scaling Massive Content Stores with Amazon Aurora
 
Elasticsearch in Netflix
Elasticsearch in NetflixElasticsearch in Netflix
Elasticsearch in Netflix
 
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
 
How leading financial services organisations are winning with tech
How leading financial services organisations are winning with techHow leading financial services organisations are winning with tech
How leading financial services organisations are winning with tech
 
Adding Search to Relational Databases
Adding Search to Relational DatabasesAdding Search to Relational Databases
Adding Search to Relational Databases
 
ACM BPM and elasticsearch AMIS25
ACM BPM and elasticsearch AMIS25ACM BPM and elasticsearch AMIS25
ACM BPM and elasticsearch AMIS25
 
Adding Search to Relational Databases
Adding Search to Relational DatabasesAdding Search to Relational Databases
Adding Search to Relational Databases
 
Bluemix paas 기반 saas 개발 사례
Bluemix paas 기반 saas 개발 사례Bluemix paas 기반 saas 개발 사례
Bluemix paas 기반 saas 개발 사례
 
Scaling the Content Repository with Elasticsearch
Scaling the Content Repository with ElasticsearchScaling the Content Repository with Elasticsearch
Scaling the Content Repository with Elasticsearch
 
MicroStrategy on Amazon Web Services (AWS) Cloud
MicroStrategy on Amazon Web Services (AWS) CloudMicroStrategy on Amazon Web Services (AWS) Cloud
MicroStrategy on Amazon Web Services (AWS) Cloud
 
Build A Website on AWS for Your First 10 Million Users
Build A Website on AWS for Your First 10 Million UsersBuild A Website on AWS for Your First 10 Million Users
Build A Website on AWS for Your First 10 Million Users
 
Webinar: Unlock the Power of Streaming Data with Kinetica and Confluent
Webinar: Unlock the Power of Streaming Data with Kinetica and ConfluentWebinar: Unlock the Power of Streaming Data with Kinetica and Confluent
Webinar: Unlock the Power of Streaming Data with Kinetica and Confluent
 
BDA402 Deep Dive: Log Analytics with Amazon Elasticsearch Service
BDA402 Deep Dive: Log Analytics with Amazon Elasticsearch ServiceBDA402 Deep Dive: Log Analytics with Amazon Elasticsearch Service
BDA402 Deep Dive: Log Analytics with Amazon Elasticsearch Service
 
How to Architect a Serverless Cloud Data Lake for Enhanced Data Analytics
How to Architect a Serverless Cloud Data Lake for Enhanced Data AnalyticsHow to Architect a Serverless Cloud Data Lake for Enhanced Data Analytics
How to Architect a Serverless Cloud Data Lake for Enhanced Data Analytics
 
IBM Omnifind Enterprise Portal Seach To Improve Productivity
IBM Omnifind Enterprise   Portal Seach To Improve ProductivityIBM Omnifind Enterprise   Portal Seach To Improve Productivity
IBM Omnifind Enterprise Portal Seach To Improve Productivity
 
Accelerating analytics in the cloud with the Starburst Presto + Alluxio stack
Accelerating analytics in the cloud with the Starburst Presto + Alluxio stackAccelerating analytics in the cloud with the Starburst Presto + Alluxio stack
Accelerating analytics in the cloud with the Starburst Presto + Alluxio stack
 
Scale 02 king_summit_aws
Scale 02 king_summit_awsScale 02 king_summit_aws
Scale 02 king_summit_aws
 
Activating your Data, with a Faster Path to Results - Aaron Murphy, Commvault
Activating your Data, with a Faster Path to Results - Aaron Murphy, CommvaultActivating your Data, with a Faster Path to Results - Aaron Murphy, Commvault
Activating your Data, with a Faster Path to Results - Aaron Murphy, Commvault
 
Alluxio Data Orchestration Platform for the Cloud
Alluxio Data Orchestration Platform for the CloudAlluxio Data Orchestration Platform for the Cloud
Alluxio Data Orchestration Platform for the Cloud
 

More from Angel Borroy López

Using Generative AI and Content Service Platforms together
Using Generative AI and Content Service Platforms togetherUsing Generative AI and Content Service Platforms together
Using Generative AI and Content Service Platforms togetherAngel Borroy López
 
Enhancing Document-Centric Features with On-Premise Generative AI for Alfresc...
Enhancing Document-Centric Features with On-Premise Generative AI for Alfresc...Enhancing Document-Centric Features with On-Premise Generative AI for Alfresc...
Enhancing Document-Centric Features with On-Premise Generative AI for Alfresc...Angel Borroy López
 
La Guía Definitiva para una Actualización Exitosa a Alfresco 23.1
La Guía Definitiva para una Actualización Exitosa a Alfresco 23.1La Guía Definitiva para una Actualización Exitosa a Alfresco 23.1
La Guía Definitiva para una Actualización Exitosa a Alfresco 23.1Angel Borroy López
 
Docker Init with Templates for Alfresco
Docker Init with Templates for AlfrescoDocker Init with Templates for Alfresco
Docker Init with Templates for AlfrescoAngel Borroy López
 
Alfresco Transform Services 4.0.0
Alfresco Transform Services 4.0.0Alfresco Transform Services 4.0.0
Alfresco Transform Services 4.0.0Angel Borroy López
 
CSP: Evolución de servicios de código abierto en un mundo Cloud Native
CSP: Evolución de servicios de código abierto en un mundo Cloud NativeCSP: Evolución de servicios de código abierto en un mundo Cloud Native
CSP: Evolución de servicios de código abierto en un mundo Cloud NativeAngel Borroy López
 
Alfresco Embedded Activiti Engine
Alfresco Embedded Activiti EngineAlfresco Embedded Activiti Engine
Alfresco Embedded Activiti EngineAngel Borroy López
 
Desarrollando una Extensión para Docker
Desarrollando una Extensión para DockerDesarrollando una Extensión para Docker
Desarrollando una Extensión para DockerAngel Borroy López
 
DockerCon 2022 Spanish Room-ONBOARDING.pdf
DockerCon 2022 Spanish Room-ONBOARDING.pdfDockerCon 2022 Spanish Room-ONBOARDING.pdf
DockerCon 2022 Spanish Room-ONBOARDING.pdfAngel Borroy López
 
Deploying Containerised Open-Source CSP Platforms
Deploying Containerised Open-Source CSP PlatformsDeploying Containerised Open-Source CSP Platforms
Deploying Containerised Open-Source CSP PlatformsAngel Borroy López
 
A Practical Introduction to Apache Solr
A Practical Introduction to Apache SolrA Practical Introduction to Apache Solr
A Practical Introduction to Apache SolrAngel Borroy López
 
Docker 101 - Zaragoza Docker Meetup - Universidad de Zaragoza
Docker 101 - Zaragoza Docker Meetup - Universidad de ZaragozaDocker 101 - Zaragoza Docker Meetup - Universidad de Zaragoza
Docker 101 - Zaragoza Docker Meetup - Universidad de ZaragozaAngel Borroy López
 
How to Write Alfresco Addons that Last Forever
How to Write Alfresco Addons that Last ForeverHow to Write Alfresco Addons that Last Forever
How to Write Alfresco Addons that Last ForeverAngel Borroy López
 
10 Tips Every New Developer in Alfresco Should Know
10 Tips Every New Developer in Alfresco Should Know10 Tips Every New Developer in Alfresco Should Know
10 Tips Every New Developer in Alfresco Should KnowAngel Borroy López
 
Zaragoza dev ops-activiti-khd-20181212
Zaragoza dev ops-activiti-khd-20181212Zaragoza dev ops-activiti-khd-20181212
Zaragoza dev ops-activiti-khd-20181212Angel Borroy López
 
Docker community leader application angel borroy - 20180801
Docker community leader application   angel borroy - 20180801Docker community leader application   angel borroy - 20180801
Docker community leader application angel borroy - 20180801Angel Borroy López
 

More from Angel Borroy López (20)

Using Generative AI and Content Service Platforms together
Using Generative AI and Content Service Platforms togetherUsing Generative AI and Content Service Platforms together
Using Generative AI and Content Service Platforms together
 
Enhancing Document-Centric Features with On-Premise Generative AI for Alfresc...
Enhancing Document-Centric Features with On-Premise Generative AI for Alfresc...Enhancing Document-Centric Features with On-Premise Generative AI for Alfresc...
Enhancing Document-Centric Features with On-Premise Generative AI for Alfresc...
 
La Guía Definitiva para una Actualización Exitosa a Alfresco 23.1
La Guía Definitiva para una Actualización Exitosa a Alfresco 23.1La Guía Definitiva para una Actualización Exitosa a Alfresco 23.1
La Guía Definitiva para una Actualización Exitosa a Alfresco 23.1
 
Docker Init with Templates for Alfresco
Docker Init with Templates for AlfrescoDocker Init with Templates for Alfresco
Docker Init with Templates for Alfresco
 
Before & After Docker Init
Before & After Docker InitBefore & After Docker Init
Before & After Docker Init
 
Alfresco Transform Services 4.0.0
Alfresco Transform Services 4.0.0Alfresco Transform Services 4.0.0
Alfresco Transform Services 4.0.0
 
Using Podman with Alfresco
Using Podman with AlfrescoUsing Podman with Alfresco
Using Podman with Alfresco
 
CSP: Evolución de servicios de código abierto en un mundo Cloud Native
CSP: Evolución de servicios de código abierto en un mundo Cloud NativeCSP: Evolución de servicios de código abierto en un mundo Cloud Native
CSP: Evolución de servicios de código abierto en un mundo Cloud Native
 
Alfresco Embedded Activiti Engine
Alfresco Embedded Activiti EngineAlfresco Embedded Activiti Engine
Alfresco Embedded Activiti Engine
 
Alfresco Transform Core 3.0.0
Alfresco Transform Core 3.0.0Alfresco Transform Core 3.0.0
Alfresco Transform Core 3.0.0
 
Desarrollando una Extensión para Docker
Desarrollando una Extensión para DockerDesarrollando una Extensión para Docker
Desarrollando una Extensión para Docker
 
DockerCon 2022 Spanish Room-ONBOARDING.pdf
DockerCon 2022 Spanish Room-ONBOARDING.pdfDockerCon 2022 Spanish Room-ONBOARDING.pdf
DockerCon 2022 Spanish Room-ONBOARDING.pdf
 
Deploying Containerised Open-Source CSP Platforms
Deploying Containerised Open-Source CSP PlatformsDeploying Containerised Open-Source CSP Platforms
Deploying Containerised Open-Source CSP Platforms
 
Introduction to AWS
Introduction to AWSIntroduction to AWS
Introduction to AWS
 
A Practical Introduction to Apache Solr
A Practical Introduction to Apache SolrA Practical Introduction to Apache Solr
A Practical Introduction to Apache Solr
 
Docker 101 - Zaragoza Docker Meetup - Universidad de Zaragoza
Docker 101 - Zaragoza Docker Meetup - Universidad de ZaragozaDocker 101 - Zaragoza Docker Meetup - Universidad de Zaragoza
Docker 101 - Zaragoza Docker Meetup - Universidad de Zaragoza
 
How to Write Alfresco Addons that Last Forever
How to Write Alfresco Addons that Last ForeverHow to Write Alfresco Addons that Last Forever
How to Write Alfresco Addons that Last Forever
 
10 Tips Every New Developer in Alfresco Should Know
10 Tips Every New Developer in Alfresco Should Know10 Tips Every New Developer in Alfresco Should Know
10 Tips Every New Developer in Alfresco Should Know
 
Zaragoza dev ops-activiti-khd-20181212
Zaragoza dev ops-activiti-khd-20181212Zaragoza dev ops-activiti-khd-20181212
Zaragoza dev ops-activiti-khd-20181212
 
Docker community leader application angel borroy - 20180801
Docker community leader application   angel borroy - 20180801Docker community leader application   angel borroy - 20180801
Docker community leader application angel borroy - 20180801
 

Recently uploaded

Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...harshavardhanraghave
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxComplianceQuest1
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...MyIntelliSource, Inc.
 
chapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptchapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptkotipi9215
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...gurkirankumar98700
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...stazi3110
 
Cloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackCloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackVICTOR MAESTRE RAMIREZ
 
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdfThe Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdfkalichargn70th171
 
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideBuilding Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideChristina Lin
 
why an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfwhy an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfjoe51371421
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdfWave PLM
 
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEBATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEOrtus Solutions, Corp
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comFatema Valibhai
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)OPEN KNOWLEDGE GmbH
 
Asset Management Software - Infographic
Asset Management Software - InfographicAsset Management Software - Infographic
Asset Management Software - InfographicHr365.us smith
 
Professional Resume Template for Software Developers
Professional Resume Template for Software DevelopersProfessional Resume Template for Software Developers
Professional Resume Template for Software DevelopersVinodh Ram
 
What is Binary Language? Computer Number Systems
What is Binary Language?  Computer Number SystemsWhat is Binary Language?  Computer Number Systems
What is Binary Language? Computer Number SystemsJheuzeDellosa
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providermohitmore19
 

Recently uploaded (20)

Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docx
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
 
chapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptchapter--4-software-project-planning.ppt
chapter--4-software-project-planning.ppt
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
 
Cloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackCloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStack
 
Call Girls In Mukherjee Nagar 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
Call Girls In Mukherjee Nagar 📱  9999965857  🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...Call Girls In Mukherjee Nagar 📱  9999965857  🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
Call Girls In Mukherjee Nagar 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
 
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdfThe Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
 
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideBuilding Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
 
why an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfwhy an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdf
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf
 
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEBATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.com
 
Exploring iOS App Development: Simplifying the Process
Exploring iOS App Development: Simplifying the ProcessExploring iOS App Development: Simplifying the Process
Exploring iOS App Development: Simplifying the Process
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)
 
Asset Management Software - Infographic
Asset Management Software - InfographicAsset Management Software - Infographic
Asset Management Software - Infographic
 
Professional Resume Template for Software Developers
Professional Resume Template for Software DevelopersProfessional Resume Template for Software Developers
Professional Resume Template for Software Developers
 
What is Binary Language? Computer Number Systems
What is Binary Language?  Computer Number SystemsWhat is Binary Language?  Computer Number Systems
What is Binary Language? Computer Number Systems
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
 

How to migrate from Alfresco Search Services to Alfresco SearchEnterprise

  • 1. June 6 - 8th, 2023 Hyland’s Global Headquarters – Westlake, OH
  • 2. How to migrate from Search Services to Search Enterprise THE ALFRESCO NEXT-GEN SEARCH SERVICE Angel Borroy Developer Evangelist
  • 3. AGENDA § Meet the Alfresco Search Family! § Deploying Alfresco Search Enterprise § Migrating from Alfresco Search Services
  • 4. MEET THE SEARCH FAMILY!
  • 6. Search and Insight Engine Search Services SEARCH PRODUCTS Search Enterprise Cloud Connector (+) Sharding (+) Reporting 2.x 3.x STANDARD COMMUNITY Search Services ENTERPRISE Search and Insight Engine Search Enterprise
  • 7. SEARCH SERVICES + SEARCH AND INSIGHT ENGINE Content Services Search Services HTTP HTTP alfresco.cron=0/10 * * * * ? * Transform Core AIO HTTP Asynchronous polling request indexing mode
  • 8. SEARCH ENTERPRISE Content Services Search Enterprise Database PostgreSQL Messages ActiveMQ TCP TCP JDBC HTTP HTTP Transform Service JDBC TCP HTTP Asynchronous message indexing mode Cloud Connector
  • 10. SIMPLE DEPLOYMENT : SEARCH & INDEXING alfresco/alfresco-content-repository alfresco/alfresco-activemq alfresco/alfresco-elasticsearch-live-indexing alfresco/alfresco-transform-router alfresco/alfresco-shared-file-store Local deployment is supported via java -jar alfresco-elasticsearch-live-indexing.jar
  • 11. SIMPLE DEPLOYMENT : REINDEXING alfresco/alfresco-content-repository alfresco/alfresco-activemq alfresco/alfresco-transform-router alfresco/alfresco-shared-file-store alfresco/alfresco-elasticsearch-reindexing Local deployment is supported via java -jar alfresco-elasticsearch-reindexing.jar Metadata Permissions Paths Content
  • 12. metadata metadata SCALING UP : INDEXING CLUSTER mediation metadata content path alfresco/alfresco-elasticsearch-live-indexing alfresco/alfresco-activemq alfresco/alfresco-shared-file-store
  • 13. SCALING UP : INDEXING content NoC < 10 Increasing the number of consumers doesn’t help Number of Pending Messages +++ metadata NoC++ Increase the number of metadata consumers Search Engine Resources++ Increase RAM / CPU of Cluster Alternatively, add a new node to the Cluser (shards are managed internally) mediation NoC++ Increase the number of mediation consumers
  • 14. SCALING UP : SEARCHING https://www.elastic.co/guide/en/elasticsearch/reference/current/tune-for-search-speed.html https://opensearch.org/docs/latest/search-plugins/knn/performance-tuning/#search-performance-tuning § Configure HEAP with ES_HEAP_SIZE • Avoid using directly -Xms -Xmx • Leave ½ of the memory available to Lucene § Reduce swapping • Using bootstrap.mlockall:true property prevents JVM to swap § Set the right buffer size for indexing with indices.memory.index_buffer_size • Each Shard requires around 512 mb but increasing it doesn’t help
  • 15. SCALING UP : REINDEXING WITH REMOTE PARTITIONS alfresco-elasticsearch-reindexing alfresco-elasticsearch-reindexing alfresco-elasticsearch-reindexing alfresco-activemq MANAGER DB Schema Validation Partition creation Reindexing Database WORKER 1 Read partition Index nodes WORKER N Read partition Index nodes Alfresco Database Produce partition requests > < Consume workers replies … < partition < partition reply > reply > Partition By ID Range By Date Range
  • 16. SECURITY CONSIDERATIONS Search Enterprise ActiveMQ Transform Service mTLS mTLS mTLS mTLS Content Services mTLS https://github.com/alfresco/alfresco-ssl-generator truststore keystore truststore keystore truststore keystore truststore keystore truststore keystore
  • 18. WHY TO ADOPT SEARCH ENTERPRISE § Supporting Elasticsearch and OpenSearch out-of-the-box products § Documents and values are available for searching sooner § Re-indexing large repositories is much faster, moving the scale of time from days to hours § Scaling up the search engine is easier, and it can be almost transparent when using managed services § Cloud deployment based in Kubernetes is better supported § Alfresco Search products based in SOLR are currently in maintenance mode
  • 19. DESIGNING YOUR PATH TO SEARCH ENTERPRISE Upgraded ACS Compatibility Existing ACS ACS >= 7.1 Upgrade ACS Rewrite queries Downtime Parallel Indexing Unsupported Features Supported Platforms Zero Downtime Upgrade
  • 20. COMPATIBILITY VERIFICATION Review Unsupported Features documentation § Field Queries like DBID, TXID, ACLID, ANCESTOR or FTSSTATUS § SQL query language using JDBC Driver § Data types like any, assocref, locale and qname Audit your ACS Deployment § Build a query catalog for your use case § Approach using the Audit Subsystem is available in • https://github.com/AlfrescoLabs/alfresco-query-catalog-builder Run a dry run on a testing environment using Search Enterprise with your data and your apps
  • 21. UPGRADING FROM ACS 6.X ACS 6.x SOLR ACS 7.4 Elasticsearch | OpenSearch ACS 7.4 Elasticsearch | OpenSearch Elasticsearch | OpenSearch Replica DB ACS 7.4 Reindexing Reindexing Indexing Content Store https://docs.alfresco.com/search-enterprise/latest/upgrade/#upgrade-from-legacy-content-services
  • 22. ZERO DOWNTIME UPGRADE ACS 7.4 SOLR ACS 7.4 Elasticsearch | OpenSearch Elasticsearch | OpenSearch Replica DB ACS 7.4 Reindexing + Indexing Indexing Content Store https://docs.alfresco.com/search-enterprise/latest/upgrade/#zero-downtime-upgrade
  • 23. UPGRADE TO SEARCH ENTERPRISE TODAY!