Elasticsearch-py 2.3版本的API翻译文档

546 阅读1小时+

参考资料

[TOC]

Elasticsearch

API Documentation

Global options

一、Ignore

如果elasticsearch返回2XX响应,则API调用被视为成功(并将返回响应)。否则,将引发TransportError(或更具体的子类)的实例。您可以在“Exception”中查看其他异常和错误状态。如果您不希望引发异常,则始终可以使用应忽略的单个状态代码或其列表传递ignore参数:

from elasticsearch import Elasticsearch
es = Elasticsearch()

# ignore 400 cause by IndexAlreadyExistsException when creating an index
es.indices.create(index='test-index', ignore=400)

# ignore 404 and 400
es.indices.delete(index='test-index', ignore=[400, 404])

二、Timeout

在构造客户端时可以设置全局超时(请参阅Connection的超时参数),或者在每个请求的基础上使用request_timeout(浮点值,以秒为单位)作为任何API调用的一部分来设置全局超时,此值将传递给执行的perform_request方法。

# only wait for 1 second, regardless of the client's default
es.cluster.health(wait_for_status='yellow', request_timeout=1)

三、Response Filtering

filter_path参数用于减少elasticsearch返回的响应。例如,要仅返回_id和_type,请执行以下操作:

es.search(index='test-index', filter_path=['hits.hits._id', 'hits.hits._type'])

它还支持*通配符以匹配字段名称的任何字段或部分:

es.search(index='test-index', filter_path=['hits.hits._*'])

Elasticsearch

class elasticsearch.Elasticsearch(hosts=None, transport_class=<class 'elasticsearch.transport.Transport'>, **kwargs)

Elasticsearch低级客户端。提供从Python到ES REST端点的直接映射。该实例具有属性cat,cluster,indices,nodes和snapshot,分别提供对CatClient,ClusterClient,IndicesClient,NodesClient和SnapshotClient实例的访问。这是访问这些类及其方法的首选(也是唯一受支持的)方式。您可以通过提供connection_class参数来指定应该使用的自己的连接类:

# create connection to localhost using the ThriftConnection
es = Elasticsearch(connection_class=ThriftConnection)

如果你想打开嗅探,你有几个选项(在Transport中描述):

# create connection that will automatically inspect the cluster to get
# the list of active nodes. Start with nodes running on 'esnode1' and
# 'esnode2'
es = Elasticsearch(
    ['esnode1', 'esnode2'],
    # sniff before doing anything
    sniff_on_start=True,
    # refresh nodes after a node fails to respond
    sniff_on_connection_fail=True,
    # and also every 60 seconds
    sniffer_timeout=60
)

不同的主机可以有不同的参数,每个节点使用一个字典来指定:

# connect to localhost directly and another node using SSL on port 443
# and an url_prefix. Note that ``port`` needs to be an int.
es = Elasticsearch([
    {'host': 'localhost'},
    {'host': 'othernode', 'port': 443, 'url_prefix': 'es', 'use_ssl': True},
])

如果使用SSL,有几个参数可以控制我们处理证书的方式(有关选项的详细说明,请参阅Urllib3HttpConnection):

es = Elasticsearch(
    ['localhost:443', 'other_host:443'],
    # turn on SSL
    use_ssl=True,
    # make sure we verify SSL certificates (off by default)
    verify_certs=True,
    # provide a path to CA certs on disk
    ca_certs='/path/to/CA_certs',
    # PEM formatted SSL client certificate
    client_cert='/path/to/clientcert.pem',
    # PEM formatted SSL client key
    client_key='/path/to/clientkey.pem'
)

或者,您可以使用RFC-1738格式的URL,只要它们与其他选项不冲突:

es = Elasticsearch(
    [
        'http://user:secret@localhost:9200/',
        'https://user:secret@other_host:443/production'
    ],
    verify_certs=True
)

parameters explain
hosts 我们应该连接的节点列表。节点应该是一个字典({“host”:“localhost”,“port”:9200}),整个字典将作为kwargs传递给Connection类,或者是一个主机[:port]格式的字符串, 被自动翻译成字典。如果没有给出值,将使用Urllib3HttpConnection类的默认值。
transport_class Transport 的子类被使用。
kwargs 任何其他参数将传递给Transport类,并随后传递给Connection实例。
bulk(*args, **kwargs)

在单个API调用中执行许多索引/删除操作。

parameters explain
body 操作定义和数据(动作 - 数据对),由换行符分隔
index 不提供一个项目的默认索引
doc_type 未提供一个项目的默认文档类型
consistency 操作的显式写一致性设置,有效选择是:'one','quorum','all'
fields 要在更新响应中返回的默认逗号分隔的字段列表
refresh Refresh the index after performing the operation
routing 具体路由值
timeout 显式操作超时
clear_scroll(*args, **keargs)

清除通过指定要搜索的滚动参数创建的滚动请求。

parameters explain
scroll_id 要清除的以逗号分隔的滚动ID列表
body 以逗号分隔的滚动ID列表,如果没有通过scroll_id参数指定,则清除它们
count(*args, **kwargs)

执行查询并获取该查询的匹配数。

parameters explain
index 以逗号分隔的索引列表,用于限制结果
doc_type 以逗号分隔的类型列表,用于限制结果
body 用于限制使用Query DSL指定的结果的查询(可选)
allow_no_indices 是否忽略通配符索引表达式是否解析为具体索引。(这包括_all字符串或未指定索引时)
analyze_wildcard 指定是否应分析通配符和前缀查询(默认值:false)
analyzer 用于查询字符串的分析器
default_operator 查询字符串查询(AND或OR)的默认运算符,默认为“OR”,有效选项为:'AND','OR'
df 要用作默认值的字段,其中查询字符串中未给出字段前缀
expand_wildcards 是否将通配符表达式扩展为打开,关闭或两者的具体索引。默认为“open”,有效选择为:'open','closed','none','all'
ignore_unavailable 是否应该忽略指定的具体索引(丢失或关闭)
lenient 指定是否应忽略基于格式的查询失败(例如向数字字段提供文本)
lowercase_expanded_terms 指定查询字词是否应该是小写的
min_score 仅包括结果中具有特定_score值的文档
preference 指定应对其执行操作的节点或分片(默认值:随机)
q 查询Lucene查询字符串语法
routing 具体路由值
count_percolate(*args, **kwargs)

过滤器允许针对索引注册查询,然后发送包含doc的percolate请求,并从注册查询集中获取与该doc匹配的查询。www.elastic.co/guide/en/el…

parameters explain
index 被计数的文件索引被渗透。
doc_type 被计数过滤的文档类型。
id 使用指定id已知的文档替换请求正文中的文档。在id的顶部,index和type参数将用于从集群中检索文档。
body 使用渗透DSL的计数过滤器请求定义
allow_no_indices 是否忽略通配符索引表达式是否解析为具体索引。(这包括_all字符串或未指定索引时)
expand_wildcards 是否将通配符表达式扩展为打开,关闭或两者的具体索引。默认为“open”,有效选项为:'open','closed','none','all'
ignore_unavailable 当不可用(丢失或关闭)时是否应忽略指定的具体索引
percolate_index 计算文档渗透的计数索引。默认为index。
percolate_type 将percolate文档计入的类型。默认为type。
preference 指定应对其执行操作的节点或分片(默认值:随机)
routing 以逗号分隔的特定路由值列表
version 并发控制的显式版本号
version_type 特定版本类型,有效选择是:'internal','external','external_gte','force'
create(*args, **kwargs)

在特定索引中添加类型化的JSON文档,使其可搜索。在幕后这个方法调用index(...,op_type ='create')

www.elastic.co/guide/en/el…

parameters explain
index 索引的名称
doc_type 文档的类型
body 文件
id 文档ID
consistency 操作的显式写一致性设置,有效选择是:'one','quorum','all'
op_type 显式操作类型,默认'index',有效选择是:'index','create'
parent 父文档的ID
refresh 执行操作后刷新索引
routing 特定的路由值
timeout 显式操作超时
timestamp 文档的显式时间戳
ttl 文档的到期时间
version 并发控制的显式版本号
version_type 特定版本类型,有效选择是:'internal','external','external', 'external_gte’, 'force’
delete(*args, **kwargs)

根据ID,从特定索引中删除类型化的JSON文档。

parmeters explain
index 索引的名称
doc_type 文档的类型
id 文档ID
consistency 操作的特定写一致性设置,有效选择是:'one','quorum','all'
parent 父文档的ID
refresh 执行操作后刷新索引
routing 特定的路由值
timeout 显式操作超时
version 并发控制的显式版本号
version_type 特定版本类型,有效选择是:'internal','external','external_gte','force'
delete_script(*args, **kwargs)

从elasticsearch中删除存储的脚本。 www.elastic.co/guide/en/el…

parmeters explain
lang 脚本语言
id 脚本ID
version 并发控制的显式版本号
version_type 特定版本类型,有效选择是:'internal','external','external_gte','force'
delete_template(*args, **kwargs)

删除搜索模板。 www.elastic.co/guide/en/el…

parmeters explain
id 模板ID
version 并发控制的显式版本号
version_type 特定版本类型,有效选择是:'internal','external','external_gte','force'
exists(*args, **kwargs)

返回一个布尔值,指示Elasticsearch中是否存在给定文档。 www.elastic.co/guide/en/el…

parmeters explain
index 索引的名称
doc_type 文档的类型(使用_all获取与所有类型的ID匹配的第一个文档)
id 文档ID
parent 父文档的ID
preference 指定应对其执行操作的节点或分片(默认值:随机)
realtime 指定是以实时还是搜索模式执行操作
refresh 在执行操作之前刷新包含文档的分片
routing 特定的路由值
Note
文档不存在时会提示 HEAD /internal_data/xxx/xxxxxxxxxx [status:404 request:0.004s]
explain(*args, **kwargs)

explain api计算查询和特定文档的分数说明。无论文档是否与特定查询匹配,这都可以提供有用的反馈。 www.elastic.co/guide/en/el…

parameters explain
index 索引的名称
doc_type 文档的类型
id 文档ID
body 使用Query DSL的查询定义
_source 返回_source字段的true或false,或返回的字段列表
_source_exclude 要从返回的_source字段中排除的字段列表
_source_include 从_source字段中提取和返回的字段列表
analyze_wildcard 指定是否应分析查询字符串查询中的通配符和前缀查询(默认值:false)
analyzer 查询字符串查询的分析器
default_operator 查询字符串查询的默认运算符(AND或OR),默认为'OR',有效选项为:'AND','OR'
df 查询字符串查询的默认字段(默认值:_all)
fields 要在响应中返回的以逗号分隔的字段列表
lenient 指定是否应忽略基于格式的查询失败(例如向数字字段提供文本)
lowercase_expanded_terms 指定查询字词是否应该是小写的
parent 父文档的ID
preference 指定应对其执行操作的节点或分片(默认值:随机)
q 查询Lucene查询字符串语法
routing 特定的路由值
field_stats(*args, **kwargs)

字段统计api允许人们在不执行搜索的情况下查找字段的统计属性,但查找Lucene索引中本机可用的度量。

parameters explain
index 以逗号分隔的索引名称列表;使用_all或空字符串对所有索引执行操作
body 包含名称的字段json对象和可选的过滤索引结果的范围,其结果超出定义的边界
allow_no_indices 是否忽略通配符索引表达式是否解析为具体索引。(这包括_all字符串或未指定索引时)
expand_wildcards 是否将通配符表达式扩展为打开,关闭或两者的具体索引。默认为“open”,有效选项为:'open','closed','none','all'
fields 以逗号分隔的字段列表,用于获取(最小值,最大值等)的字段统计信息
ignore_unavailable 当不可用(丢失或关闭)时是否应忽略指定的具体索引
level 定义是否应在每个索引级别或群集范围级别上返回字段统计信息,默认为“cluster”,有效选项为:'indices','cluster'
get(*args, **kwargs)

根据ID从索引中获取类型化的JSON文档。 www.elastic.co/guide/en/el…

parameters explain
index 索引的名称
doc_type 文档的类型(使用_all获取与所有类型的ID匹配的第一个文档)
id 文档ID
_source 返回_source字段的true或false,或返回的字段列表
_source_exclude 要从返回的_source字段中排除的字段列表
_source_include 从_source字段中提取和返回的字段列表
fields 要在响应中返回的以逗号分隔的字段列表
parent 父文档的ID
preference 指定应对其执行操作的节点或分片(默认值:随机)
realtime 指定是以实时还是搜索模式执行操作
refresh 在执行操作之前刷新包含文档的分片
routing 特定的路由值
version 并发控制的显式版本号
version_type 特定版本类型,有效选择是:'internal','external','external_gte','force'
get_script(*args, **kwargs)

从API检索脚本。 www.elastic.co/guide/en/el…

parameters explain
lang 脚本语言
id 脚本ID
version 并发控制的显式版本号
version_type 特定版本类型,有效选择是:'internal','external','external_gte','force'
get_source(*args, **kwargs)

通过它的索引,类型和ID获取文档的 _source 字段。 www.elastic.co/guide/en/el…

parameters explain
index 索引的名称
doc_type 文档的类型;使用_all获取与所有类型的ID匹配的第一个文档
id 文档ID
_source 返回_source字段的true或false,或返回的字段列表
_source_exclude 要从返回的_source字段中排除的字段列表
_source_include 从_source字段中提取和返回的字段列表
parent 父文档的ID
preference 指定应对其执行操作的节点或分片(默认值:随机)
realtime 指定是以实时还是搜索模式执行操作
refresh 在执行操作之前刷新包含文档的分片
routing 特定的路由值
version 并发控制的显式版本号
version_type 特定版本类型,有效选择是:'internal','external','external_gte','force'
get_template(*args, **kwargs)

检索搜索模板。 www.elastic.co/guide/en/el…

parameters explain
id 模板ID
version 并发控制的显式版本号
version_type 特定版本类型,有效选择是:'internal','external','external_gte','force'
index(*args, **kwargs)

在特定索引中添加或更新类型化的JSON文档,使其可搜索。 www.elastic.co/guide/en/el…

parameters explain
index 索引的名称
doc_type 文档的类型
body 文件
id 文档ID
consistency 操作的显式写一致性设置,有效选择是:'one','quorum','all'
op_type 显式操作类型,默认'索引',有效选择是:'index','create'
parent 父文档的ID
refresh 执行操作后刷新索引
routing 特定的路由值
timeout 显式操作超时
timestamp 文档的显式时间戳
ttl 文档的到期时间
version 并发控制的显式版本号
version_type 特定版本类型,有效选择是:'internal','external','external_gte','force'
info(*args, **kwargs)

从当前群集中获取基本信息。 www.elastic.co/guide/

mget(*args, **kwargs)

根据索引,类型(可选)和ID获取多个文档。 www.elastic.co/guide/en/el…

parameters explain
body 文件标识符;可以是docs(包含完整文档信息)或id(当URL中提供索引和类型时)。
index 索引的名称
doc_type 文档的类型
_source 返回_source字段的true或false,或返回的字段列表
_source_exclude 要从返回的_source字段中排除的字段列表
_source_include 从_source字段中提取和返回的字段列表
fields 要在响应中返回的以逗号分隔的字段列表
preference 指定应对其执行操作的节点或分片(默认值:随机)
realtime 指定是以实时还是搜索模式执行操作
refresh 在执行操作之前刷新包含文档的分片
mpercolate(*args, **kwargs)

过滤器允许针对索引注册查询,然后发送包含doc的percolate请求,并从注册查询集中获取与该doc匹配的查询。 www.elastic.co/guide/en/el…

parameters explain
body percolate请求定义(标题和正文对),由换行符分隔
index 要计数的文档索引作为默认值使用
doc_type 被渗透以用作默认值的文档类型。
allow_no_indices 是否忽略通配符索引表达式是否解析为具体索引。(这包括_all字符串或未指定索引时)
expand_wildcards 是否将通配符表达式扩展为打开,关闭或两者的具体索引。默认为“open”,有效选项为:'open','closed','none','all'
ignore_unavailable 当不可用(丢失或关闭)时是否应忽略指定的具体索引
msearch(*args, **kwargs)

在同一API中执行多个搜索请求。 www.elastic.co/guide/en/el…

parameters explain
body 请求定义(元数据搜索请求定义对),由换行符分隔
index 要用作默认值的逗号分隔的索引名称列表
doc_type 以逗号分隔的文档类型列表,用作默认值
search_type 搜索操作类型,有效选项为:'query_then_fetch','query_and_fetch','dfs_query_then_fetch','dfs_query_and_fetch','count','scan'
mtermvectors(*args, **kwargs)

multi termvectors API允许基于索引,类型和id获得多个termvectors。www.elastic.co/guide/en/el…

parameters explain
index 文档所在的索引。
doc_type 文档的类型。
body 在此处定义每个文档的ID,文档,参数或参数列表。您必须至少提供文档ID列表。见文档。
field_statistics 指定是否应返回文档计数,文档频率总和以及总术语频率之和。
fields 要返回的以逗号分隔的字段列表。
ids 以逗号分隔的文档ID列表。您必须将id定义为参数或在请求正文中设置“ids”或“docs”
offsets 指定是否应返回术语偏移量。
parent 文档的父ID。
payloads 指定是否应返回术语有效负载。
positions 指定是否应返回期限头寸。除非在正文“params”或“docs”中另有说明,否则适用于所有返回的文档。默认为True
preference 指定应对其执行操作的节点或分片(默认值:random)。适用于所有返回的文档,除非在body“params”或“docs”中另有指定。
realtime 指定请求是实时的而不是近实时的(默认值:true)。
routing 特定的路由值。除非在正文“params”或“docs”中另有说明,否则适用于所有返回的文档。
term_statistics 指定是否应返回总术语频率和文档频率。适用于所有返回的文档,除非在body“params”或“docs”中另有说明。默认为False
version 并发控制的显式版本号
version_type 特定版本类型,有效选择是:'internal','external','external_gte','force'
percolate(*args, **kwargs)

过滤器允许针对索引注册查询,然后发送包含doc的percolate请求,并从注册查询集中获取与该doc匹配的查询。www.elastic.co/guide/en/el…

parameters explain
index 要渗透的文档的索引。
doc_type 要渗透的文档的类型。
id 使用指定id已知的文档替换请求正文中的文档。在id的顶部,index和type参数将用于从集群中检索文档。
body 使用percolate DSL的过滤器请求定义
allow_no_indices 是否忽略通配符索引表达式是否解析为具体索引。(这包括_all字符串或未指定索引时)
expand_wildcards 是否将通配符表达式扩展为打开,关闭或两者的具体索引。默认为“open”,有效选项为:'open','closed','none','all'
ignore_unavailable 当不可用(丢失或关闭)时是否应忽略指定的具体索引
percolate_format 返回匹配查询ID而不是对象的数组,有效选项为:'ids'
percolate_index 将文档渗透到的索引。默认为索引。
percolate_preference 执行percolate请求时首选的分片。
percolate_routing 渗透现有文档时使用的路由值。
percolate_type 将文档渗透到的类型。默认为键入。
preference 指定应对其执行操作的节点或分片(默认值:随机)
routing 以逗号分隔的特定路由值列表
version 并发控制的显式版本号
version_type 特定版本类型,有效选择是:'internal','external','external_gte','force'
ping(*args, **kwargs)

如果群集已启动,则返回True,否则返回False。www.elastic.co/guide/

put_script(*args, **kwargs)

使用指定的ID创建给定语言的脚本。www.elastic.co/guide/en/el…

parameters explain
lang 脚本语言
id 脚本ID
body 文档
op_type 显式操作类型,默认'索引',有效选择是:'index','create'
version 并发控制的显式版本号
version_type 特定版本类型,有效选择是:'internal','external','external_gte','force'
put_template(*args, **kwargs)

创建搜索模板。www.elastic.co/guide/en/el…

parameters explain
id 模板ID
body 文档
op_type 显式操作类型,默认'索引',有效选择是:'index','create'
version 并发控制的显式版本号
version_type 特定版本类型,有效选择是:'internal','external','external_gte','force'
render_search_template(*args, **kwargs)

www.elasticsearch.org/guide/en/el…

parameters explain
id 存储的搜索模板的ID
body 搜索定义模板及其参数
scroll(*args, **kwargs)

滚动通过指定scroll参数创建的搜索请求。www.elastic.co/guide/en/el…

parameters explain
scroll_id 滚动ID
body 如果未通过URL或查询参数传递,则为滚动ID。
scroll 指定滚动搜索应保持索引的一致视图的时间长度
search(*args, **kwargs)

执行搜索查询并获取与查询匹配的搜索匹配。www.elastic.co/guide/en/el…

parameters explain
index 要搜索的以逗号分隔的索引名称列表;使用_all或空字符串对所有索引执行操作
doc_type 要搜索的以逗号分隔的文档类型列表;留空以对所有类型执行操作
body 使用Query DSL的搜索定义
_source 返回_source字段的true或false,或返回的字段列表
_source_exclude 要从返回的_source字段中排除的字段列表
_source_include 从_source字段中提取和返回的字段列表
allow_no_indices 是否忽略通配符索引表达式是否解析为具体索引。(这包括_all字符串或未指定索引时)
analyze_wildcard 指定是否应分析通配符和前缀查询(默认值:false)
analyzer 用于查询字符串的分析器
default_operator 查询字符串查询的默认运算符(AND或OR),默认为'OR',有效选项为:'AND','OR'
df 要用作默认值的字段,其中查询字符串中未给出字段前缀
expand_wildcards 是否将通配符表达式扩展为打开,关闭或两者的具体索引。默认为“open”,有效选项为:'open','closed','none','all'
explain 指定是否返回有关分数计算的详细信息作为命中的一部分
fielddata_fields 以逗号分隔的字段列表,作为每个匹配的字段的字段数据表示形式返回
fields 以逗号分隔的字段列表,作为匹配的一部分返回
from_ 起始偏移量(默认值:0)
ignore_unavailable 当不可用(丢失或关闭)时是否应忽略指定的具体索引
lenient 指定是否应忽略基于格式的查询失败(例如向数字字段提供文本)
lowercase_expanded_terms 指定查询字词是否应该是小写的
preference 指定应对其执行操作的节点或分片(默认值:随机)
q 查询Lucene查询字符串语法
request_cache 指定是否应将请求缓存用于此请求,默认为索引级别设置
routing 以逗号分隔的特定路由值列表
scroll 指定滚动搜索应保持索引的一致视图的时间长度
search_type 搜索操作类型,有效选项为:'query_then_fetch','dfs_query_then_fetch','count','scan'
size 要返回的命中数(默认值:10)
sort 以逗号分隔的:对列表
stats 记录和统计目的请求的特定“标记”
suggest_field 指定用于建议的字段
suggest_mode 指定建议模式,默认'缺失',有效选择是:'缺失','流行','总是'
suggest_size 响应中返回多少建议
suggest_text 应返回建议的源文本
terminate_after 每个分片收集的最大文档数,在达到查询执行将提前终止时。
timeout 显式操作超时
track_scores 即使它们不用于排序,是否计算和返回分数
version 指定是否将文档版本作为匹配的一部分返回
search_exists(*args, **kwargs)

exists API允许轻松确定是否存在所提供查询的匹配文档。www.elastic.co/guide/en/el…

parameters explain
index 用于限制结果的以逗号分隔的索引列表
doc_type 以逗号分隔的类型列表,用于限制结果
body 限制使用Query DSL指定的结果的查询(可选)
allow_no_indices 是否忽略通配符索引表达式是否解析为具体索引。(这包括_all字符串或未指定索引时)
analyze_wildcard 指定是否应分析通配符和前缀查询(默认值:false)
analyzer 用于查询字符串的分析器
default_operator 查询字符串查询的默认运算符(AND或OR),默认为'OR',有效选项为:'AND','OR'
df 要用作默认值的字段,其中查询字符串中未给出字段前缀
expand_wildcards 是否将通配符表达式扩展为打开,关闭或两者的具体索引。默认为“open”,有效选项为:'open','closed','none','all'
ignore_unavailable 当不可用(丢失或关闭)时是否应忽略指定的具体索引
lenient 指定是否应忽略基于格式的查询失败(例如向数字字段提供文本)
lowercase_expanded_terms 指定查询字词是否应该是小写的
min_score 仅包括结果中具有特定_score值的文档
preference 指定应对其执行操作的节点或分片(默认值:随机)
q 查询Lucene查询字符串语法
routing 特定的路由值
search_shards(*args, **kwargs)

搜索分片api返回将执行搜索请求的索引和分片。这可以为解决问题或使用路由和分片首选项规划优化提供有用的反馈。www.elastic.co/guide/en/el…

parameters explain
index 要搜索的以逗号分隔的索引名称列表;使用_all或空字符串对所有索引执行操作
doc_type 要搜索的以逗号分隔的文档类型列表;留空以对所有类型执行操作
allow_no_indices 是否忽略通配符索引表达式是否解析为具体索引。(这包括_all字符串或未指定索引时)
expand_wildcards 是否将通配符表达式扩展为打开,关闭或两者的具体索引。默认为“open”,有效选项为:'open','closed','none','all'
ignore_unavailable 当不可用(丢失或关闭)时是否应忽略指定的具体索引
local 返回本地信息,不从主节点检索状态(默认值:false)
preference 指定应对其执行操作的节点或分片(默认值:随机)
routing 特定的路由值
search_template(*args, **kwargs)

接受查询模板和键/值对映射的查询,以填充模板参数。www.elastic.co/guide/en/el…

parameters explain
index 要搜索的以逗号分隔的索引名称列表;使用_all或空字符串对所有索引执行操作
doc_type 要搜索的以逗号分隔的文档类型列表;留空以对所有类型执行操作
body 搜索定义模板及其参数
allow_no_indices 是否忽略通配符索引表达式是否解析为具体索引。(这包括_all字符串或未指定索引时)
expand_wildcards 是否将通配符表达式扩展为打开,关闭或两者的具体索引。默认为“open”,有效选项为:'open','closed','none','all'
ignore_unavailable 当不可用(丢失或关闭)时是否应忽略指定的具体索引
preference 指定应对其执行操作的节点或分片(默认值:随机)
routing 以逗号分隔的特定路由值列表
scroll 指定滚动搜索应保持索引的一致视图的时间长度
search_type 搜索操作类型,有效选项为:'query_then_fetch','query_and_fetch','dfs_query_then_fetch','dfs_query_and_fetch','count','scan'
suggest(*args, **kwargs)

建议功能通过使用建议器基于提供的文本建议类似的查找术语。www.elastic.co/guide/en/el…

parameters explain
body 请求定义
index 用于限制操作的以逗号分隔的索引名称列表;使用_all或空字符串对所有索引执行操作
allow_no_indices 是否忽略通配符索引表达式是否解析为具体索引。(这包括_all字符串或未指定索引时)
expand_wildcards 是否将通配符表达式扩展为打开,关闭或两者的具体索引。默认为“open”,有效选项为:'open','closed','none','all'
ignore_unavailable 当不可用(丢失或关闭)时是否应忽略指定的具体索引
preference 指定应对其执行操作的节点或分片(默认值:随机)
routing 特定的路由值
termvectors(*args, **kwargs)

返回特定文档字段中术语的信息和统计信息。该文档可以存储在索引中或由用户人工提供(在1.4中添加)。请注意,对于存储在索引中的文档,这是一个接近实时的API,因为术语向量在下次刷新之前不可用。www.elastic.co/guide/en/el…

parameters explain
index 文档所在的索引。
doc_type 文档的类型。
id 文档的id,如果未指定,则应提供doc param。
body 定义参数和/或提供文档以获取termvectors。见文档。
dfs 指定是否应返回分布式频率而不是shard频率。,默认为False
field_statistics 指定是否应返回文档计数,文档频率总和以及总术语频率之和。默认为True
fields 要返回的以逗号分隔的字段列表。
offsets 指定是否应返回术语偏移量,默认为True
parent 文档的父ID。
payloads 指定是否应返回术语有效负载。默认为True
positions 指定是否应返回术语位置。,默认为True
preference 指定应对其执行操作的节点或分片(默认值:随机)。
realtime 指定请求是实时的而不是近实时的(默认值:true)。
routing 特定的路由值。
term_statistics 指定是否应返回总术语频率和文档频率。默认为False
version 并发控制的显式版本号
version_type 特定版本类型,有效选择是:'internal','external','external_gte','force'
update(*args, **kwargs)

根据提供的脚本或部分数据更新文档。www.elastic.co/guide/en/el…

parameters explain
index 索引的名称
doc_type 文档的类型
id 文档ID
body 使用脚本或部分doc的请求定义
consistency 操作的显式写一致性设置,有效选择是:'one','quorum','all'
detect_noop 指定为true将导致Elasticsearch检查是否有更改,如果没有,则将更新请求转换为noop。
fields 要在响应中返回的以逗号分隔的字段列表
lang 脚本语言(默认值:groovy)
parent 父文档的ID。仅用于路由以及何时用于upsert请求
refresh 执行操作后刷新索引
retry_on_conflict 指定发生冲突时应重试操作的次数(默认值:0)
routing 特定的路由值
script URL编码的脚本定义(而不是使用请求主体)
script_id 存储脚本的ID
scripted_upsert 如果应调用脚本或script_id中引用的脚本来执行插入,则为True
timeout 显式操作超时
timestamp 文档的显式时间戳
ttl 文档的到期时间
version 并发控制的显式版本号
version_type 特定版本类型,有效选择是:'internal','force'

Indices

class elasticsearch.client.IndicesClient(client)

analyze(*args, **kwargs)

对文本执行分析过程并返回文本的标记细分。www.elastic.co/guide/en/el…

parameters explain
index 范围操作的索引的名称
body 应在其上执行分析的文本
analyzer 要使用的分析器的名称
char_filters 用于分析的以逗号分隔的字符过滤器列表
field 使用为此字段配置的分析器(而不是传递分析器名称)
filters 用于分析的以逗号分隔的过滤器列表
format 输出格式,默认'详细',有效选择是:'详细','文字'
prefer_local 如果为true,则指定应使用本地分片(如果可用),使用false,使用随机分片(默认值:true)
text 应在其上执行分析的文本(不使用请求体时)
tokenizer 用于分析的tokenizer的名称
clear_cache(*args, **kwargs)

清除与一个或多个索引关联的所有缓存或特定缓存。www.elastic.co/guide/en/el…

parameters explain
index 用于限制操作的以逗号分隔的索引名称列表
allow_no_indices 是否忽略通配符索引表达式是否解析为具体索引。(这包括_all字符串或未指定索引时)
expand_wildcards 是否将通配符表达式扩展为打开,关闭或两者的具体索引。默认为“open”,有效选项为:'open','closed','none','all'
field_data 清除字段数据
fielddata 清除字段数据
fields 使用field_data参数时要清除的以逗号分隔的字段列表(默认值:all)
ignore_unavailable 当不可用(丢失或关闭)时是否应忽略指定的具体索引
query 清除查询缓存
recycleler 清除回收站缓存
request 清除请求缓存
close(*args, **kwargs)

关闭索引以从群集中删除它的开销。封闭索引被阻止进行读/写操作。www.elastic.co/guide/en/el…

parameters explain
index 索引的名称

|allow_no_indices | 是否忽略通配符索引表达式是否解析为具体索引。 (这包括_all字符串或未指定索引时)| |expand_wildcards | 是否将通配符表达式扩展为打开,关闭或两者的具体索引。默认为“open”,有效选项为:'open','closed','none','all'| |ignore_unavailable | 当不可用(丢失或关闭)时是否应忽略指定的具体索引| |master_timeout | 指定连接到master的超时| |timeout | 显式操作超时|

create(*args, **kwargs)

在Elasticsearch中创建索引。www.elastic.co/guide/en/el…

parameters explain
index 索引的名称
body 索引的配置(设置和映射)
master_timeout 指定连接到master的超时
timeout 显式操作超时
update_all_types 是否更新所有类型的具有相同名称的所有字段的映射
delete(*args, **kwargs)

删除Elasticsearch中的索引http://www.elastic.co/guide/en/elasticsearch/reference/current/indices-delete-index.html

parameters explain
index 要删除的逗号分隔的索引列表;使用_all或* string删除所有索引
master_timeout 指定连接到master的超时
timeout 显式操作超时
delete_alias(*args, **kwargs)

删除特定的别名。www.elastic.co/guide/en/el…

parameters explain
index 以逗号分隔的索引名称列表(支持通配符);对所有索引使用_all
name 要删除的逗号分隔的别名列表(支持通配符);使用_all删除指定索引的所有别名。
master_timeout 指定连接到master的超时
timeout 操作的显式超时
delete_template(*args, **kwargs)

按名称删除索引模板。www.elastic.co/guide/en/el…

parameters explain
name 模板的名称
master_timeout 指定连接到master的超时
timeout 显式操作超时
delete_warmer(*args, **kwargs)

删除索引加热器。www.elastic.co/guide/en/el…

parameters explain
index 用于删除加热器的逗号分隔的索引名称列表(支持通配符);使用_all对所有索引执行操作。
name 要删除的更暖的名称的逗号分隔列表(支持通配符);使用_all删除指定索引中的所有加热器。您必须在uri或参数中指定名称。
master_timeout 指定连接到master的超时
exists(*args, **kwargs)

返回一个布尔值,指示给定的索引是否存在。www.elastic.co/guide/en/el…

parameters explain
index 要检查的以逗号分隔的索引列表
allow_no_indices 是否忽略通配符索引表达式是否解析为具体索引。(这包括_all字符串或未指定索引时)
expand_wildcards 是否将通配符表达式扩展为打开,关闭或两者的具体索引。默认为“open”,有效选项为:'open','closed','none','all'
ignore_unavailable 当不可用(丢失或关闭)时是否应忽略指定的具体索引
local 返回本地信息,不从主节点检索状态(默认值:false)
exists_alias(*args, **kwargs)

返回一个布尔值,指示给定的别名是否存在。www.elastic.co/guide/en/el…

parameters explain
index 用于过滤别名的以逗号分隔的索引名称列表
name 要返回的以逗号分隔的别名列表
allow_no_indices 是否忽略通配符索引表达式是否解析为具体索引。(这包括_all字符串或未指定索引时)
expand_wildcards 是否将通配符表达式扩展为打开,关闭或两者的具体索引。默认['open','closed'],有效选择为:'open','closed','none','all'
ignore_unavailable 当不可用(丢失或关闭)时是否应忽略指定的具体索引
local 返回本地信息,不从主节点检索状态(默认值:false)
exists_template(*args, **kwargs)

返回一个布尔值,指示给定的模板是否存在。www.elastic.co/guide/en/el…

parameters explain
name 模板的名称
local 返回本地信息,不从主节点检索状态(默认值:false)
master_timeout 连接到主节点的显式操作超时
exists_type(*args, **kwargs)

检查索引/索引中是否存在类型/类型。www.elastic.co/guide/en/el…

parameters explain
index 以逗号分隔的索引名称列表;使用_all检查所有索引的类型
doc_type 要检查的以逗号分隔的文档类型列表
allow_no_indices 是否忽略通配符索引表达式是否解析为具体索引。(这包括_all字符串或未指定索引时)
expand_wildcards 是否将通配符表达式扩展为打开,关闭或两者的具体索引。默认为“open”,有效选项为:'open','closed','none','all'
ignore_unavailable 当不可用(丢失或关闭)时是否应忽略指定的具体索引
local 返回本地信息,不从主节点检索状态(默认值:false)
flush(*args, **kwargs)

明确刷新一个或多个索引。www.elastic.co/guide/en/el…

parameters explain
index 以逗号分隔的索引名称列表;对所有索引使用_all或空字符串
allow_no_indices 是否忽略通配符索引表达式是否解析为具体索引。(这包括_all字符串或未指定索引时)
expand_wildcards 是否将通配符表达式扩展为打开,关闭或两者的具体索引。默认为“open”,有效选项为:'open','closed','none','all'
force 即使不一定需要,也应强制冲洗,即,如果没有更改将提交到索引。如果即使没有未提交的更改,也应增加事务日志ID,这非常有用。(此设置可视为内部)
ignore_unavailable 当不可用(丢失或关闭)时是否应忽略指定的具体索引
wait_if_ongoing 如果设置为true,则刷新操作将阻塞,直到执行了另一个刷新操作已执行时才执行刷新。默认值为false,如果另一个刷新操作已在运行,将导致在分片级别上抛出异常。
flush_synced(*args, **kwargs)

执行正常刷新,然后将生成的唯一标记(sync_id)添加到所有分片。www.elastic.co/guide/en/el…

parameters explain
index 以逗号分隔的索引名称列表;对所有索引使用_all或空字符串
allow_no_indices 是否忽略通配符索引表达式是否解析为具体索引。(这包括_all字符串或未指定索引时)
expand_wildcards 是否将通配符表达式扩展为打开,关闭或两者的具体索引。默认为“open”,有效选项为:'open','closed','none','all'
ignore_unavailable 当不可用(丢失或关闭)时是否应忽略指定的具体索引
forcemerge(*args, **kwargs)

www.elastic.co/guide/en/el…

parameters explain
index 以逗号分隔的索引名称列表;使用_all或空字符串对所有索引执行操作
allow_no_indices 是否忽略通配符索引表达式是否解析为具体索引。(这包括_all字符串或未指定索引时)
expand_wildcards 是否将通配符表达式扩展为打开,关闭或两者的具体索引。默认为“open”,有效选项为:'open','closed','none','all'
flush 指定在执行操作后是否应刷新索引(默认值:true)
ignore_unavailable 当不可用(丢失或关闭)时是否应忽略指定的具体索引
max_num_segments 索引应合并到的段数(默认值:动态)
only_expunge_deletes 指定操作是否应仅清除已删除的文档
operation_threading (它木有写...)
wait_for_merge 指定在合并过程完成之前请求是否应该阻塞(默认值:true)
get(*args, **kwargs)

get index API允许检索有关一个或多个索引的信息。www.elastic.co/guide/en/el…

parameters explain
index 以逗号分隔的索引名称列表
feature 以逗号分隔的功能列表
allow_no_indices 如果通配符表达式解析为没有具体索引,则忽略(默认值:false)
expand_wildcards 通配符表达式是否应扩展为打开或关闭索引(默认值:打开),默认为“打开”,有效选项为:'open','closed','none','all'
flat_settings 以平面格式返回设置(默认值:false)
human 是否以人类可读的格式返回版本和创建日期值。默认为False
ignore_unavailable 忽略不可用的索引(默认值:false)
local 返回本地信息,不从主节点检索状态(默认值:false)
get_alias(*args, **kwargs)

检索指定的别名。www.elastic.co/guide/en/el…

parameters explain
index 用于过滤别名的以逗号分隔的索引名称列表
name 要返回的以逗号分隔的别名列表
allow_no_indices 是否忽略通配符索引表达式是否解析为具体索引。(这包括_all字符串或未指定索引时)
expand_wildcards 是否将通配符表达式扩展为打开,关闭或两者的具体索引。默认为“open”,有效选项为:'open','closed','none','all'
ignore_unavailable 当不可用(丢失或关闭)时是否应忽略指定的具体索引
local 返回本地信息,不从主节点检索状态(默认值:false)
get_aliases(*args, **kwargs)

检索指定的别名 www.elastic.co/guide/en/el… 在V5版本已被移除 discuss.elastic.co/t/get-alias…

parameters explain
index 用于过滤别名的以逗号分隔的索引名称列表
name 要过滤的逗号分隔的别名列表
local 返回本地信息,不从主节点检索状态(默认值:false)
timeout 显式操作超时
get_field_mapping(*args, **kwargs)

检索特定字段的映射定义。www.elastic.co/guide/en/el…

parameters explain
fields 以逗号分隔的字段列表
index 以逗号分隔的索引名称列表
doc_type 以逗号分隔的文档类型列表
allow_no_indices 是否忽略通配符索引表达式是否解析为具体索引。(这包括_all字符串或未指定索引时)
expand_wildcards 是否将通配符表达式扩展为打开,关闭或两者的具体索引。默认为“open”,有效选项为:'open','closed','none','all'
ignore_unavailable 当不可用(丢失或关闭)时是否应忽略指定的具体索引
include_defaults 是否也应返回默认映射值
local 返回本地信息,不从主节点检索状态(默认值:false)
get_mapping(*args, **kwargs)

检索索引或索引/类型的映射定义。www.elastic.co/guide/en/el…

parameters explain
index 以逗号分隔的索引名称列表
doc_type 以逗号分隔的文档类型列表
allow_no_indices 是否忽略通配符索引表达式是否解析为具体索引。(这包括_all字符串或未指定索引时)
expand_wildcards 是否将通配符表达式扩展为打开,关闭或两者的具体索引。默认为“open”,有效选项为:'open','closed','none','all'
ignore_unavailable 当不可用(丢失或关闭)时是否应忽略指定的具体索引
local 返回本地信息,不从主节点检索状态(默认值:false)
get_settings(*args, **kwargs)

检索一个或多个(或所有)索引的设置。www.elastic.co/guide/en/el…

parameters explain
index 以逗号分隔的索引名称列表;使用_all或空字符串对所有索引执行操作
name 应包含的设置的名称
allow_no_indices 是否忽略通配符索引表达式是否解析为具体索引。(这包括_all字符串或未指定索引时)
expand_wildcards 是否将通配符表达式扩展为打开,关闭或两者的具体索引。默认['open','closed'],有效选择为:'open','closed','none','all'
flat_settings 以平面格式返回设置(默认值:false)
human 是否以人类可读的格式返回版本和创建日期值。默认为False
ignore_unavailable 当不可用(丢失或关闭)时是否应忽略指定的具体索引
local 返回本地信息,不从主节点检索状态(默认值:false)
get_template(*args, **kwargs)

按名称检索索引模板。www.elastic.co/guide/en/el…

parameters explain
name 模板的名称
flat_settings 以平面格式返回设置(默认值:false)
local 返回本地信息,不从主节点检索状态(默认值:false)
master_timeout 连接到主节点的显式操作超时
get_upgrade(*args, **kwargs)

监控一个或多个索引的升级程度。www.elastic.co/guide/en/el…

parameters explain
index 以逗号分隔的索引名称列表;使用_all或空字符串对所有索引执行操作
allow_no_indices 是否忽略通配符索引表达式是否解析为具体索引。(这包括_all字符串或未指定索引时)
expand_wildcards 是否将通配符表达式扩展为打开,关闭或两者的具体索引。默认为“open”,有效选项为:'open','closed','none','all'
human 是否以人类可读的格式返回时间和字节值。默认为False
ignore_unavailable 当不可用(丢失或关闭)时是否应忽略指定的具体索引
get_warmer(*args, **kwargs)

查看索引的预热情况。 www.elastic.co/guide/en/el…

parameters explain
index 用于限制操作的以逗号分隔的索引名称列表;使用_all对所有索引执行操作
doc_type 用于限制操作的以逗号分隔的文档类型列表;留空以对所有类型执行操作
name 加热器的名称(支持通配符);留空以获得所有加热器
allow_no_indices 是否忽略通配符索引表达式是否解析为具体索引。(这包括_all字符串或未指定索引时)
expand_wildcards 是否将通配符表达式扩展为打开,关闭或两者的具体索引。默认为“open”,有效选项为:'open','closed','none','all'
ignore_unavailable 当不可用(丢失或关闭)时是否应忽略指定的具体索引
local 返回本地信息,不从主节点检索状态(默认值:false)
open(*args, **kwargs)

打开一个封闭的索引以使其可用于搜索。www.elastic.co/guide/en/el…

parameters explain
index 索引的名称
allow_no_indices 是否忽略通配符索引表达式是否解析为具体索引。(这包括_all字符串或未指定索引时)
expand_wildcards 是否将通配符表达式扩展为打开,关闭或两者的具体索引。默认为“已关闭”,有效选项为:'open','closed','none','all'
ignore_unavailable 当不可用(丢失或关闭)时是否应忽略指定的具体索引
master_timeout 指定连接到master的超时
timeout 显式操作超时
optimize(*args, **kwargs)

通过API显式优化一个或多个索引。www.elastic.co/guide/en/el…

parameters explain
index - 以逗号分隔的索引名称列表;使用_all或空字符串对所有索引执行操作
allow_no_indices - 是否忽略通配符索引表达式是否解析为具体索引。(这包括_all字符串或未指定索引时)
expand_wildcards - 是否将通配符表达式扩展为打开,关闭或两者的具体索引。默认为“open”,有效选项为:'open','closed','none','all'
flush - 指定在执行操作后是否应刷新索引(默认值:true)
ignore_unavailable - 当不可用(丢失或关闭)时是否应忽略指定的具体索引
max_num_segments - 索引应合并到的段数(默认值:动态)
only_expunge_deletes - 指定操作是否应仅清除已删除的文档
operation_threading - TODO :(官方木有写...)
wait_for_merge - 指定在合并过程完成之前请求是否应该阻塞(默认值:true)
put_alias(*args, **kwargs)

为特定索引创建别名。www.elastic.co/guide/en/el…

parameters explain
index 别名应指向的逗号分隔的索引名称列表(支持通配符);使用_all对所有索引执行操作。
name 要创建或更新的别名的名称
body 别名的设置,例如路由或过滤器
master_timeout 指定连接到master的超时
timeout 操作的显式超时
put_mapping(*args, **kwargs)

注册特定类型的特定映射定义。www.elastic.co/guide/en/el…

parameters explain
doc_type 文档类型的名称
body 映射定义
index 应添加映射的逗号分隔的索引名称列表(支持通配符);使用_all或omit在所有索引上添加映射。
allow_no_indices 是否忽略通配符索引表达式是否解析为具体索引。(这包括_all字符串或未指定索引时)
expand_wildcards 是否将通配符表达式扩展为打开,关闭或两者的具体索引。默认为“open”,有效选项为:'open','closed','none','all'
ignore_unavailable 当不可用(丢失或关闭)时是否应忽略指定的具体索引
master_timeout 指定连接到master的超时
timeout 显式操作超时
update_all_types 是否更新所有类型的具有相同名称的所有字段的映射
put_settings(*args, **kwargs)

实时更改特定索引级别设置。www.elastic.co/guide/en/el…

parameters explain
body 要更新的索引设置
index 以逗号分隔的索引名称列表;使用_all或空字符串对所有索引执行操作
allow_no_indices 是否忽略通配符索引表达式是否解析为具体索引。(这包括_all字符串或未指定索引时)
expand_wildcards 是否将通配符表达式扩展为打开,关闭或两者的具体索引。默认为“open”,有效选项为:'open','closed','none','all'
flat_settings 以平面格式返回设置(默认值:false)
ignore_unavailable 当不可用(丢失或关闭)时是否应忽略指定的具体索引
master_timeout 指定连接到master的超时
put_template(*args, **kwargs)

创建一个索引模板,该模板将自动应用于创建的新索引。www.elastic.co/guide/en/el…

parameters explain
name 模板的名称
body 模板定义
create 索引模板是否应仅在new时添加,或者也可以替换现有索引模板,默认为False
flat_settings 以平面格式返回设置(默认值:false)
master_timeout 指定连接到master的超时
order 合并多个匹配的模板时此模板的顺序(较高的数字稍后合并,覆盖较低的数字)
timeout 显式操作超时
put_warmer(*args, **kwargs)

创建索引加热器以运行已注册的搜索请求以在索引可用于搜索之前预热索引。www.elastic.co/guide/en/el…

parameters explain
name 预热器的名字
body 预热器的搜索请求定义(查询,过滤器,构面,排序等)
index 用于注册预热器的逗号分隔的索引名称列表;使用_all或omit对所有索引执行操作
doc_type 用于注册预热器的以逗号分隔的文档类型列表;留空以对所有类型执行操作
allow_no_indices 是否忽略通配符索引表达式是否解析为搜索请求中的具体索引以进行加热。(这包括_all字符串或未指定索引时)
expand_wildcards 是否将通配符表达式扩展为打开,关闭或两者的具体索引,在搜索请求中加热。默认为'open',有效选项为:'open','closed','none','all'
ignore_unavailable 在要加热的搜索请求中不可用(丢失或关闭)时是否应忽略指定的具体索引
master_timeout 指定连接到master的超时
request_cache 指定要加热的请求是否应使用请求缓存,默认为索引级别设置
recovery(*args, **kwargs)

索引恢复API提供对正在进行的碎片恢复的深入了解。可以针对特定索引或群集范围报告恢复状态。www.elastic.co/guide/en/el…

parameters explain
index 以逗号分隔的索引名称列表;使用_all或空字符串对所有索引执行操作
active_only 仅显示当前正在进行的恢复,默认为False
detailed 是否显示有关分片恢复的详细信息,默认为False
human 是否以人类可读的格式返回时间和字节值。默认为False
refresh(*args, **kwargs)

显式刷新一个或多个索引,使自上次刷新以来执行的所有操作都可用于搜索。www.elastic.co/guide/en/el…

parameters explain

index - 以逗号分隔的索引名称列表;使用_all或空字符串对所有索引执行操作 allow_no_indices - 是否忽略通配符索引表达式是否解析为具体索引。(这包括_all字符串或未指定索引时) expand_wildcards - 是否将通配符表达式扩展为打开,关闭或两者的具体索引。默认为“open”,有效选项为:'open','closed','none','all' force - 即使不需要也强制刷新,默认为False ignore_unavailable - 当不可用(丢失或关闭)时是否应忽略指定的具体索引 operation_threading - TODO :(官方木有写)

segments(*args, **kwargs)

提供构建Lucene索引(分片级别)的低级别段信息。www.elastic.co/guide/en/el…

parameters explain
index 以逗号分隔的索引名称列表;使用_all或空字符串对所有索引执行操作
allow_no_indices 是否忽略通配符索引表达式是否解析为具体索引。(这包括_all字符串或未指定索引时)
expand_wildcards 是否将通配符表达式扩展为打开,关闭或两者的具体索引。默认为“open”,有效选项为:'open','closed','none','all'
human 是否以人类可读的格式返回时间和字节值。默认为False
ignore_unavailable 当不可用(丢失或关闭)时是否应忽略指定的具体索引
operation_threading TODO :(官方木有写)
shard_stores(*args, **kwargs)

www.elastic.co/guide/en/el…

parameters explain
index 以逗号分隔的索引名称列表;使用_all或空字符串对所有索引执行操作
allow_no_indices 是否忽略通配符索引表达式是否解析为具体索引。(这包括_all字符串或未指定索引时)
expand_wildcards 是否将通配符表达式扩展为打开,关闭或两者的具体索引。默认为“open”,有效选项为:'open','closed','none','all'
ignore_unavailable 当不可用(丢失或关闭)时是否应忽略指定的具体索引
operation_threading TODO :(官方木有写)
status 以逗号分隔的状态列表,用于过滤分片以获取商店信息,有效选项包括:'green','yellow','red','all'
stats(*args, **kwargs)

检索索引上发生的不同操作的统计信息。www.elastic.co/guide/en/el…

parameters explain
index 以逗号分隔的索引名称列表;使用_all或空字符串对所有索引执行操作
metric 限制返回特定指标的信息。
completion_fields 用于fielddata和建议索引度量的逗号分隔字段列表(支持通配符)
fielddata_fields 用于fielddata索引度量的逗号分隔字段列表(支持通配符)
fields 用于fielddata和完成索引度量的逗号分隔字段列表(支持通配符)
groups 搜索索引度量标准的搜索组的逗号分隔列表
human 是否以人类可读的格式返回时间和字节值。默认为False
level 在集群,索引或分片级别汇总的返回统计信息,默认'indices',有效选项为:'cluster','indices','shards'
types 索引索引度量标准的逗号分隔文档类型列表
update_aliases(*args, **kwargs)

更新指定的别名。www.elastic.co/guide/en/el…

parameters explain
body 要执行的操作的定义
master_timeout 指定连接到master的超时
timeout 请求超时
upgrade(*args, **kwargs)

通过API将一个或多个索引升级到最新格式。www.elastic.co/guide/en/el…

parameters explain
index 以逗号分隔的索引名称列表;使用_all或空字符串对所有索引执行操作
allow_no_indices 是否忽略通配符索引表达式是否解析为具体索引。(这包括_all字符串或未指定索引时)
expand_wildcards 是否将通配符表达式扩展为打开,关闭或两者的具体索引。默认为“open”,有效选项为:'open','closed','none','all'
ignore_unavailable 当不可用(丢失或关闭)时是否应忽略指定的具体索引
only_ancient_segments 如果为true,则仅升级古代(较旧的Lucene主要版本)片段
wait_for_completion 指定在升级所有段之前是否应阻止请求(默认值:false)
validate_query(*args, **kwargs)

验证可能很昂贵的查询而不执行它。www.elastic.co/guide/en/el…

parameters explain
index 用于限制操作的以逗号分隔的索引名称列表;使用_all或空字符串对所有索引执行操作
doc_type 用于限制操作的以逗号分隔的文档类型列表;留空以对所有类型执行操作
body 使用Query DSL指定的查询定义
allow_no_indices 是否忽略通配符索引表达式是否解析为具体索引。(这包括_all字符串或未指定索引时)
analyze_wildcard 指定是否应分析通配符和前缀查询(默认值:false)
analyzer 用于查询字符串的分析器
default_operator 查询字符串查询的默认运算符(AND或OR),默认为'OR',有效选项为:'AND','OR'
df 要用作默认值的字段,其中查询字符串中未给出字段前缀
expand_wildcards 是否将通配符表达式扩展为打开,关闭或两者的具体索引。默认为“open”,有效选项为:'open','closed','none','all'
explain 返回有关错误的详细信息
ignore_unavailable 当不可用(丢失或关闭)时是否应忽略指定的具体索引
lenient 指定是否应忽略基于格式的查询失败(例如向数字字段提供文本)
lowercase_expanded_terms 指定查询字词是否应该是小写的
operation_threading TODO :(官方木有写)
q 查询Lucene查询字符串语法
rewrite 提供更详细的说明,显示将要执行的实际Lucene查询。

Cluster

class elasticsearch.client.ClusterClient(client)

get_settings(*args, **kwargs)

获取群集设置。www.elastic.co/guide/en/el…

parameters explain
flat_settings 以平面格式返回设置(默认值:false)
master_timeout 连接到主节点的显式操作超时
timeout 显式操作超时
health(*args, **kwargs)

获取有关群集运行状况的非常简单的状态。www.elastic.co/guide/en/el…

parameters explain
index 限制返回到特定索引的信息
level 指定返回信息的详细程度,默认为'cluster',有效选项为:'cluster','indices','shards'
local 返回本地信息,不从主节点检索状态(默认值:false)
master_timeout 连接到主节点的显式操作超时
timeout 显式操作超时
wait_for_active_shards 等到指定的分片数激活
wait_for_nodes 等到指定的节点数可用
wait_for_relocating_shards 等到指定的重定位分片数完成
wait_for_status 等到群集处于特定状态,默认为None,有效选项为:'green','yellow','red'
pending_tasks(*args, **kwargs)

挂起的集群任务API返回尚未执行的任何集群级更改(例如,创建索引,更新映射,分配或失败分片)的列表。www.elastic.co/guide/en/el…

parameters explain
local 返回本地信息,不从主节点检索状态(默认值:false)
master_timeout 指定连接到master的超时
put_settings(*args, **kwargs)

更新群集范围的特定设置。www.elastic.co/guide/en/el…

parameters explain
body 要更新的设置。可以是瞬态的也可以是持久的(在群集重启后幸存)。
flat_settings 以平面格式返回设置(默认值:false)
master_timeout 连接到主节点的显式操作超时
timeout 显式操作超时
reroute(*args, **kwargs)

显式执行包含特定命令的集群重新路由分配命令。www.elastic.co/guide/en/el…

parameters explain
body 要执行的命令的定义(移动,取消,分配)
dry_run 仅模拟操作并返回结果状态
解释 返回有关可以执行或不执行命令的原因的说明
master_timeout 连接到主节点的显式操作超时
metric 将返回的信息限制为指定的指标。默认为元数据以外的所有选项,有效选项为:'_ all','blocks','metadata','nodes','routing_table','master_node','version'
timeout 显式操作超时
state(*args, **kwargs)

获取整个群集的综合状态信息。www.elastic.co/guide/en/el…

parameters explain
metric 将返回的信息限制为指定的指标
index 以逗号分隔的索引名称列表;使用_all或空字符串对所有索引执行操作
allow_no_indices 是否忽略通配符索引表达式是否解析为具体索引。(这包括_all字符串或未指定索引时)
expand_wildcards 是否将通配符表达式扩展为打开,关闭或两者的具体索引。默认为“open”,有效选项为:'open','closed','none','all'
flat_settings 以平面格式返回设置(默认值:false)
ignore_unavailable 当不可用(丢失或关闭)时是否应忽略指定的具体索引
local 返回本地信息,不从主节点检索状态(默认值:false)
master_timeout 指定连接到master的超时
stats(*args, **kwargs)

Cluster Stats API允许从群集范围的角度检索统计信息。API返回基本索引度量标准以及有关组成群集的当前节点的信息。www.elastic.co/guide/en/el…

parameters explain
node_id 以逗号分隔的节点ID或名称列表,用于限制返回的信息;使用_local从您要连接的节点返回信息,留空以从所有节点获取信息
flat_settings 以平面格式返回设置(默认值:false)
human 是否以人类可读的格式返回时间和字节值。默认为False
timeout 显式操作超时

Nodes

class elasticsearch.client.NodesClient(client)

hot_threads(*args, **kwargs)

允许在集群中的每个节点上获取当前热线程的API。www.elastic.co/guide/en/el…

parameters explain
node_id 以逗号分隔的节点ID或名称列表,用于限制返回的信息;使用_local从您要连接的节点返回信息,留空以从所有节点获取信息
doc_type 要采样的类型(默认值:cpu),有效选项为:'cpu','wait','block'
ignore_idle_threads 不显示处于已知空闲位置的线程,例如等待套接字选择或从空任务队列中拉出(默认值:true)
interval 第二次线程采样的间隔
snapshots 线程堆栈跟踪的样本数(默认值:10)
threads 指定提供信息的线程数(默认值:3)
timeout 显式操作超时
info(*args, **kwargs)

群集节点信息API允许检索一个或多个(或所有)群集节点信息。www.elastic.co/guide/en/el…

parameters explain
node_id 以逗号分隔的节点ID或名称列表,用于限制返回的信息;使用_local从您要连接的节点返回信息,留空以从所有节点获取信息
metric 您希望返回的以逗号分隔的指标列表。

留空以返回所有。 |flat_settings | 以平面格式返回设置(默认值:false)| |human | 是否以人类可读的格式返回时间和字节值。默认为False| |timeout | 显式操作超时|

stats(*args, **kwargs)

群集节点统计信息API允许检索一个或多个(或所有)群集节点统计信息。www.elastic.co/guide/en/el…

parameters explain
node_id 以逗号分隔的节点ID或名称列表,用于限制返回的信息;使用_local从您要连接的节点返回信息,留空以从所有节点获取信息
metric 将返回的信息限制为指定的指标
index_metric 将为索引度量标准返回的信息限制为特定的索引度量标准。

如果未指定索引(或全部)度量标准,则不使用。 |completion_fields | 用于fielddata和建议索引度量的逗号分隔字段列表(支持通配符)| |fielddata_fields | 用于fielddata索引度量的逗号分隔字段列表(支持通配符)| |fields | 用于fielddata和完成索引度量的逗号分隔字段列表(支持通配符)| |groups | 搜索索引度量标准的搜索组的逗号分隔列表| |human | 是否以人类可读的格式返回时间和字节值。默认为False| |level | 在节点,索引或分片级别聚合的返回索引统计信息,默认“节点”,有效选项为:'node','indices','shards'| |timeout | 显式操作超时| |types | 索引索引度量标准的逗号分隔文档类型列表|

Cat

class elasticsearch.client.CatClient(client)

aliases(*args, **kwargs)

www.elastic.co/guide/en/el…

parameters explain
name 要返回的以逗号分隔的别名列表
h 要显示的以逗号分隔的列名列表
help 返回帮助信息,默认为False
local 返回本地信息,不从主节点检索状态(默认值:false)
master_timeout 连接到主节点的显式操作超时
v 详细模式。显示列标题,默认为False
allocation(*args, **kwargs)

分配提供了碎片在群集周围的位置以及磁盘使用状态的快照。www.elastic.co/guide/en/el…

parameters explain
node_id 以逗号分隔的节点ID或名称列表,用于限制返回的信息
bytes 显示字节值的单位,有效选项为:'b','k','m','g'
h 要显示的以逗号分隔的列名列表
help 返回帮助信息,默认为False
local 返回本地信息,不从主节点检索状态(默认值:false)
master_timeout 连接到主节点的显式操作超时
v 详细模式。显示列标题,默认为False
count(*args, **kwargs)

Count提供对整个群集或单个索引的文档计数的快速访问。www.elastic.co/guide/en/el…

parameters explain
index 用于限制返回信息的逗号分隔的索引名称列表
h 要显示的以逗号分隔的列名列表
help 返回帮助信息,默认为False
local 返回本地信息,不从主节点检索状态(默认值:false)
master_timeout 连接到主节点的显式操作超时
v 详细模式。显示列标题,默认为False
fielddata(*args, **kwargs)

基于每个节点显示有关当前加载的fielddata的信息。www.elastic.co/guide/en/el…

parameters explain
fields 以逗号分隔的字段列表,用于返回fielddata大小
bytes 显示字节值的单位,有效选项为:'b','k','m','g'
h 要显示的以逗号分隔的列名列表
help 返回帮助信息,默认为False
local 返回本地信息,不从主节点检索状态(默认值:false)
master_timeout 连接到主节点的显式操作超时
v 详细模式。显示列标题,默认为False
health(*args, **kwargs)

健康是来自health()API的相同信息的提炼,单行表示(求指教更好的翻译) www.elastic.co/guide/en/el…

parameters explain
h 要显示的以逗号分隔的列名列表
help 返回帮助信息,默认为False
local 返回本地信息,不从主节点检索状态(默认值:false)
master_timeout 连接到主节点的显式操作超时
ts 设置为false以禁用时间戳,默认为True
v 详细模式。显示列标题,默认为False
help(*args, **kwargs)

cat api的一个简单帮助。www.elastic.co/guide/en/el…

parameters explain
help 返回帮助信息,默认为False
indices(*args, **kwargs)

indices命令提供每个索引的横截面。www.elastic.co/guide/en/el…

parameters explain
index 用于限制返回信息的逗号分隔的索引名称列表
bytes 显示字节值的单位,有效选项为:'b','k','m','g'
h 要显示的以逗号分隔的列名列表
help 返回帮助信息,默认为False
local 返回本地信息,不从主节点检索状态(默认值:false)
master_timeout 连接到主节点的显式操作超时
pri 设置为true仅返回主分片的统计信息,默认为False
v 详细模式。显示列标题,默认为False
master(*args, **kwargs)

显示主节点ID,绑定IP地址和节点名称。www.elastic.co/guide/en/el…

parameters explain
h 要显示的以逗号分隔的列名列表
help 返回帮助信息,默认为False
local 返回本地信息,不从主节点检索状态(默认值:false)
master_timeout 连接到主节点的显式操作超时
v 详细模式。显示列标题,默认为False
nodeattrs(*args, **kwargs)

www.elastic.co/guide/en/el…

parameters explain
h 要显示的以逗号分隔的列名列表
help 返回帮助信息,默认为False
local 返回本地信息,不从主节点检索状态(默认值:false)
master_timeout 连接到主节点的显式操作超时
v 详细模式。显示列标题,默认为False
nodes(*args, **kwargs)

parameters explain
h 要显示的以逗号分隔的列名列表
help 返回帮助信息,默认为False
local 返回本地信息,不从主节点检索状态(默认值:false)
master_timeout 连接到主节点的显式操作超时
v 详细模式。显示列标题,默认为False
pending_tasks(*args, **kwargs)

pending_tasks以方便的表格格式提供与pending_tasks()API相同的信息。www.elastic.co/guide/en/el…

parameters explain
h 要显示的以逗号分隔的列名列表
help 返回帮助信息,默认为False
local 返回本地信息,不从主节点检索状态(默认值:false)
master_timeout 连接到主节点的显式操作超时
v 详细模式。显示列标题,默认为False
plugins(*args, **kwargs)

www.elastic.co/guide/en/el…

parameters explain
h 要显示的以逗号分隔的列名列表
help 返回帮助信息,默认为False
local 返回本地信息,不从主节点检索状态(默认值:false)
master_timeout 连接到主节点的显式操作超时
v 详细模式。显示列标题,默认为False
recovery(*args, **kwargs)

recovery是分片复制的视图。www.elastic.co/guide/en/el…

parameters explain
index 用于限制返回信息的逗号分隔的索引名称列表
bytes 显示字节值的单位,有效选项为:'b','k','m','g'
h 要显示的以逗号分隔的列名列表
help 返回帮助信息,默认为False
master_timeout 连接到主节点的显式操作超时
v 详细模式。显示列标题,默认为False
repositories(*args, **kwargs)

www.elastic.co/guide/en/el…

parameters explain
h 要显示的以逗号分隔的列名列表
help 返回帮助信息,默认为False
local 返回本地信息,不从主节点检索状态,默认为False
master_timeout 连接到主节点的显式操作超时
v 详细模式。显示列标题,默认为False
segments(*args, **kwargs)

segments命令是每个索引的Lucene段的详细视图。www.elastic.co/guide/en/el…

parameters explain
index 用于限制返回信息的逗号分隔的索引名称列表
bytes 显示字节值的单位,有效选项为:'b','k','m','g'
h 要显示的以逗号分隔的列名列表
help 返回帮助信息,默认为False
v 详细模式。显示列标题,默认为False
shards(*args, **kwargs)

shards命令是哪些节点包含哪些分片的详细视图。www.elastic.co/guide/en/el…

parameters explain
index 用于限制返回信息的逗号分隔的索引名称列表
bytes 显示字节值的单位,有效选项为:'b','k','m','g'
h 要显示的以逗号分隔的列名列表
help 返回帮助信息,默认为False
local 返回本地信息,不从主节点检索状态(默认值:false)
master_timeout 连接到主节点的显式操作超时
v 详细模式。显示列标题,默认为False
snapshots(*args, **kwargs)

www.elastic.co/guide/en/el…

parameters explain
repository 从中获取快照信息的存储库的名称
h 要显示的以逗号分隔的列名列表
help 返回帮助信息,默认为False
master_timeout 连接到主节点的显式操作超时
v 详细模式。显示列标题,默认为False
thread_pool(*args, **kwargs)

获取有关线程池的信息。www.elastic.co/guide/en/el…

parameters explain
full_id 启用显示完整节点ID,默认为False
h 要显示的以逗号分隔的列名列表
help 返回帮助信息,默认为False
local 返回本地信息,不从主节点检索状态(默认值:false)
master_timeout 连接到主节点的显式操作超时
v 详细模式。显示列标题,默认为False

class elasticsearch.client.SnapshotClient(client)

create(*args, **kwargs)

在存储库中创建快照http://www.elastic.co/guide/en/elasticsearch/reference/current/modules-snapshots.html

parameters explain
repository 存储库名称
snapshot 快照名称
body 快照定义
master_timeout 连接到主节点的显式操作超时
wait_for_completion 如果此请求等到操作完成后再返回,则默认为False
create_repository(*args, **kwargs)

注册共享文件系统存储库。www.elastic.co/guide/en/el…

parameters explain
repository 存储库名称
body 存储库定义
master_timeout 连接到主节点的显式操作超时
timeout 显式操作超时
verify 是否在创建后验证存储库
delete(*args, **kwargs)

从存储库中删除快照。www.elastic.co/guide/en/el…

parameters explain
repository 存储库名称
snapshot 快照名称
master_timeout 连接到主节点的显式操作超时
delete_repository(*args, **kwargs)

删除共享文件系统存储库。www.elastic.co/guide/en/el…

parameters explain
repository 以逗号分隔的存储库名称列表
master_timeout 连接到主节点的显式操作超时
timeout 显式操作超时
get(*args, **kwargs)

检索有关快照的信息。www.elastic.co/guide/en/el…

parameters explain
repository 存储库名称
snapshot 以逗号分隔的快照名称列表
master_timeout 连接到主节点的显式操作超时
get_repository(*args, **kwargs)

返回有关已注册存储库的信息。www.elastic.co/guide/en/el…

parameters explain
repository 以逗号分隔的存储库名称列表
local 返回本地信息,不从主节点检索状态(默认值:false)
master_timeout 连接到主节点的显式操作超时
restore(*args, **kwargs)

恢复快照。www.elastic.co/guide/en/el…

parameters explain
repository 存储库名称
snapshot 快照名称
body 要恢复的内容的详细信息
master_timeout 连接到主节点的显式操作超时
wait_for_completion 如果此请求等到操作完成后再返回,则默认为False
status(*args, **kwargs)

返回有关所有当前运行快照的信息。通过指定存储库名称,可以将结果限制为特定存储库。www.elastic.co/guide/en/el…

parameters explain
repository 存储库名称
snapshot 以逗号分隔的快照名称列表
master_timeout 连接到主节点的显式操作超时
verify_repository(*args, **kwargs)

返回成功验证存储库的节点列表,如果验证过程失败,则返回错误消息。www.elastic.co/guide/en/el…

parameters explain
repository 存储库名称
master_timeout 连接到主节点的显式操作超时
timeout 显式操作超时

Exceptions

class elasticsearch.ImproperlyConfigured

传递给客户端的配置不一致或无效时引发的异常。

class elasticsearch.ElasticsearchException

此包的操作引发的所有异常的基类(不适用于ImproperlyConfigured)。

class elasticsearch.SerializationError(ElasticsearchException)

传入的数据无法在正在使用的Serializer中正确序列化。

class elasticsearch.TransportError(ElasticsearchException)

ES返回非OK(> = 400)HTTP状态代码时引发异常。或者发生实际连接错误时;在这种情况下,status_code将设置为“N / A”。

parameters explain
error 字符串错误消息。
info 来自ES的返回错误信息的字典,如果可用的话。
status 引发错误的响应的HTTP状态代码,如果不适用,则为“N / A”。
class elasticsearch.ConnectionError(TransportError)

与ES交谈时出现异常时出错。基础Connection实现的原始异常以.info的形式提供。

class elasticsearch.ConnectionTimeout(ConnectionError)

网络超时。默认情况下不会导致节点重试。

class elasticsearch.SSLError(ConnectionError)

遇到SSL错误时出错。

class elasticsearch.NotFoundError(TransportError)

表示404状态代码的异常。

class elasticsearch.ConflictError(TransportError)

表示409状态代码的异常。

class elasticsearch.RequestError(TransportError)

表示400状态代码的异常。

class elasticsearch.ConnectionError(TransportError)

与ES连接时出现异常时出错。基础Connection实现的原始异常以.info的形式提供。

Connection Layer API

Transport classes

可以使用的传输类列表,只需导入您的选择并将其作为connection_class传递给Elasticsearch的构造函数。请注意,RequestsHttpConnection需要安装 requests。 例如,要使用基于请求的连接,只需导入并使用它:

from elasticsearch import Elasticsearch, RequestsHttpConnection
es = Elasticsearch(connection_class=RequestsHttpConnection)

Connection

class elasticsearch.connection.Connection(host='localhost', port=9200, url_prefix='', timeout=10, **kwargs)

负责维护与Elasticsearch节点的连接的类。它拥有持久连接池,它的主界面(perform_request)是线程安全的。 还负责记录。

parameters explain
host 节点的主机名(默认值:localhost)
port 要使用的端口(整数,默认值:9200)
url_prefix elasticsearch的可选url前缀
timeout 以秒为单位的默认超时(float,默认值:10)

Urllib3HttpConnection

class elasticsearch.connection.Urllib3HttpConnection(host='localhost', port=9200, http_auth=None, use_ssl=False, verify_certs=False, ca_certs=None, client_cert=None, client_key=None, ssl_version=None, ssl_assert_hostname=None, ssl_assert_fingerprint=None, maxsize=10, **kwargs)

使用urllib3库和http协议的默认连接类。

parameters explain
host 节点的主机名(默认值:localhost)
port 要使用的端口(整数,默认值:9200)
url_prefix elasticsearch的可选url前缀
timeout 以秒为单位的默认超时(float,默认值:10)
http_auth 可选的http auth信息,作为':'分隔的字符串或元组
use_ssl 如果为True,则使用ssl进行连接
verify_certs 是否验证SSL证书
ca_certs CA bundle的可选路径。有关如何获取默认设置的说明,请参见http://urllib3.readthedocs.org/en/latest/security.html#using
client_cert 包含私钥和证书的文件的路径,或仅在使用client_key时的cert
client_key 如果使用单独的证书和密钥文件,则包含私钥的文件的路径(client_cert将仅包含证书)
ssl_version 要使用的SSL协议的版本。选项包括:SSLv23(默认)SSLv2 SSLv3 TLSv1(有关您环境的确切选项,请参阅ssl模块中的PROTOCOL_ *常量)。
ssl_assert_hostname 如果不是False,则使用主机名验证
ssl_assert_fingerprint 如果不是,则验证提供的证书指纹
maxsize 将保持对此主机开放的最大连接数。

RequestsHttpConnection

class elasticsearch.connection.RequestsHttpConnection(host='localhost', port=9200, http_auth=None, use_ssl=False, verify_certs=False, ca_certs=None, client_cert=None, client_key=None, **kwargs)

使用请求库进行连接。

parameters explain
http_auth 可选的http auth信息,作为':'分隔的字符串或元组。任何值都将作为auth传递给请求。
use_ssl 如果为True,则使用ssl进行连接
verify_certs 是否验证SSL证书
ca_certs CA bundle的可选路径。默认情况下,将使用标准请求的包。
client_cert 包含私钥和证书的文件的路径,或仅在使用client_key时的cert
client_key 如果使用单独的证书和密钥文件,则包含私钥的文件的路径(client_cert将仅包含证书)

Helpers

简单帮助函数的集合,用于抽象一些细节或原始API。

Bulk helpers

批量API有几个帮助程序,因为它需要特定的格式化,如果直接使用,其他注意事项会使它变得很麻烦。 所有批量助手都接受Elasticsearch类的实例和可迭代的 action(任何可迭代的,也可以是生成器,这在大多数情况下是理想的,因为它允许您索引大型数据集而无需将它们加载到内存中)。 action 可迭代中的项应该是我们希望以多种格式索引的文档。最常见的一个与search()返回的相同,例如:

{
'_index': 'index-name',
'_type': 'document',
'_id': 42,
'_parent': 5,
'_ttl': '1d',
'_source': {
   "title": "Hello World!",
   "body": "..."
}
}

另外,如果_source不存在,它将弹出doc中的所有元数据字段,并将其余部分用作文档数据:

{
"_id": 42,
"_parent": 5,
"title": "Hello World!",
"body": "..."
}

bulk()api接受 index,create,delete 和 update 操作。使用_op_type字段指定操作(_op_type默认为 index ):

{
'_op_type': 'delete',
'_index': 'index-name',
'_type': 'document',
'_id': 42
}
{
'_op_type': 'update',
'_index': 'index-name',
'_type': 'document',
'_id': 42,
'doc': {'question': 'The life, universe and everything.'}
}

Note
从文件中读取原始json字符串时,您也可以直接传递它们(不先解码为dicts)。但是,在这种情况下,您无法在每个记录的基础上指定任何内容(索引,类型,甚至ID),所有文档都将被发送到elasticsearch以按原样索引。
elasticsearch.helpers.streaming_bulk(client, actions, chunk_size=500, max_chunk_bytes=104857600, raise_on_error=True, expand_action_callback=<function expand_action>, raise_on_exception=True, **kwargs)

Streaming bulk消耗传入的iterable中的操作,并产生每个操作的结果。对于非流式用例,使用bulk(),它是流式批量的包装器,一旦整个输入被消耗和发送,就会返回有关批量操作的摘要信息。

parameters explain
client 要使用的Elasticsearch实例
actions 包含要执行的操作的iterable
chunk_size 发送给es的一个块中的文档数(默认值:500)
max_chunk_bytes 请求的最大大小(以字节为单位)(默认值:100MB)
raise_on_error 在某些块发生时,从最后一个块的执行中引发包含错误(作为.errors)的BulkIndexError。我们默认 raise。
raise_on_exception 如果为False,则不将异常从调用传播到bulk,只报告失败的项目。
expand_action_callback 对传入的每个操作执行的回调,应返回包含操作行和数据行的元组(如果应省略数据行,则返回None)。
elasticsearch.helpers.parallel_bulk(client, actions, thread_count=4, chunk_size=500, max_chunk_bytes=104857600, expand_action_callback=<function expand_action>, **kwargs)

批量助手的并行版本一次在多个线程中运行。

parameters explain
client 要使用的Elasticsearch实例
actions 包含操作的迭代器
thread_count 用于批量请求的线程池的大小
chunk_size 发送给es的一个块中的文档数(默认值:500)
max_chunk_bytes 请求的最大大小(以字节为单位)(默认值:100MB)
raise_on_error 在某些块发生时,从最后一个块的执行中引发包含错误(作为.errors)的BulkIndexError。我们默认 raise。
raise_on_exception 如果为False,则不将异常从调用传播到bulk,只报告失败的项目。
expand_action_callback 对传入的每个操作执行的回调,应返回包含操作行和数据行的元组(如果应省略数据行,则返回None)。
elasticsearch.helpers.bulk(client, actions, stats_only=False, **kwargs)

bulk()api的助手,它提供了一个更友好的人机界面 - 它消耗了一个 action 迭代器,并将它们以块的形式发送给elasticsearch。它返回一个包含摘要信息的元组 - 成功执行的操作数,如果stats_only设置为True,则显示错误列表或错误数。 有关更多可接受的参数,请参阅streaming_bulk()

parameters explain
client 要使用的Elasticsearch实例
actions 包含操作的迭代器
stats_only 如果为True,则仅报告成功/失败操作的数量,而不仅仅是成功的次数和错误响应列表

任何其他关键字参数将传递给用于执行操作的streaming_bulk()。

Scan

elasticsearch.helpers.scan(client, query=None, scroll=u'5m', raise_on_error=True, preserve_order=False, **kwargs)

在scroll()api之上的简单抽象 - 一个简单的迭代器,它产生由下划线滚动请求返回的所有命中。 默认情况下,扫描不会以任何预定顺序返回结果。要在滚动时在返回的文档中使用标准顺序(通过分数或显式排序定义),请使用preserve_order = True。这可能是一项昂贵的操作,并且会抵消使用扫描的性能优势。

parameters explain
client 要使用的Elasticsearch实例
query 用于search()api的body
scroll 指定滚动搜索应保持索引的一致视图的时间长度
raise_on_error 如果遇到错误(某些分片无法执行),则引发异常(ScanError)。我们默认 raise。
preserve_order 不要将search_type设置为scan,这将导致滚动分页并保留顺序。 请注意,这可能是一项非常昂贵的操作,并且很容易导致不可预测的结果,请谨慎使用。

任何其他关键字参数将传递给初始search()调用:

scan(es,
    query={"query": {"match": {"title": "python"}}},
    index="orders-*",
    doc_type="books"
)

Reindex

elasticsearch.helpers.reindex(client, source_index, target_index, query=None, target_client=None, chunk_size=500, scroll=u'5m', scan_kwargs={}, bulk_kwargs={})

将一个满足给定查询的索引中的所有文档重新索引到另一个索引,可能(如果指定了target_client)在另一个集群上。如果未指定查询,则将重新索引所有文档。

Note
这个帮助器不会传输mappings,只传输数据。
parameters explain
client 要使用的Elasticsearch实例(如果指定了target_client,则为read)
source_index 从中​​读取文档的索引(或索引列表)
target_index 要填充的目标集群中的索引的名称
query 用于search()api的body
target_client 可选,指定将用于写入(从而启用集群之间的重新索引)
chunk_size 发送给es的一个块中的文档数(默认值:500)
scroll 指定滚动搜索应保持索引的一致视图的时间长度
scan_kwargs 要传递给scan()的其他kwargs
bulk_kwargs 要传递给bulk()的其他kwargs