AFei00 2019-06-28
大多数引用index
参数的API都支持跨多索引执行,使用简单的test1,test2,test3
符号(或_all
表示所有索引)。
它还支持通配符,例如:test*
、*test
、te*t
、*test*
,和“排除”的能力(-
),例如:test*,-test3
。
所有多索引API都支持以下url查询字符串参数:
ignore_unavailable
控制如果任何指定的索引不可用是否忽略,这包括不存在的索引或关闭的索引,可以指定true
或false
。
allow_no_indices
控制如果通配符索引表达式结果没有具体的索引是否失败,可以指定true
或false
。例如,如果指定了通配符表达式foo*
,并且没有以foo
开头的索引可用,那么根据这个设置,请求将失败。
当_all
、*
或没有指定索引时,此设置也适用,这种设置也适用于别名,以防别名指向一个关闭的索引。
expand_wildcards
控制扩展到何种具体索引通配符表达式,如果指定了open
,则通配符表达式将扩展为仅打开的索引,如果指定了closed
,则通配符表达式仅扩展到关闭的索引,也可以指定两个值(打开、关闭)以扩展到所有索引。
如果指定none
,则将禁用通配符扩展,如果指定了all
,通配符表达式将扩展到所有索引(这相当于指定open
、closed
)。
上述参数的默认设置取决于所使用的api。
单索引API(如文档API和单索引别名API)不支持多索引。另外一部分,则需要先做聚类、分类处理,将聚合出的分类结果存入ES集群的聚类索引中。数据处理层的聚合结果存入ES中的指定索引,同时将每个聚合主题相关的数据存入每个document下面的某个field下。