0
我在MongoDb中加載了一些json數據。例如doc1 = {「id」:1,「name」:「x1」},doc2 = {「id」:2,「name」:「x2」},doc3 = {「id」:3,「name」 X3" }。現在我想要這些數據從MongoDb導入Elasticsearch。我寫了這段代碼。通過python將數據從MongoDb加載到Elasticsearch
mgclient = MongoClient()
db = mgclient['light-test']
col = db['test']
es1 = Elasticsearch()
print ("Connected", es1.info())
es1.indices.create(index='light-test', ignore=400)
# Pull from mongo and dump into ES using bulk API
actions = []
for data in tqdm(col.find(), total=col.count()):
data.pop('_id')
action = {
"_index": 'light-test',
"_type": 'test',
"_source": data
}
actions.append(action)
print("complete")
# Dump x number of objects at a time
if len(actions) >= 100:
deque(parallel_bulk(es1, actions), maxlen=0)
actions = []
print("done")
a = es1.search(index='light-test', body={
'query': {
'match_all': {
}
}
})
print(a)
的問題是在查詢返回。點擊顯示空白,而它應該已經返回了json文件。 results
幫我將MongoDb的數據導入Elasticsearch。