일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 상속
- 오버로딩
- dlfks
- git
- 버전관리
- Elasticsearch
- elastic certified engineer
- 형상관리
- Overloading
- java
- 오버라이딩
- overriding
- Today
- Total
목록ELK (17)
엔지니어 블로그
# elasticsearch ILM hot-warm-cold 아키텍쳐 구현 ## hot-warm-cold node elasticsearch는 shard 내 data의 중요도,사용 빈도에 따라 hot,warm,cold 으로 정의된 node에 각각 할당할 수 있다. 각각의 node는 아래 그림처럼 구성될 수 있으며 최소 2개의 node만 있어도 구현 가능하다. 각 node는 hot-warm-cold 순으로 중요도가 높기 때문에 서로 다른 사양으로 구성하게 된다. (일반적으로 hot node는 더 많은 CPU 리소스와 빠른 IO가 필요하고, warm,cold node는 더 많은 disk 공간이 필요하지만 CPU 리소스는 적더오 되고 IO는 더 느려도 된다.) ## ILM을 사용해 how-warm-cold 아키..
elasticsearch nori-plugin 실험 1. 문제 사용자 사전 구성시 복합어가 많았음. 사용자 사전에 명시된 단어들은 우선순위가 높아서 해당 단어가 token으로 추출되기 때문에 어떻게 구성하냐에 따라 token이 상이할 것으로 예상됨. 1. nori에서 복합어의 tokenize 단위를 결정하기 위한 decompound_mode 옵션을 조정 2. 사용자 사전에서 복합어와 단순명사의 포함을 조절2. 시도 조건 1. nori_pos 에 stop tag를 사용하여 명사만 tokenize 하도록 설정 1. 복합어를 포함하고 decompound_mode 조정 #사전 list 강남역 삼성전자 부서장 보물찾기 대학수학능력시험 세종문화회관 서울대학교 북핵실험 한미동맹 공백문자 PUT test_nori { ..
1. 현상 bootstrap.memory_lock option을 true로 설정하면 오류 발생 2. 원인 error message에 나와있듯, 2가지 오류가 발생한다.[1] - max file descriptor가 너무 낮게 설정 되어있다. [2] - memory가 locking 되어있지 않다. 3. 해결책 limits.conf의 내용을 아래와 같이 변경해주면 된다.sudo vi /etc/security/limits.conf
Elasticsearch Enrich es는 다양한 데이터 소스의 데이터를 indexing해서 빠른 검색과 분석이 가능하다. 데이터 엔리치먼트 es 7.5 버전 이상부터는 기존 index의 데이터를 새로 인덱싱 되는 index에 원하는 대로 추가하는 작업이 Enrich Processer를 통해 가능해졌다. 다음과 같은 작업이 손쉽게 가능해졌다. ▶ IP address를 통해서 연관된 디바이스나 서비스 정보들을 추가하기 ▶ 상품 주문 데이터의 Product ID를 통해서 상세 제품 정보 데이터를 추가하기 ▶ 이메일 주소를 통해서 상세 컨택 포인트 정보를 추가하기 ▶ GPS의 정보를 통해서 우편 번호 정보를 추가하기 등등 Enrich Processor의 동작 원리 es의 데이터 노드는 ingest 노드 이기..
elasticsearch에서 query로 search를 실행할 때 minimum should match가 적용되는 것이 이해가 되질 않아서 공식문서를 보고 정리해 본 내용이다. Integer 3 integer 로 지정하면 해당 숫자 만큼의 검색어가 일치해는 document만 반환한다. Negative integer -2 총 검색어의 수에서 지정한 수 만큼 뺀 갯수를 최소 필수 갯수로 지정합니다. Percentage 75% 총 검색어에서 지정한 %의 갯수 이상 만큼 일치하는 결과를 반환 Negative percentage -25% 총 검색어에서 지정한 %의 갯수 이상 만큼 일치하는 결과를 반환 Combination 3
index가 서비스에 사용되고 있을 때 일반적인 방법으로 reindex를 실행하면 오류가 발생한다. 기존 index의 document가 10만개가 넘어가기 때문에 너무 큰 나머지 timeout error가 발생 #news index의 내용을 dict_test index로 reindex POST _reindex { "source": { "index": "news" }, "dest": { "index": "dict_test" } } #오류 코드 {"statusCode":502,"error":"Bad Gateway","message":"Client request timeout"} 이때 API에 옵션을 추가해주면 비동기로 처리가 가능하다. POST _reindex?wait_for_completion=false ..
동의어 사전을 지정해두고 highlight 설정을 하면 검색할 때 highlight가 해당 단어가 아닌 관계없는 바로 뒷 단어에 가서 붙는다. 변경되면 curl -XPOST 'localhost:9200/synonyms_test/_reload_search_analyzers?pretty' 사용해서 reload 가능
m1 환경에서 logstash를 사용하려고 하는데 오류가 발생했다. 온갖 검색을 다 해봐도 해결할 수 없었다... 지푸라기라도 잡는 심정으로 ELK 커뮤니티에 문의해봤고 한분이 답을 주셨다. 은인이다. 컴퓨터에 설치된 jdk가 아니라 logstash의 bundled jdk를 사용해야 한다고 하셨다. 그래서 미리 설정해둔 $JAVA_HOME 환경 변수를 unset 해준 후 실행시켜 보았더니 거짓말처럼 실행됐다. 교훈. m1의 jdk는 호환성이 좋지 못하다,,,