# Index API
原文链接 : [https://www.elastic.co/guide/en/elasticsearch/reference/current/docs-index_.html](https://www.elastic.co/guide/en/elasticsearch/reference/current/docs-index_.html)
译文链接 : [http://www.apache.wiki/display/Elasticsearch/Index+API](http://www.apache.wiki/display/Elasticsearch/Index+API)
贡献者 : [小瑶](/display/~chenyao),[ApacheCN](/display/~apachecn),[Apache中文网](/display/~apachechina)
索引 **API** 在特定索引中 **add** ( 添加 ) 或 **update **( 更新 ) **a typed JSON document** ( 类型化的 **JSON** 文档 ),使其可搜索。以下示例将 **JSON** 文档插入到 **“twitter”** 索引中,**ID** 为**1** :
```
curl -XPUT 'localhost:9200/twitter/tweet/1?pretty' -H 'Content-Type: application/json' -d'
{
"user" : "kimchy",
"post_date" : "2009-11-15T14:12:12",
"message" : "trying out Elasticsearch"
}
'
```
上边的索引操作结果为:
```
{
"_shards" : {
"total" : 2,
"failed" : 0,
"successful" : 2
},
"_index" : "twitter",
"_type" : "tweet",
"_id" : "1",
"_version" : 1,
"created" : true,
"result" : created
}
```
**_shards header** 提供有关索引操作的复制过程的信息。
* **total** - 指示应对多少 **shard copies **( 分片副本 )( **primary** ( 主 )分片和 **replica** ( 副本 ) 分片)执行索引操作。
* **successful** - 表示索引操作成功的分片副本的数量。
* **failed** - 在索引操作在副本碎片上失败的情况下包含与复制相关的错误的数组。
在 **successful** 至少为 **1** 的情况下索引操作成功。
注意
当索引操作 **successful** 返回时,可能不会全部启动副本碎片(默认情况下,只需要主索引,但可以更改此行为)。在这种情况下, **total** 将等于基于 **number_of_replicas** 设置的总分片,并且 **successful** 将等于已启动的分片数(主副本和副本)。如果没有失败, **failed** 将是 0 。
## automatic index creation ( 自动创建索引 )
如果索引操作尚未创建,则索引操作自动创建索引(**check out** 用于手动创建索引的 **[create index API](https://www.elastic.co/guide/en/elasticsearch/reference/current/indices-create-index.html)**),并且如果尚未创建,则自动为特定类型创建 **dynamic type mapping**( 动态类型映射 )(**check out [put mapping](https://www.elastic.co/guide/en/elasticsearch/reference/current/indices-put-mapping.html) API** 用于手动创建类型映射)。
**mapping** ( 映射 ) 本身非常灵活,并且是 **schema-free** ( 无模式的 )。**New fields** ( 新字段 ) 和 **objects** ( 对象 )将自动添加到指定类型的映射定义。查看[映射部分](https://www.elastic.co/guide/en/elasticsearch/reference/current/mapping.html)以获取有关映射定义的更多信息。
可以通过在所有节点的配置文件中将 **action.auto_create_index** 设置为 **false** 来禁用 自动创建索引。可以通过将 **index.mapper.dynamic** 设置为 **false** 为每个索引作为索引设置来禁用自动映射创建。
自动索引创建可以包括 ** a pattern based white/black list** ( 基于模式的 白/黑 列表 ),例如,设置
**action.auto_create_index to +aaa*,-bbb*,+ccc*,-* **( **+** 表示 允许,**-** 表示不允许)。
## Versioning ( 版本控制 )
每个索引文档都有一个版本号。相关的版本号作为对索引 **API** 请求的响应的一部分返回。索引 **API** 可选地允许在指定 **version** 参数时进行 **optimistic concurrency control** ( 乐观并发控制 )。这将控制要对其执行操作的文档的版本。一个用于版本控制的用例的好例子是 **performing a** **transactional read-then-update** ( 执行事务读取然后更新 ) 。从初始读取的文档指定版本可以确保在此期间没有发生更改(当为了更新而读取时,建议将 **preference** ( 偏好 ) 设置为 **_primary**)。例如:
```
curl -XPUT 'localhost:9200/twitter/tweet/1?version=2&pretty' -H 'Content-Type: application/json' -d'
{
"message" : "elasticsearch now has versioning support, double cool!"
}
'
```
注意:
版本控制是完全实时的,并且不受搜索操作的 **near real time**( 近实时 ) 方面的影响。如果没有提供版本,则在没有任何版本检查的情况下执行操作。
默认情况下,使用从 **1** 开始的内部版本控制,每个 **update** ( 更新 ),包括 **deletes** ( 删除 )。可选地,版本号可以用外部值(例如,如果在数据库中维护)来补充。要启用此功能, **version_type** 应该设置为 **external** 。提供的值必须是大于或者等于 **0** 且小于大约 **9.2e+18** 的数字长值。当使用 **external version type** ( 外部版本类型 ) 时,系统检查传递给索引请求的版本号是否大于当前存储的文档的版本,而不是检查匹配的版本号。如果为 **true** ,则文档将被索引并使用新的版本号。如果提供的值小于或等于存储的文档的版本号,则会出现版本冲突,并且索引操作将失败。
警告
外部版本支持 值 **0** 作为有效的版本号。这允许版本与外部版本系统同步,其中版本号从零开始而不是从 **1** 开始。它的副作用是,版本号等于 **0** 的文档既不能使用 **[Update-By-Query API](https://www.elastic.co/guide/en/elasticsearch/reference/current/docs-update-by-query.html)** 更新,也不能使用 **[Delete By Query API](https://www.elastic.co/guide/en/elasticsearch/reference/current/docs-delete-by-query.html)** 删除,只要他们的版本号等于 0 。
一个好的作用是,不需要维护作为对源数据库的改变的结果执行的异步索引操作的严格排序,只要使用来自源数据库的版本号。即使使用外部版本控制也可以简化使用数据库中的数据更新弹性搜索索引的简单情况,因为如果索引操作因为某种原因而出现故障,将只使用最新版本。
### Version types ( 版本类型 )
在上边解释的 **internal **( 内部 ) 和 **external** ( 外部 ) 版本类型旁边,**Elasticsearch** 还支持特定用例的其他类型。这里是不同版本类型及其语义的概述。
**internal**
仅在给定版本与存储的文档的版本相同时索引文档。
**external 或 external_gt**
如果给定版本严格高于存储的文档的版本或如果没有现有文档,则仅索引文档。给定版本将用作新版本,并与新文档一起存储。提供的版本必须是 **non-negative long number** ( 非负长数字 ) 。
**external_gte **
如果给定版本 等于 或者 高于 存储的文档的版本,则仅索引文档。如果没有现有文档,操作也将成功。给定版本将用作新版本,并与新文档一起存储。提供的版本必须是 **non-negative long number** ( 非负长数字 )。
注意:
** external_gte** 版本类型适用于特殊用例,应谨慎使用。如果使用不正确,可能会导致数据丢失。还有一个选项,**force** ,它也被弃用,因为它可能导致主分片和副本分片。
## Operation type ( 操作类型 )
索引操作还接受可用于强制创建操作的 **op_type**,允许 **"put-if-absent"** 行为。使用 **create** 时,如果索引中已存在该标识的文档,索引操作将失败。
下面是使用 **op_type** 参数的示例:
```
curl -XPUT 'localhost:9200/twitter/tweet/1?op_type=create&pretty' -H 'Content-Type: application/json' -d'
{
"user" : "kimchy",
"post_date" : "2009-11-15T14:12:12",
"message" : "trying out Elasticsearch"
}
'
```
指定 **create** 的另一个选项是使用以下 **uri** :
```
curl -XPUT 'localhost:9200/twitter/tweet/1/_create?pretty' -H 'Content-Type: application/json' -d'
{
"user" : "kimchy",
"post_date" : "2009-11-15T14:12:12",
"message" : "trying out Elasticsearch"
}
'
```
## automatic ID generation ( 自动 ID 生成 )
可以在不指定 **ID** 的情况下执行索引操作。在这种情况下,将自动生成 **id** 。此外,**op_type** 将自动设置为 **create** 。这里是一个例子(注意 **POST** 使用,而不是 **PUT**):
```
curl -XPOST 'localhost:9200/twitter/tweet/?pretty' -H 'Content-Type: application/json' -d'
{
"user" : "kimchy",
"post_date" : "2009-11-15T14:12:12",
"message" : "trying out Elasticsearch"
}
'
```
上述索引操作的结果是:
```
{
"_shards" : {
"total" : 2,
"failed" : 0,
"successful" : 2
},
"_index" : "twitter",
"_type" : "tweet",
"_id" : "6a8ca01c-7896-48e9-81cc-9f70661fcb32",
"_version" : 1,
"created" : true,
"result": "created"
}
```
## Routing ( 路由信息 )
默认情况下,分片 **placement **( 展示位置 )——或 **routing** ( 路由 ) ——通过使用文档的 **id** 值的哈希值来控制。对于更明确的控制,馈送到由路由使用的散列函数的值可以使用路由参数基于每个操作直接指定。例如:
```
curl -XPOST 'localhost:9200/twitter/tweet?routing=kimchy&pretty' -H 'Content-Type: application/json' -d'
{
"user" : "kimchy",
"post_date" : "2009-11-15T14:12:12",
"message" : "trying out Elasticsearch"
}
'
```
在上面的示例中,**"tweet"** 文档根据提供的 **routing parameter** ( 路由参数 ) 发送到 **shard ( 分片 ) :"kimchy"** 。
设置 **up explicit mapping**( 显式映射 ) 时,可以选择使用 **_routing** 字段来指示索引操作从文档本身提取路由值。这是在额外的文档解析通过的(非常小)成本。如果定义 **_routing** 映射并将其设置为必需,则如果未提供或提取路由值,则索引操作将失败。
## Parnets & Children
通过在索引时指定其父级,可以索引子文档。例如:
```
curl -XPUT 'localhost:9200/blogs?pretty' -H 'Content-Type: application/json' -d'
{
"mappings": {
"tag_parent": {},
"blog_tag": {
"_parent": {
"type": "tag_parent"
}
}
}
}
'
curl -XPUT 'localhost:9200/blogs/blog_tag/1122?parent=1111&pretty' -H 'Content-Type: application/json' -d'
{
"tag" : "something"
}
'
```
对子文档建立索引时,**routing value** ( 路由值 ) 会自动设置为与其父代相同,除非使用路由参数显式指定路由值。
## Distributed ( 分布式 )
索引操作基于其路由定向到 **primary shard **( 主分片 ) (参见上面的路由部分),并在包含此分片的实际节点上执行。在主分片完成操作后,如果需要,将更新分发到适用的副本。
## wait for active shards ( 等待活动分片 )
为了提高写入系统的 **resiliency** ( 弹性 ),索引操作可以配置为在继续操作之前等待一定数量的活动分片副本。如果所需的活动分片副本数不可用,则写操作必须等待并重试,直到必需的分片副本已启动或发生超时为止。默认情况下,写操作只等待主分片处于活动状态,然后再继续(**wait_for_active_shards=1**)。可以通过设置** index.write.wait_for_active_shards** 来动态地在索引设置中覆盖此默认值。要更改每个操作的此行为,可以使用 **wait_for_active_shards** 请求参数。
有效值是所有或任何正整数,直到索引中每个分片的配置副本的总数(即 **number_of_replicas+1**)。指定负值或者大于分片副本数的数字将抛出错误。
例如,假设我们有一个三个节点A,B和C的集群,我们创建一个索引,索引副本数设置为 3 (导致 4 个 **shard** 副本,比节点多一个副本)。如果我们尝试索引操作,默认情况下,操作将仅确保每个分片的主副本在继续之前可用。这意味着,即使 B 和 C 下降,并且 A 托管主分片副本,索引操作仍然将继续只有一个数据副本。如果对请求设置 wait_for_active_shards 设置为 3 (并且所有3个节点都已启动),则索引操作将在继续之前需要 3 个活动分片副本,这是应该满足的要求,因为在集群有3个活动节点,每个节点有一个碎片的副本。但是,如果我们将 **wait_for_active_shards** 设置为 all (或者 4, 这是相同的),索引操作将不会继续,因为索引中的每个碎片的所有的 4 个副本没有处于活动状态。该操作将超时,除非在集群中启动新节点以托管分片的第四个副本。
重要的是要注意,这个设置极大地减少了写操作不写入所需数量的分片副本的机会,但是它不能完全消除可能性,因为这种检查在写操作开始之前发生。一旦写操作正在进行,复制仍然可能在任意数量的 **shard** 副本上失败,但在主数据库上仍然成功。写操作响应的 **_shard** 部分显示复制成功/失败的分片副本的数量。
```
{
"_shards" : {
"total" : 2,
"failed" : 0,
"successful" : 2
}
}
```
## Refresh ( 刷新 )
控制此请求所做的更改对搜索可见。请参阅[ 刷新](https://www.elastic.co/guide/en/elasticsearch/reference/current/docs-refresh.html) 。
## Noop Updates
当使用索引 **API** 更新文档时,即使文档没有更改,也始终创建新版本的文档。如果这不可接受,请使用将 **detect_noop** 设置为 **true** 的**_update** **API** 。此选项在索引 **API** 上不可用,因为索引 **api** **doesn’t fetch the old source** ( 不提取旧源 ),并且无法将其与 **new source** ( 新源 ) 进行比较。
没有一个强制和快速的规则,当 **noop** 更新是不能接受的。它是许多因素的组合,例如数据源发送实际上是 **noops** 的更新的频率,以及每秒多少查询,**elasticsearch** 在接收更新时在分片上运行。
## Timeout ( 超时 )
执行索引操作时分配的 **primary shard** ( 主分片 ) 可能不可用。这种情况的一些原因可能是主分片当前正在从 **gateway **( 网关 ) 恢复或正在进行重定位。默认情况下,索引操作将在主分片上等待最多 **1** 分钟,然后失败并响应错误。 **timeout** 参数可以用于显式指定等待时间。以下是将其设置为 **5** 分钟的示例:
```
curl -XPUT 'localhost:9200/twitter/tweet/1?timeout=5m&pretty' -H 'Content-Type: application/json' -d'
{
"user" : "kimchy",
"post_date" : "2009-11-15T14:12:12",
"message" : "trying out Elasticsearch"
}
'
```
- Getting Started(入门指南)
- Basic Concepts(基础概念)
- Installation(安装)
- Exploring Your Cluster(探索集群)
- Cluster Health(集群健康)
- List All Indices(列出所有索引)
- Create an Index(创建索引)
- Index and Query a Document(索引和查询文档)
- Delete an Index(删除索引)
- Modifying Your Data(修改数据)
- Updating Documents(更新文档)
- Deleting Documents(删除文档)
- Batch Processing(批处理)
- Exploring Your Data(探索数据)
- The Search API(搜索 API)
- Introducing the Query Language(介绍查询语言)
- Executing Searches(执行查询)
- Executing Filters(执行过滤)
- Executing Aggregations(执行聚合)
- Conclusion(总结)
- Setup Elasticsearch(设置)
- Installing Elasticsearch(安装)
- zip 或 tar.gz 安装
- Debian软件包安装Elasticsearch
- 用RPM安装Elasticsearch
- Windows 环境下安装ES
- Docker 方式安装
- 配置Elasticsearch
- 重要Elasticsearch配置
- 安全配置
- 启动前检查
- 堆大小检查
- 文件描述符检查
- 内存锁定检查
- 最大线程数检查
- 最大虚拟内存检查
- 最大map数检查
- JVM Client模式检查
- 串行收集使用检查
- 系统调用过滤检查
- OnError与OnOutOfMemoryError检查
- G1GC检查
- 重要的系统配置
- 系统设置
- 在jvm.options中设置JVM堆大小
- 禁用swapping
- 文件描述符
- 虚拟内存
- 线程数
- 升级Elasticsearch
- Elasticsearch停机
- 重大改变
- 在5.3 重大改变
- 在5.2 重大改变
- Shadow Replicas已被弃用
- 在5.1 重大改变
- 在5.0 重大改变
- 搜索和查询DSL改变
- 映射改变
- 过滤器改变
- Suggester变化
- 索引API改变
- 文档API改变
- 设置的改变
- 分配改变
- HTTP改变
- REST API改变
- CAT API改变
- Java API改变
- Packaging
- Plugin改变
- 文件系统相关改变
- 磁盘上数据的路径
- 聚合改变
- 脚本相关改变
- API 规范
- Multiple Indices(多个索引)
- Date math support in index names(索引名称对 Date 和 Math 的支持)
- 常见选项
- URL-based access control(基于 URL 的访问控制)
- Document APIS
- Index API
- Get API
- Update API
- 通过查询 API 更新
- 多个 GET API
- Bulk API
- Reading and Writing documents(读写文档)
- Delete API
- Delete By Query API
- Reindex API
- Term Vectors
- Multi termvectors API
- ?refresh
- Search APIs
- Search
- URI Search
- Request Body Search
- Query
- From / Size
- Sort
- Source filtering
- Fields
- Script Fields
- Doc value Fields
- Post filter
- Highlighting
- Rescoring
- Search Type
- Scroll
- Preference
- Explain
- Version
- Index Boost
- min_score
- Named Queries
- Inner hits
- Search After
- Field Collapsing 字段折叠
- Search 模板
- Multi Search 模板
- Search Shards API
- Suggesters
- Completion Suggester
- Context Suggester
- Phrase Suggester
- Term suggester
- Multi Search API
- Count API
- Validate API
- Explain API
- Profile API
- Profiling Queries
- Profiling Aggregations
- Profiling Considerations
- Aggregations
- Metric Aggregations
- 值计数聚合(Value Count Aggregation)
- 地理边界聚合
- 地理重心聚合
- 基数聚合
- 平均值聚合
- 扩展统计聚合
- 最大值聚合
- 最小值聚合
- Bucket Aggregations
- Children Aggregation
- Date Histogram Aggregation
- Date Range Aggregation
- Diversified Sampler Aggregation
- Filter Aggregation(过滤器聚合)
- Filters Aggregation
- Geo Distance Aggregation(地理距离聚合)
- GeoHash grid Aggregation(GeoHash网格聚合)
- Global Aggregation(全局聚合)
- Histogram Aggregation
- IP Range Aggregation(IP范围聚合)
- Missing Aggregation
- Nested Aggregation(嵌套聚合)
- Range Aggregation(范围聚合)
- Reverse nested Aggregation
- Sampler Aggregation
- Significant Terms Aggregation
- 邻接矩阵聚合
- Pipeline Aggregations
- Avg Bucket Aggregation
- Derivative Aggregation(导数聚合)
- Max Bucket Aggregation
- Min Bucket Aggregation
- Sum Bucket Aggregation
- Stats Bucket Aggregation
- Extended Stats Bucket Aggregation(扩展信息桶聚合)
- Percentiles Bucket Aggregation(百分数桶聚合)
- Cumulative Sum Aggregation(累积汇总聚合)
- Bucket Script Aggregation(桶脚本聚合)
- Bucket Selector Aggregation(桶选择器聚合)
- Serial Differencing Aggregation(串行差异聚合)
- Matrix Aggregations
- Matrix Stats
- Matrix Stats(矩阵统计)
- Caching heavy aggregations(缓存频繁聚合)
- Returning only aggregation results(仅返回需要聚合的结果)
- Aggregation Metadata(聚合元数据)
- Returning the type of the aggregation(返回聚合的类型)
- 索引 API
- Create Index /创建索引
- Delete Index /删除索引
- Get Index /获取索引
- Indices Exists /索引存在
- Open / Close Index API /启动关闭索引
- Shrink Index /缩小索引
- Rollover Index/滚动索引
- Put Mapping /提交映射
- Get Mapping /获取映射
- Get Field Mapping /获取字段映射
- 卷影副本索引
- 依赖卷影副本的节点级设置
- 索引统计信息
- 索引段
- 索引恢复
- 索引分片存储
- 清理缓存
- 刷新
- 同步刷新
- 重新加载
- 强制合并
- cat APIs
- cat aliases
- cat allocation
- cat count
- cat fielddata
- cat health
- cat indices
- cat master
- cat nodeattrs
- cat nodes
- cat pending tasks
- cat plugins
- cat recovery
- cat repositories
- cat thread pool
- cat shards
- cat segments
- cat snapshots
- 集群 API
- Cluster Allocation Explain API
- Cluster Health
- Cluster Reroute
- Cluster State
- Cluster Stats
- Cluster Update Settings
- Nodes hot_threads
- Nodes Info
- Nodes Stats
- Pending cluster tasks
- Task Management API
- 查询 DSL
- 查询和过滤上下文
- Match ALL 查询
- 全文搜索
- 匹配查询
- 短语匹配查询
- 短语前缀匹配查询
- 多字段查询
- 常用术语查询
- 查询语句查询
- 简单查询语句
- 复合查询家族
- Constant Score 查询
- Bool 查询
- Dis Max 查询
- Function Score 查询
- Boosting 查询
- Indices 查询
- Join 查询
- Has Child Query
- Has Parent Query
- Nested Query(嵌套查询)
- Parent Id Query
- 术语查询
- Exists Query(非空值查询)
- Fuzzy Query(模糊查询)
- Ids Query(ID 查询)
- Prefix Query(前缀查询)
- Range Query(范围查询)
- Regexp Query(正则表达式查询)
- Term Query(项查询)
- Terms Query(多项查询)
- Type Query(类型查询)
- Wildcard Query(通配符查询)
- 地理位置查询
- GeoShape Query(地理形状查询)
- Geo Bounding Box Query(地理边框查询)
- Geo Distance Query(地理距离查询)
- Geo Distance Range Query(地理距离范围查询)
- Geo Polygon Query(地理多边形查询)
- Span 查询
- Span Term 查询
- Span Multi Term 查询
- Span First 查询
- Span Near 查询
- Span Or 查询
- Span Not 查询
- Span Containing 查询
- Span Within 查询
- Span Field Masking 查询
- Specialized queries(专业查询)
- Mapping(映射)
- 字段类型
- Array
- Binary
- Range
- Boolean
- Date
- Geo-point datatype
- String
- Text
- Token数
- 渗滤型
- KeyWord
- Nested
- Object
- Numeric
- Meta-Fields(元字段)
- _all field
- _field_names field
- _id field
- _index field
- _meta field
- _parent field
- _routing field
- _source field
- _type field
- _uid field
- Mapping parameters(映射参数)
- analyzer(分析器)
- normalizer(归一化)
- boost(提升)
- Coerce(强制类型转换)
- copy_to(合并参数)
- doc_values(文档值)
- dynamic(动态设置)
- enabled(开启字段)
- fielddata(字段数据)
- format (日期格式)
- ignore_above(忽略超越限制的字段)
- ignore_malformed(忽略格式不对的数据)
- include_in_all(_all 查询包含字段)
- index_options(索引设置)
- index (索引)
- fields(字段)
- Norms (标准信息)
- null_value(空值)
- position_increment_gap(短语位置间隙)
- properties (属性)
- search_analyzer (搜索分析器)
- similarity (匹配方法)
- store(存储)
- Term_vectors(词根信息)
- Dynamic Mapping(动态映射)
- default mapping(mapping中的_default_)
- Dynamic field mapping(动态字段映射)
- Dynamic templates(动态模板)
- Override default template(覆盖默认模板)
- Mapping(映射)
- Analysis
- Tokenizers(分词器)
- Standard Tokenizer(标准分词器)
- Letter Tokenizer
- Lowercase Tokenizer (小写分词器)
- Whitespace Analyzer
- 停止分析器
- UAX URL Email Tokenizer
- Classic Tokenizer
- Thai Tokenizer(泰语分词器)
- NGram Tokenizer
- Keyword Analyzer
- Path Hierarchy Tokenizer(路径层次分词器)
- Pattern Tokenizer
- Token Filters(词元过滤器)
- Apostrophe Token Filter(撇号/单引号过滤器)
- ASCII Folding Token Filter(ASCII Folding 词元过滤器)
- CJK Bigram Token Filter(CJK Bigram词元过滤器)
- CJK Width Token Filter(CJK宽度过滤器)
- Classic Token Filter(经典过滤器)
- Common Grams Token Filter(近义词词元过滤器)
- Compound Word Token Filter(复合词过滤器)
- Decimal Digit Token Filter(十进制数字过滤器)
- Delimited Payload Token Filter(Delimited Payload词元分析器)
- Edge NGram Token Filter(Edge NGram 词元过滤器)
- Elision Token Filter(Elision词元过滤器)
- Fingerprint Token Filter(指纹过滤器)
- Flatten Graph Token Filter(Flatten Graph 词元过滤器)
- Hunspell Token Filter(Hunspell 词元过滤器)
- Keep Types Token Filter(保留指定类型过滤器)
- Keep Words Token Filter(保留字过滤器)
- Keyword Marker Token Filter(Keyword Marker 词元过滤器)
- Keyword Repeat Token Filter(Keyword Repeat 词元过滤器)
- KStem Token Filter(KStem 词元过滤器)
- Length Token Filter(长度词元过滤器)
- Limit Token Count Token Filter(限制词元数量过滤器)
- Lowercase Token Filter(Lowercase 词元过滤器)
- Minhash Token Filter(Minhash过滤器)
- NGram Token Filter(NGram词元过滤器)
- Normalization Token Filter(标准化词元过滤器)
- Pattern Capture Token Filter(模式匹配词元过滤器)
- Pattern Replace Token Filter(模式替换词元过滤器)
- Phonetic Token Filter(Phonetic 词元过滤器)
- Porter Stem Token Filter(Porter Stem 词元过滤器)
- Reverse Token Filteredit(反向词元过滤器)
- Shingle Token Filter(Shingle 词元过滤器)
- Snowball Token Filter(Snowball 词元过滤器)
- Standard Token Filters(标准词元过滤器)
- Stemmer Override Token Filter(Stemmer Override 词元过滤器)
- Stemmer Token Filter(Stemmer 词元过滤器)
- Stop Token Filter(Stop 词元过滤器)
- Synonym Graph Token Filter(Synonym Graph 词元过滤器)
- Synonym Token Filter(Synonym 词元过滤器)
- Trim Token Filter(Trim词元过滤器)
- Truncate Token Filter(截断词元过滤器)
- Unique Token Filter(唯一词元过滤器)
- Uppercase Token Filter(Uppercase词元过滤器)
- Word Delimiter Token Filter(Word Delimiter 词元过滤器)
- Character Filters(字符过滤器)
- md Strip Character Filter
- Mapping Character Filter
- Pattern Replace Character Filter
- Anatomy of an analyzer(分析器的分析)
- Testing analyzers(测试分析器)
- Analyzers(分析器)
- Configuring built-in analyzers(配置内置分析器)
- Standard Analyzer(标准分析器)
- Simple Analyzer(简单分析器)
- 空白分析器
- Stop Analyzer
- 指纹分析器
- 模式分析器
- 自定义分析器
- 语言分析器
- 模块
- Indices(索引)
- Circuit breakers(熔断器)
- Fielddata cache(列数据缓存)
- indexing buffer(索引写入缓冲)
- indices Recovery(索引恢复)
- NetWork Setting(网络配置)
- Node Query Cache(节点查询缓存)
- Shard request cache(分片请求缓存)
- 脚本
- Groovy 脚本语言
- Painless 脚本语言
- Painless 语法
- Painless 调试
- Lucene表达式语言
- 原生(Java)脚本
- 高级文本评分脚本
- 快照和还原
- 线程池
- 传输
- HTTP
- Tribe Node (部落节点)
- 跨集群搜索
- Cluster(集群)
- Disk-based Shard Allocation ( 基于磁盘的分片分配 )
- Shard Allocation Awareness ( 分片分配意识 )
- 群集级别分片分配
- Node
- 插件
- Index Modules(索引模块)
- Analysis(分析)
- 索引分片分配
- 分片分配过滤
- 节点丢失时的延迟分配
- 索引恢复的优先级
- 每个节点的总分片数
- Mapper(映射)
- Merge(合并)
- Similarity module(相似模块)
- Slow log(慢日志)
- Store
- 预加载数据到文件系统缓存
- Translog(事务日志)
- Ingest Node(预处理节点)
- Pipeline Definition(管道定义)
- Ingest APIs
- Put Pipeline API
- Get Pipeline API
- Delete Pipeline API
- Simulate Pipeline API(模拟管道 API)
- Accessing Data in Pipelines(访问管道中的数据)
- Handling Failures in Pipelines(处理管道中的故障)
- Processors(处理器)
- Append Processor(追加处理器)
- Convert Processor(转换处理器)
- Date Processor(日期处理器)
- Date Index Name Processor(日期索引名称处理器)
- Fail Processor(故障处理器)
- Foreach Processor(循环处理器)
- Grok Processor(Grok 处理器)
- Gsub Processor(Gsub 处理器)
- Join Processor(连接处理器)
- JSON Processor(JSON 处理器)
- KV Processor(KV 处理器)
- Lowercase Processor(小写处理器)
- Remove Processor(删除处理器)
- Rename Processor(重命名处理器)
- Script Processor(脚本处理器)
- Set Processor(设置处理器)
- Split Processor(拆分处理器)
- Sort Processor(排序处理器)
- Trim Processor(修剪处理器)
- Uppercase Processor(大写处理器)
- Dot Expander Processor(点扩展器处理器)
- How to(操作方式)
- 一些建议
- Recipes(诀窍)
- 索引速率调优
- 查询优化
- 磁盘使用调优
- Testing(测试)
- Java Testing Framework(测试框架)
- ( why randomized testing ) 为什么随机测试?
- Using the elasticsearch test classes ( 使用 elasticsearch 测试类 )
- unit tests(单元测试)
- integreation test(集成测试)
- Randomized testing(随机测试)
- Assertions()
- Glossary of terms (词汇表)
- Release Notes(版本说明)
- 5.3.0 版本说明
- 5.2.2 Release Notes
- 5.2.1 Release Notes
- 5.2.0 Release Notes
- 5.1.2 Release Notes
- 5.1.1 Release Notes
- 5.1.0 Release Notes
- 5.0.1 Release Notes