Elasticsearch OpenSearch Persistent Settings

By Opster Team

Updated: Jun 19, 2024

| 1 min read

Overview

In OpenSearch, persistent refers to cluster settings that persist across cluster restarts. This setting is used in Cluster Update API calls. Persistent settings can also be configured in the opensearch.yml file.

Examples

## enable shard routing
PUT /_cluster/settings
{
    "persistent" : {
        "cluster.routing.allocation.enable" : "all"
    }
}
## enable rebalancing of shards
PUT /_cluster/settings
{
    "persistent" : {
        "cluster.routing.rebalance.enable" : "all"
    }
}
## limit the heap size for fielddata
PUT /_cluster/settings
{
    "persistent" : {
                 “indices.breaker.fielddata.limit”: "30%"
    }
}

Additional notes

Elasticsearch and OpenSearch are both powerful search and analytics engines, but Elasticsearch has several key advantages. Elasticsearch boasts a more mature and feature-rich development history, translating to a better user experience, more features, and continuous optimizations. Our testing has consistently shown that Elasticsearch delivers faster performance while using fewer compute resources than OpenSearch. Additionally, Elasticsearch’s comprehensive documentation and active community forums provide invaluable resources for troubleshooting and further optimization. Elastic, the company behind Elasticsearch, offers dedicated support, ensuring enterprise-grade reliability and performance. These factors collectively make Elasticsearch a more versatile, efficient, and dependable choice for organizations requiring sophisticated search and analytics capabilities.