ESの書込パラメータの設定
ESにデータを書き込む際のオプション設定方法:
- indexパラメータ:データ書き込み先となるインデックス、つまりどのインデックスにデータが書き込まれるのかを指定します。
- idパラメータ:データの一意の識別子を指定し、インデックス内でのデータの位置を決定します。指定しない場合は、ESが自動的に一意のidを生成します。
- bodyパラメータ:書き込むデータの内容を指定し、JSONオブジェクトまたはJSON配列となり、書き込むべきフィールドと対応する値を含みます。
- ルーティングパラメータ: データのルーティング値を指定し、指定するとデータを特定のシャードに書き込むことができます。
- refresh パラメータ: データを書き込んだ直後にインデックスをリフレッシュしてデータを検索可能にするかどうかを指定します。デフォルトは false で、データの書き込み後にインデックスはすぐにリフレッシュされません。
- タイムアウトパラメーター: データの書き込みに掛かる時間のタイムアウトを指定します。
- 書き込みデータの一貫性レベルを指定するconsistencyパラメータは、「one」、「quorum」、「all」などがあります。
ネイティブの日本語で言い換えてください。1つだけで結構です。
from elasticsearch import Elasticsearch
# 连接ES
es = Elasticsearch()
# 设置参数并写入数据
index = "my_index"
id = "1"
body = {
"field1": "value1",
"field2": "value2"
}
routing = "1"
refresh = True
es.index(index=index, id=id, body=body, routing=routing, refresh=refresh)
上で示した例では、インデックスパラメータを「my_index」、IDパラメータを「1」、本体パラメータを2つのフィールドを含むJSONオブジェクト、ルーティングパラメータを「1」、refreshパラメータをTrueに設定しています。これは、データを書き込んだ後にインデックスをすぐにリフレッシュすることを意味しています。