我正在尝试将弹性搜索索引从登台环境克隆到prod环境。找不到办法做到这一点。我想要做的就是使用映射克隆现有索引,而不是数据。
有人能指出我正确的方向。
答案 0 :(得分:0)
没有1-liner,但如果您拥有elasticsearch-python module并且您只关心映射,这将有效。
from elasticsearch import Elasticsearch
eshost = <YOUR ELASTICSEARCH HOST>
oldindex = <SOURCE INDEX TO COPY>
newindex = <NEW INDEX>
es = Elasticsearch(eshost)
createReply = es.indices.create(index=newindex)
getReplySource = es.indices.get_mapping(index=oldindex)
sourceMappings = getReplySource[oldindex]['mappings']
for doc_type, mapping in sourceMappings.iteritems():
putReplyTarget = es.indices.put_mapping(doc_type, mapping, newindex)
答案 1 :(得分:0)
在object Search {
implicit def case1[A](implicit ev: TypeClass1[A]): Search[A] = null
implicit def case2[M[_], A](implicit ev: TypeClass2[M, A]): Search[M[A]] = null
}
和elasticsearch 5.6
中,以下代码对我有用:
py-elasticsearch 5.5.3