Presentation on how to move from the Alfresco Search Services product based in Apache Solr to the new Alfresco Search Enterprise integrated with Elasticsearch and Amazon Opensearch.
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
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