private static void updateSettings(BulkIndexer bulkIndexer, Map<String, Object> settings) { UpdateSettingsRequestBuilder req = bulkIndexer.client.nativeClient().admin().indices().prepareUpdateSettings(bulkIndexer.indexType.getIndex()); req.setSettings(settings); req.get(); } }
@Override public UpdateSettingsRequestBuilder prepareUpdateSettings(String... indices) { return new UpdateSettingsRequestBuilder(this, UpdateSettingsAction.INSTANCE).setIndices(indices); }
protected void markIndicesReadOnly(Set<String> indicesToMarkReadOnly) { // set read-only block but don't block on the response client.admin().indices().prepareUpdateSettings(indicesToMarkReadOnly.toArray(Strings.EMPTY_ARRAY)). setSettings(Settings.builder().put(IndexMetaData.SETTING_READ_ONLY_ALLOW_DELETE, true).build()).execute(); }
@Override public UpdateSettingsRequestBuilder newRequestBuilder(ElasticsearchClient client) { return new UpdateSettingsRequestBuilder(client, this); } }
@Override public void commit() { if (this.client != null) { this.flushIndex(true); this.client.admin().indices() .refresh(new RefreshRequest(this.indexName)).actionGet(); // enable index auto refresh ImmutableSettings.Builder indexSettings = ImmutableSettings .settingsBuilder(); indexSettings.put("refresh_interval", 1); this.client.admin().indices().prepareUpdateSettings(this.indexName) .setSettings(indexSettings).execute().actionGet(); this.client.admin().indices().prepareOptimize(this.indexName) .setMaxNumSegments(5).execute().actionGet(); } }
@Override public UpdateSettingsRequestBuilder newRequestBuilder(ElasticsearchClient client) { return new UpdateSettingsRequestBuilder(client, this); } }
private void updateIndexRefresh(String name, Object value) { esClient.admin().indices().prepareUpdateSettings(name).setSettings(ImmutableMap.of("index.refresh_interval", value)).get(); }
indexSettings.put("refresh_interval", -1); this.client.admin().indices().prepareUpdateSettings(this.indexName) .setSettings(indexSettings).execute().actionGet();
@Override public UpdateSettingsRequestBuilder prepareUpdateSettings(String... indices) { return new UpdateSettingsRequestBuilder(this, UpdateSettingsAction.INSTANCE).setIndices(indices); }
@Override public UpdateSettingsRequestBuilder newRequestBuilder(ElasticsearchClient client) { return new UpdateSettingsRequestBuilder(client, this); } }
private void setIndexSettings(String index, Map<String, Object> settings) { UpdateSettingsResponse response = SHARED_NODE.client().admin().indices() .prepareUpdateSettings(index) .setSettings(settings) .get(); checkState(response.isAcknowledged()); }
protected void markIndicesReadOnly(Set<String> indicesToMarkReadOnly) { // set read-only block but don't block on the response client.admin().indices().prepareUpdateSettings(indicesToMarkReadOnly.toArray(Strings.EMPTY_ARRAY)). setSettings(Settings.builder().put(IndexMetaData.SETTING_READ_ONLY_ALLOW_DELETE, true).build()).execute(); }
@Override public UpdateSettingsRequestBuilder prepareUpdateSettings(String... indices) { return new UpdateSettingsRequestBuilder(this, UpdateSettingsAction.INSTANCE).setIndices(indices); }
@Override public UpdateSettingsRequestBuilder newRequestBuilder(ElasticsearchClient client) { return new UpdateSettingsRequestBuilder(client, this); } }
/** * Update settings in Elasticsearch * @param client Elasticsearch client * @param index Index name * @param settings Settings if any, null if no update settings * @throws Exception if the elasticsearch API call is failing */ @Deprecated private static void updateIndexWithSettingsInElasticsearch(Client client, String index, String settings) throws Exception { logger.trace("updateIndex([{}])", index); assert client != null; assert index != null; if (settings != null) { logger.trace("Found update settings for index [{}]: [{}]", index, settings); logger.debug("updating settings for index [{}]", index); client.admin().indices().prepareUpdateSettings(index).setSettings(settings, XContentType.JSON).get(); } logger.trace("/updateIndex([{}])", index); }
protected void markIndicesReadOnly(Set<String> indicesToMarkReadOnly) { // set read-only block but don't block on the response client.admin().indices().prepareUpdateSettings(indicesToMarkReadOnly.toArray(Strings.EMPTY_ARRAY)). setSettings(Settings.builder().put(IndexMetaData.SETTING_READ_ONLY_ALLOW_DELETE, true).build()).execute(); }
@Override public UpdateSettingsRequestBuilder prepareUpdateSettings(String... indices) { return new UpdateSettingsRequestBuilder(this, UpdateSettingsAction.INSTANCE).setIndices(indices); }
@Override public UpdateSettingsRequestBuilder newRequestBuilder(ElasticsearchClient client) { return new UpdateSettingsRequestBuilder(client, this); } }
/** * Update settings in Elasticsearch * @param client Elasticsearch client * @param index Index name * @param settings Settings if any, null if no update settings * @throws Exception if the elasticsearch API call is failing */ @Deprecated private static void updateIndexWithSettingsInElasticsearch(Client client, String index, String settings) throws Exception { logger.trace("updateIndex([{}])", index); assert client != null; assert index != null; if (settings != null) { logger.trace("Found update settings for index [{}]: [{}]", index, settings); logger.debug("updating settings for index [{}]", index); client.admin().indices().prepareUpdateSettings(index).setSettings(settings, XContentType.JSON).get(); } logger.trace("/updateIndex([{}])", index); }
/** * インデックスの設定を更新する. * @param index インデックス名 * @param settings 更新するインデックス設定 * @return Void */ public Void updateIndexSettings(String index, Map<String, String> settings) { Settings settingsForUpdate = Settings.settingsBuilder().put(settings).build(); esTransportClient.admin().indices().prepareUpdateSettings(index).setSettings(settingsForUpdate).execute() .actionGet(); return null; }