我应该在哪里配置 max_result_window 索引设置?
Where should I configure max_result_window index setting?
我正在尝试添加到我的 elasticsearch.yml
index.max_result_window: 10000
但问题是它不喜欢我在配置中添加 index.
(导致错误),这在 elastica 版本 2.X 中工作,但现在在 [=19] =] 它似乎不起作用。知道如何在最近的 elastica 版本中配置索引吗?我似乎无法找到答案。
max_result_window
是动态索引级别设置,而不是特定于节点的。默认值为 10,000,因此如果这是您要设置的值,则不需要。
您可以通过更新特定索引设置或全局更新所有 现有 索引来调整它:
PUT _settings
{
"index.max_result_window": 11000
}
以上将更新所有 现有 索引。要让它对未来的索引生效,您需要一个针对特定索引模式的索引模板(或仅 * 用于全局)- 例如:
PUT _template/example
{
"index_patterns": ["settings_test*"],
"settings": {
"index.max_result_window": 12000
}
}
PUT settings_test
以上将产生以下结果:
GET settings_test
...
{
"settings_test" : {
"aliases" : { },
"mappings" : { },
"settings" : {
"index" : {
...
"max_result_window" : "12000",
...
}
}
}
}
参考:https://www.elastic.co/guide/en/elasticsearch/reference/current/index-modules.html
对于 elastica,我认为这是解决方案:
// Load index
$elasticaIndex = $elasticaClient->getIndex('twitter');
// Create the index new
$elasticaIndex->create(
array(
'number_of_shards' => 4,
'number_of_replicas' => 1,
'analysis' => array(
'analyzer' => array(
'default_index' => array(
'type' => 'custom',
'tokenizer' => 'standard',
'filter' => array('lowercase', 'mySnowball')
),
'default_search' => array(
'type' => 'custom',
'tokenizer' => 'standard',
'filter' => array('standard', 'lowercase', 'mySnowball')
)
),
'filter' => array(
'mySnowball' => array(
'type' => 'snowball',
'language' => 'German'
)
)
),
'max_result_window' => 10000
),
true
);
我正在尝试添加到我的 elasticsearch.yml
index.max_result_window: 10000
但问题是它不喜欢我在配置中添加 index.
(导致错误),这在 elastica 版本 2.X 中工作,但现在在 [=19] =] 它似乎不起作用。知道如何在最近的 elastica 版本中配置索引吗?我似乎无法找到答案。
max_result_window
是动态索引级别设置,而不是特定于节点的。默认值为 10,000,因此如果这是您要设置的值,则不需要。
您可以通过更新特定索引设置或全局更新所有 现有 索引来调整它:
PUT _settings
{
"index.max_result_window": 11000
}
以上将更新所有 现有 索引。要让它对未来的索引生效,您需要一个针对特定索引模式的索引模板(或仅 * 用于全局)- 例如:
PUT _template/example
{
"index_patterns": ["settings_test*"],
"settings": {
"index.max_result_window": 12000
}
}
PUT settings_test
以上将产生以下结果:
GET settings_test
...
{
"settings_test" : {
"aliases" : { },
"mappings" : { },
"settings" : {
"index" : {
...
"max_result_window" : "12000",
...
}
}
}
}
参考:https://www.elastic.co/guide/en/elasticsearch/reference/current/index-modules.html
对于 elastica,我认为这是解决方案:
// Load index
$elasticaIndex = $elasticaClient->getIndex('twitter');
// Create the index new
$elasticaIndex->create(
array(
'number_of_shards' => 4,
'number_of_replicas' => 1,
'analysis' => array(
'analyzer' => array(
'default_index' => array(
'type' => 'custom',
'tokenizer' => 'standard',
'filter' => array('lowercase', 'mySnowball')
),
'default_search' => array(
'type' => 'custom',
'tokenizer' => 'standard',
'filter' => array('standard', 'lowercase', 'mySnowball')
)
),
'filter' => array(
'mySnowball' => array(
'type' => 'snowball',
'language' => 'German'
)
)
),
'max_result_window' => 10000
),
true
);