0
색인을 생성 할 때와 내 조직의 사용자 이름과 같은 메타 데이터를 저장하고 싶습니다. Elasticsearch의 AWS 버전을 잠근 방법을 고려해 볼 때이 작업을 수행하는 쉬운 방법이 있습니까?AWS Elasticsearch 인스턴스에 "주석"을 어떻게 저장합니까?
색인을 생성 할 때와 내 조직의 사용자 이름과 같은 메타 데이터를 저장하고 싶습니다. Elasticsearch의 AWS 버전을 잠근 방법을 고려해 볼 때이 작업을 수행하는 쉬운 방법이 있습니까?AWS Elasticsearch 인스턴스에 "주석"을 어떻게 저장합니까?
문서에 입력란을 추가 할 수 있습니까? 사용자를 알고 스크립트를 사용하여 시간을 얻고, 메타 데이터를 문서에 추가하고, 문서를 ES 라이브러리에 추가하는 스크립트를 사용하는 것이 매우 쉽습니다. 저장 추가하려면 당신이 원하는 문서를했을 ::
# coding: utf-8
true = True
false = False
null = None
import sys
inDoc = sys.argv[1]
#print inDoc
parts = inDoc.split(".")
if(parts[len(parts)-1].lower()=="json"):
with open(inDoc,"r") as INDOC:
doc = INDOC.read()
else:
doc = inDoc
del inDoc
pyDoc = eval(doc)
del doc
pyDoc["#Creator"] = "<Your_Name>"
import time
import datetime
pyDoc["#CreatedAt"] = str(datetime.datetime.fromtimestamp(time.time()).strftime('%Y-%m-%d %H:%M:%S'))
doc = str(pyDoc)
del pyDoc
esDomain = "search-movies-4f3nw7eiia2xiynjr55a2nao2y.us-west-1.es.amazonaws.com/movies/movie/tt0116996"
import os
command = "curl -XPUT "+esDomain+" -d '"+str(doc).replace(": True",": true").replace(": False",": false").replace(": None",": null").replace("'",'"')+"'"
del doc
del esDomain
#print (command)
os.system(command)
del command
없음 : 참 : 거짓 또는 다음 코드는 데이터가 어떤 따옴표 또는 인용을 포함하지 않는 한 작동 예를 들어
newDoc.json과 같이 다음 명령을 실행하십시오.
python AddWithStamps.py ./newDoc.json
문서 디렉토리로 이동 한 후. 또는 다음을 실행할 수도 있습니다 :
python AddWithStamps.py '{"Some": "Document"}'
저는 (노드를 사용하고 있습니다) 파이썬에 익숙하지 않지만 사용자 이름과 날짜가있는 색인의 모든 문서에 필드를 추가한다고 가정합니까? – Jared
그게 그 놀이 야. – kpie
모든 문서에 대해 전체 필드를 저장하는 대신 내 메타 데이터 전용으로 새 색인을 만드는 것이 낫지 않습니까? – Jared