1. 插入数据
现在我们如果有大量的文档(例如10000000万条文档)需要写入es 的某条索引中,该怎么办呢?
1.1 顺序插入
import time
from elasticsearch import Elasticsearch
es = Elasticsearch()
def timer(func):
def wrapper(*args, **kwargs):
start = time.time()
res = func(*args, **kwargs)
print('共耗时约 {:.2f} 秒'.format(time.time() - start))
return res
return wrapper
@timer
def create_data():
""" 写入数据 """
for line in range(100):
es.index(index='s2', doc_type='doc', body={'title': line})
if __name__ == '__main__':
create_data() # 执行结果大约耗时 7.79 秒
1.2 批量插入
import time
from elasticsearch import Elasticsearch
from elasticsearch import helpers
es = Elasticsearch()
def timer(func