es 인덱스 및 맵핑 만들기
10793 단어 Elasticsearch
es mapping
:
from elasticsearch import Elasticsearch
es = Elasticsearch(hosts="0.0.0.0", port=9200, timeout=5000)
index_20 = "olt_bas_test_20180824"
def set_map():
body_ = {
"mappings": {
"_default_": {
"_all": {
"enabled": False
},
"dynamic_templates": [
{
"strings": {
"match_mapping_type": "string",
"mapping": {
"type": "keyword"
}
}
}
]
},
"olt": {
"_all": {
"enabled": False
},
"dynamic_templates": [
{
"strings": {
"match_mapping_type": "string",
"mapping": {
"type": "keyword"
}
}
}
],
"properties": {
"frame_alarm_users": {
"type": "long"
},
"ka_alarm_users": {
"type": "long"
},
"ld_bad_qa_users": {
"type": "long"
},
"live_alarm_users": {
"type": "long"
},
"live_bad_qa_users": {
"type": "long"
},
"live_users": {
"type": "long"
},
"mdi_alarm_users": {
"type": "long"
},
"olt_ip": {
"type": "keyword"
},
"online_users": {
"type": "long"
},
"sb_alarm_users": {
"type": "long"
},
"view_users": {
"type": "long"
},
"vod_alarm_users": {
"type": "long"
},
"vod_bad_qa_users": {
"type": "long"
},
"vod_users": {
"type": "long"
}
}
},
"bas": {
"_all": {
"enabled": False
},
"dynamic_templates": [
{
"strings": {
"match_mapping_type": "string",
"mapping": {
"type": "keyword"
}
}
}
],
"properties": {
"frame_alarm_users": {
"type": "long"
},
"ka_alarm_users": {
"type": "long"
},
"ld_bad_qa_users": {
"type": "long"
},
"live_alarm_users": {
"type": "long"
},
"live_bad_qa_users": {
"type": "long"
},
"live_users": {
"type": "long"
},
"mdi_alarm_users": {
"type": "long"
},
"bas_ip": {
"type": "keyword"
},
"online_users": {
"type": "long"
},
"sb_alarm_users": {
"type": "long"
},
"view_users": {
"type": "long"
},
"vod_alarm_users": {
"type": "long"
},
"vod_bad_qa_users": {
"type": "long"
},
"vod_users": {
"type": "long"
}
}
}
}
}
if es.indices.exists(index_20):
es.indices.delete(index_20)
# map, doc_type
create_index = es.indices.create(index=index_20, body=body_)
if create_index['acknowledged'] != True:
print("create index error")
if __name__ == '__main__':
set_map()
:
:type_
def set_mapping():
my_mapping = {
type_: {
"properties": {
"@timestamp": {
"type": "date"
},
"@version": {
"type": "keyword"
},
"channelSwitchDelay": {
"type": "long"
},
"frameDelay": {
"type": "long"
},
"host": {
"type": "keyword"
},
"iptvAccount": {
"type": "keyword"
},
"kaNum": {
"type": "long"
},
"mac": {
"type": "keyword"
},
"message": {
"type": "keyword"
},
"oui": {
"type": "keyword"
},
"path": {
"type": "keyword"
},
"productClass": {
"type": "keyword"
},
"responseDelay": {
"type": "long"
},
"rtpLossRate": {
"type": "long"
},
"softProbeOUI": {
"type": "keyword"
},
"streamBreak": {
"type": "long"
},
"type": {
"type": "keyword"
}
}
}
}
creat_index = es.indices.create(index=index_insert, body=None)
mapping_index = es.indices.put_mapping(index=index_insert, doc_type=type_, body=my_mapping)
if creat_index['acknowledged'] != True or mapping_index['acknowledged'] != True:
print("Index create failed")
:
1、
curl -XPUT 'http://0.0.0.0:9200/iptv_test_3'
2、 map
curl -XPUT 'http://0.0.0.0:9200/iptv_test_3/iptv-apk/_mapping?pretty' -d '{
"iptv-apk": {
"properties": {
"@timestamp": {
"type": "date"
},
"@version": {
"type": "keyword"
},
"channelSwitchDelay": {
"type": "long"
},
"frameDelay": {
"type": "long"
},
"host": {
"type": "keyword"
},
"iptvAccount": {
"type": "keyword"
},
"kaNum": {
"type": "long"
},
"mac": {
"type": "keyword"
},
"message": {
"type": "keyword"
},
"oui": {
"type": "keyword"
},
"path": {
"type": "keyword"
},
"productClass": {
"type": "keyword"
},
"responseDelay": {
"type": "long"
},
"rtpLossRate": {
"type": "long"
},
"softProbeOUI": {
"type": "keyword"
},
"streamBreak": {
"type": "long"
},
"type": {
"type": "keyword"
}
}
}
}'
3、 map
curl -XGET 'http://0.0.0.0:9200/iptv_test_3/_mapping?pretty'
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Embulk를 사용하여 ElasticCloud로 보내기Embulk에서 ElasticCloud에 보낼 수 있을까라고 생각비망록도 겸해 기술을 남깁니다 Embulk 설치 ElasticCloud (14 일 체험판) brew라면 아래 명령 입력 파일 만들기 파일 내용 seed...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.