private void adjustReplicaRefresh(String index, int numReplicas, int refreshRateInSecs)
			throws ElasticException {
		StringBuilder builder = new StringBuilder();
		builder.append("{ \"index\": { ");
		builder.append("  \"number_of_replicas\": ").append(numReplicas).append(", ");
		builder.append("  \"refresh_interval\": \"");
		if (refreshRateInSecs < 1) {
			builder.append("-1");		// Indicates that no refreshes are scheduled
		}
		else {
			builder.append(refreshRateInSecs).append('s');
		}
		builder.append("\" } }");
		JsonObject resp = connection.executeStatement(ElasticConnection.PUT, index + "/_settings",
			builder.toString());
		JsonElement ack = resp.get("acknowledged");
		if (ElasticConnection.isNull(ack)) {
			throw new ElasticException(
				"Unknown response trying to adjust number_of_replicas and refresh_interval");
		}
		if (!ack.getAsBoolean()) {
			throw new ElasticException("Cluster did not accept settings for index: " + index);
		}
	}
Adjust the number of replicas and the refresh rate for the database.
Different settings may make sense depending on whether the database is
doing a large ingest or is currently only responding to queries
@param index is the specific database index to adjust
@param numReplicas is the number of replicas (data replication) requested
@param refreshRateInSecs is the refresh rate requested
@throws ElasticException for communication problems with the server
Ghidra/Features/BSim/src/main/java/ghidra/features/bsim/query/elastic/ElasticDatabase.java