elasticsearch的helpers.bulk和es_client.bulk的用法
阿新 • • 發佈:2018-12-20
from elasticsearch import Elasticsearch import datetime es_client = Elasticsearch(["127.0.0.1:9200"], timeout=20) es_client.indices.create(index='log_index', ignore=400) body1 = {"func_info":"刪除日誌", "error_info":"id為空111", "write_date":datetime.datetime.now()} # body2 = {"func_info":"刪除日誌", "error_info":"id為空222", "write_date":datetime.datetime.now()} result = [{'index': {'_index': 'log_index', '_type': 'log_index'}}, body1,{'index': {'_index': 'log_index', '_type': 'log_index'}}, body2] es_result = es_client.bulk(index="log_index",doc_type="log_index", body= result) es_client.indices.flush()
說明 使用es_client.bulk方法 可以不建立索引index,也能批量插入成功
from elasticsearch import Elasticsearch from elasticsearch import helpers import datetime es_client = Elasticsearch(["127.0.0.1:9200"], timeout=20) es_client.indices.create(index='d_kl', ignore=400) result = [] action = { "_index": "d_kl", "_type": "d_kl", "_source": { "data": "資料" } } result.append(action) helpers.bulk(es_client, result) es_client.indices.flush()