프로젝트/여행지 오픈 API
[ElasticSearch] 로그스태시 최종 삽입
블랑v
2023. 11. 2. 12:56
로그스태시를 통해 5만여개의 데이터를 삽입하였다.
빅데이터라고는 할 수 없지만, 900MB의 텍스트 데이터에서 유효한 토큰을 추출 할 수 있을 것이라고 기대해본다.
그런데, 이렇게 넣는 데이터로 만들어지는 인덱스의 설정을 만들어지고 reindex로 만드는 것 보다는 인덱스 템플릿을 만들고 적용하는 것이 더욱 효율적일 것이다.
숙박업소와 여행지의 템플릿을 설정하려고 한다.
# 숙박업소
PUT _index_template/scrap_template_accmmo
{
"index_patterns": ["scrap_accommo_*"],
"template": {
"settings": {
"number_of_shards": 1,
"analysis": {
"analyzer": {
"korean": {
"type": "custom",
"tokenizer": "nori_tokenizer",
"filter": ["nori_readingform"]
}
}
}
},
"mappings": {
"properties" : {
"id" : {"type" : "keyword"},
"pk_id" : {
"type" : "text",
"fields" : {
"keyword" : {
"type" : "keyword",
"ignore_above" : 256
}
}
},
"accommodation_addr" : {
"type" : "text",
"fields" : {
"keyword" : {
"type" : "keyword",
"ignore_above" : 256
}
}
},
"accommodation_lat" : {
"type" : "text",
"fields" : {
"keyword" : {
"type" : "keyword",
"ignore_above" : 256
}
}
},
"accommodation_lng" : {
"type" : "text",
"fields" : {
"keyword" : {
"type" : "keyword",
"ignore_above" : 256
}
}
},
"accommodation_name" : {
"type" : "text",
"fields" : {
"keyword" : {
"type" : "keyword",
"ignore_above" : 256
}
}
},
"accommodation_pic" : {
"type" : "text",
"fields" : {
"keyword" : {
"type" : "keyword",
"ignore_above" : 256
}
}
},
"accommodation_price" : {
"type" : "text",
"fields" : {
"keyword" : {
"type" : "keyword",
"ignore_above" : 256
}
}
},
"accommodation_score" : {
"type" : "text",
"fields" : {
"keyword" : {
"type" : "keyword",
"ignore_above" : 256
}
}
},
"accommodation_type" : {
"type" : "text",
"fields" : {
"keyword" : {
"type" : "keyword",
"ignore_above" : 256
}
}
}
}
}
}
}
# 여행정보
PUT _index_template/scrap_template_wiki
{
"index_patterns": ["scrap_wiki_*"],
"template": {
"settings": {
"number_of_shards": 1,
"analysis": {
"analyzer": {
"korean": {
"type": "custom",
"tokenizer": "nori_tokenizer",
"filter": ["nori_readingform"]
}
}
}
},
"mappings": {
"properties" : {
"id" : {"type" : "keyword"},
"content_id" : {"type" : "keyword"},
"pk_id" : {"type" : "keyword"},
"number" : {"type" : "keyword"},
"attraction_name" : {
"type" : "text",
"fields" : {
"keyword" : {
"type" : "keyword",
"ignore_above" : 256
}
}
},
"wiki_title" : {
"type" : "text",
"fields" : {
"keyword" : {
"type" : "keyword",
"ignore_above" : 256
}
}
},
"wiki_content" : {
"type" : "text",
"fields" : {
"keyword" : {
"type" : "keyword",
"ignore_above" : 256
}
}
}
}
}
}
}