SlideShare une entreprise Scribd logo
1  sur  24
Télécharger pour lire hors ligne
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!

Contenu connexe

Tendances

Alfresco Share - Recycle Bin Ideas
Alfresco Share - Recycle Bin IdeasAlfresco Share - Recycle Bin Ideas
Alfresco Share - Recycle Bin Ideas
AlfrescoUE
 

Tendances (20)

Alfresco Security Best Practices 2014
Alfresco Security Best Practices 2014Alfresco Security Best Practices 2014
Alfresco Security Best Practices 2014
 
Scale your Alfresco Solutions
Scale your Alfresco Solutions Scale your Alfresco Solutions
Scale your Alfresco Solutions
 
Alfresco tuning part2
Alfresco tuning part2Alfresco tuning part2
Alfresco tuning part2
 
Moving From Actions & Behaviors to Microservices
Moving From Actions & Behaviors to MicroservicesMoving From Actions & Behaviors to Microservices
Moving From Actions & Behaviors to Microservices
 
(Re)Indexing Large Repositories in Alfresco
(Re)Indexing Large Repositories in Alfresco(Re)Indexing Large Repositories in Alfresco
(Re)Indexing Large Repositories in Alfresco
 
Storage and Alfresco
Storage and AlfrescoStorage and Alfresco
Storage and Alfresco
 
Alfresco Security Best Practices Guide
Alfresco Security Best Practices GuideAlfresco Security Best Practices Guide
Alfresco Security Best Practices Guide
 
Jose portillo dev con presentation 1138
Jose portillo   dev con presentation 1138Jose portillo   dev con presentation 1138
Jose portillo dev con presentation 1138
 
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
 
Guide to alfresco monitoring
Guide to alfresco monitoringGuide to alfresco monitoring
Guide to alfresco monitoring
 
Alfresco Content Modelling and Policy Behaviours
Alfresco Content Modelling and Policy BehavioursAlfresco Content Modelling and Policy Behaviours
Alfresco Content Modelling and Policy Behaviours
 
Architectural changes in the repo in 6.1 and beyond
Architectural changes in the repo in 6.1 and beyondArchitectural changes in the repo in 6.1 and beyond
Architectural changes in the repo in 6.1 and beyond
 
Alfresco DevCon 2019 Performance Tools of the Trade
Alfresco DevCon 2019   Performance Tools of the TradeAlfresco DevCon 2019   Performance Tools of the Trade
Alfresco DevCon 2019 Performance Tools of the Trade
 
Collaborative Editing Tools for Alfresco
Collaborative Editing Tools for AlfrescoCollaborative Editing Tools for Alfresco
Collaborative Editing Tools for Alfresco
 
Alfresco Share - Recycle Bin Ideas
Alfresco Share - Recycle Bin IdeasAlfresco Share - Recycle Bin Ideas
Alfresco Share - Recycle Bin Ideas
 
Alfresco node lifecyle, services and zones
Alfresco node lifecyle, services and zonesAlfresco node lifecyle, services and zones
Alfresco node lifecyle, services and zones
 
Ef09 installing-alfresco-components-1-by-1
Ef09 installing-alfresco-components-1-by-1Ef09 installing-alfresco-components-1-by-1
Ef09 installing-alfresco-components-1-by-1
 
The Alfresco ECM 1 Billion Document Benchmark on AWS and Aurora - Benchmark ...
The Alfresco ECM 1 Billion Document Benchmark on AWS and Aurora  - Benchmark ...The Alfresco ECM 1 Billion Document Benchmark on AWS and Aurora  - Benchmark ...
The Alfresco ECM 1 Billion Document Benchmark on AWS and Aurora - Benchmark ...
 
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
 
Digital Preservation with Archivematica: An Introduction
Digital Preservation with Archivematica: An IntroductionDigital Preservation with Archivematica: An Introduction
Digital Preservation with Archivematica: An Introduction
 

Similaire à How to migrate from Alfresco Search Services to Alfresco SearchEnterprise

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
Lucidworks
 

Similaire à 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
 

Plus de Angel Borroy López

Before & After Docker Init
Before & After Docker InitBefore & After Docker Init
Before & After Docker Init
Angel Borroy López
 

Plus de Angel Borroy López (20)

Transitioning from Customized Solr to Out-of-the-Box OpenSearch
Transitioning from Customized Solr to Out-of-the-Box OpenSearchTransitioning from Customized Solr to Out-of-the-Box OpenSearch
Transitioning from Customized Solr to Out-of-the-Box OpenSearch
 
Alfresco integration with OpenSearch - OpenSearchCon 2024 Europe
Alfresco integration with OpenSearch - OpenSearchCon 2024 EuropeAlfresco integration with OpenSearch - OpenSearchCon 2024 Europe
Alfresco integration with OpenSearch - OpenSearchCon 2024 Europe
 
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
 

Dernier

Jax, FL Admin Community Group 05.14.2024 Combined Deck
Jax, FL Admin Community Group 05.14.2024 Combined DeckJax, FL Admin Community Group 05.14.2024 Combined Deck
Jax, FL Admin Community Group 05.14.2024 Combined Deck
Marc Lester
 

Dernier (20)

COMPUTER AND ITS COMPONENTS PPT.by naitik sharma Class 9th A mittal internati...
COMPUTER AND ITS COMPONENTS PPT.by naitik sharma Class 9th A mittal internati...COMPUTER AND ITS COMPONENTS PPT.by naitik sharma Class 9th A mittal internati...
COMPUTER AND ITS COMPONENTS PPT.by naitik sharma Class 9th A mittal internati...
 
Jax, FL Admin Community Group 05.14.2024 Combined Deck
Jax, FL Admin Community Group 05.14.2024 Combined DeckJax, FL Admin Community Group 05.14.2024 Combined Deck
Jax, FL Admin Community Group 05.14.2024 Combined Deck
 
Abortion Clinic In Polokwane ](+27832195400*)[ 🏥 Safe Abortion Pills in Polok...
Abortion Clinic In Polokwane ](+27832195400*)[ 🏥 Safe Abortion Pills in Polok...Abortion Clinic In Polokwane ](+27832195400*)[ 🏥 Safe Abortion Pills in Polok...
Abortion Clinic In Polokwane ](+27832195400*)[ 🏥 Safe Abortion Pills in Polok...
 
Wired_2.0_CREATE YOUR ULTIMATE LEARNING ENVIRONMENT_JCON_16052024
Wired_2.0_CREATE YOUR ULTIMATE LEARNING ENVIRONMENT_JCON_16052024Wired_2.0_CREATE YOUR ULTIMATE LEARNING ENVIRONMENT_JCON_16052024
Wired_2.0_CREATE YOUR ULTIMATE LEARNING ENVIRONMENT_JCON_16052024
 
BusinessGPT - Security and Governance for Generative AI
BusinessGPT  - Security and Governance for Generative AIBusinessGPT  - Security and Governance for Generative AI
BusinessGPT - Security and Governance for Generative AI
 
Spring into AI presented by Dan Vega 5/14
Spring into AI presented by Dan Vega 5/14Spring into AI presented by Dan Vega 5/14
Spring into AI presented by Dan Vega 5/14
 
Microsoft365_Dev_Security_2024_05_16.pdf
Microsoft365_Dev_Security_2024_05_16.pdfMicrosoft365_Dev_Security_2024_05_16.pdf
Microsoft365_Dev_Security_2024_05_16.pdf
 
What is a Recruitment Management Software?
What is a Recruitment Management Software?What is a Recruitment Management Software?
What is a Recruitment Management Software?
 
[GeeCON2024] How I learned to stop worrying and love the dark silicon apocalypse
[GeeCON2024] How I learned to stop worrying and love the dark silicon apocalypse[GeeCON2024] How I learned to stop worrying and love the dark silicon apocalypse
[GeeCON2024] How I learned to stop worrying and love the dark silicon apocalypse
 
Weeding your micro service landscape.pdf
Weeding your micro service landscape.pdfWeeding your micro service landscape.pdf
Weeding your micro service landscape.pdf
 
Abortion Clinic In Springs ](+27832195400*)[ 🏥 Safe Abortion Pills in Springs...
Abortion Clinic In Springs ](+27832195400*)[ 🏥 Safe Abortion Pills in Springs...Abortion Clinic In Springs ](+27832195400*)[ 🏥 Safe Abortion Pills in Springs...
Abortion Clinic In Springs ](+27832195400*)[ 🏥 Safe Abortion Pills in Springs...
 
Tree in the Forest - Managing Details in BDD Scenarios (live2test 2024)
Tree in the Forest - Managing Details in BDD Scenarios (live2test 2024)Tree in the Forest - Managing Details in BDD Scenarios (live2test 2024)
Tree in the Forest - Managing Details in BDD Scenarios (live2test 2024)
 
Anypoint Code Builder - Munich MuleSoft Meetup - 16th May 2024
Anypoint Code Builder - Munich MuleSoft Meetup - 16th May 2024Anypoint Code Builder - Munich MuleSoft Meetup - 16th May 2024
Anypoint Code Builder - Munich MuleSoft Meetup - 16th May 2024
 
Prompt Engineering - an Art, a Science, or your next Job Title?
Prompt Engineering - an Art, a Science, or your next Job Title?Prompt Engineering - an Art, a Science, or your next Job Title?
Prompt Engineering - an Art, a Science, or your next Job Title?
 
Community is Just as Important as Code by Andrea Goulet
Community is Just as Important as Code by Andrea GouletCommunity is Just as Important as Code by Andrea Goulet
Community is Just as Important as Code by Andrea Goulet
 
Entropy, Software Quality, and Innovation (presented at Princeton Plasma Phys...
Entropy, Software Quality, and Innovation (presented at Princeton Plasma Phys...Entropy, Software Quality, and Innovation (presented at Princeton Plasma Phys...
Entropy, Software Quality, and Innovation (presented at Princeton Plasma Phys...
 
Alluxio Monthly Webinar | Simplify Data Access for AI in Multi-Cloud
Alluxio Monthly Webinar | Simplify Data Access for AI in Multi-CloudAlluxio Monthly Webinar | Simplify Data Access for AI in Multi-Cloud
Alluxio Monthly Webinar | Simplify Data Access for AI in Multi-Cloud
 
Sinoville Clinic ](+27832195400*)[🏥Abortion Pill Prices Sinoville ● Women's A...
Sinoville Clinic ](+27832195400*)[🏥Abortion Pill Prices Sinoville ● Women's A...Sinoville Clinic ](+27832195400*)[🏥Abortion Pill Prices Sinoville ● Women's A...
Sinoville Clinic ](+27832195400*)[🏥Abortion Pill Prices Sinoville ● Women's A...
 
Optimizing Operations by Aligning Resources with Strategic Objectives Using O...
Optimizing Operations by Aligning Resources with Strategic Objectives Using O...Optimizing Operations by Aligning Resources with Strategic Objectives Using O...
Optimizing Operations by Aligning Resources with Strategic Objectives Using O...
 
Auto Affiliate AI Earns First Commission in 3 Hours..pdf
Auto Affiliate  AI Earns First Commission in 3 Hours..pdfAuto Affiliate  AI Earns First Commission in 3 Hours..pdf
Auto Affiliate AI Earns First Commission in 3 Hours..pdf
 

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!