엘라스틱서치 설치 및 사용법
아래 링크를 통해서 확인하시면 됩니다.
[ELK] 엘라스틱서치 다운로드 및 사용법 (1)
안녕하세요. 엘라스틱 검색엔진을 다운로드 및 사용 방법에 대해 설명해드리려고 합니다. ELK란? Elasticsearch + Logstash + Kibana의 앞글자를 따서 ELK라고 부릅니다 . 각각의 기능을 크게 말씀드리자면
a-thinker.tistory.com
1. 오픈소스란?
- 누구나 자유롭게 코드나 그 코드를 통해 구현된 프로그램을 이용할 수 있음
ex) selenium, beautifulSoup
2. 검색엔진이란?
- 웹에서 정보를 수집해 검색 결과를 제공하는 프로그램. 결과로 제공되는 데이터 특성에 따라 구현 형태가 달라짐
데이터베이서에서 불가능한 비정형 데이터를 색인하고 검색할 수 있다. - 수집기를 이용해 방대한 데이터를 수집하고 이를 다수의 검색엔진을 이용해 색인하고 검색결과를 UI로 제공
- 시스템에 따라 관련도가 높은 문서를 검색 결과의 상위에 배추할 수 있을 뿐 아니라 가중치를 둬서 정확도를 높일 수 있음
- (정보를 수집하는)수집기
(수집한 데이터를 저장하는)스토리지
(수집한 데이터를 검색에 적절한 형태로 변환하는)색인기 : 의미있는 용어 추출, 역색인 구조로 데이터 저장
(색인된 데이터에서 일치하는 문서를 찾는)검색기로 구성된다 : 질의와 문서가 일치하는지 검색 순위 알고리즘으로 판단
3. Elasticsearch이란?
- DMBS 영역까지 넘볼 정도로 입지가 넓어지고 있지만 완전히 대체할 수 없다.
가장 큰 이유는 데이터 저장 방식 때문.
RDB: 행을 기반으로 데이터 저장
수정과 삭제의 편의성과 속도 면에서 강점
다양한 조건의 데이터를 검색하고 집계하는 데에는 구조적인 한계
ES : 단어를 기반으로 데이터 저장
특정 단어가 어디에 저장되어 있는지 이미 알고 있어 모든 도큐먼트를 검색할 필요가 없다.
행 기반 저장 구조와는 달리 단어가 도큐먼트를 알고 있기 때문에 도큐먼트 개수와 상관없이 한 번의 조회
데이터 특성상 수정과 삭제가 많은 경우 RDB와 엘라스틱 영역을 나누어 아키텍처링 하는 것이 필요가 RDB 와 공종하는 것이 매우 제한적인 상황에서 엘라스틱을 주로 사용해야 한다면 관계형 데이터 모델링 고려 - 데이터 모델링 방법
1)Parent-Child 모델링
2)Nested 모델링
3)Application Side Join 모델링
4)Denormalization 모델링 - 형태소 분석기 (nori)
- 하나의 토크나이저와 두개의 토큰필터로 구성
(nori_tokenizer, nori_part_of_speech, nori_readingform_) - 사용자 설정 사전과 불용어 처리를 위한 stoptags를 지원
- 세종 말뭉치와 mecab-ko-dic사전을 압축된 형태로 사용, 사용자 사전 등록 가능
- RESTful API를 이용함
'IT > 자연어처리' 카테고리의 다른 글
| [Hadoop] MapReduce, Apache Spark (0) | 2021.12.15 |
|---|---|
| [Hadoop] 데이터 저장 및 분석 처리 시스템 (0) | 2021.12.14 |
| [자연어처리] 한글 형태소 비교 (0) | 2021.11.30 |
댓글