2017_12_27
2017-12-27 공부
elastic search
----------------
[1] 엘라스틱 서치란?
:=> 아파치 루신을 기반으로 개발된 오픈소스 분산 검색 엔진(서버)이다.
(* 루신(Lucene)이란? 자바로 개발된 오픈소스 정보검색 라이브러리)
[2] 엘라스틱 서치의 특징
:=> 분산 + 확장성
:=> 고가용성(high availability)
::-> 엘라스틱 서치는 하나 이상의 노드로 구성
::-> 각 노드는 1개 이상의 데이터 원본과 복사본을 서로 다른 위치에 나누어 저장
::-> 노드가 종료되거나 실행에 실패할 경우 다른 노드로 데이터 이동
::-> [*] 항상 일정한 데이터 복사본의 개수를 유지하여 높은 가용성과 안정성 보장
:=> 멀티 태넌시(Multi-tenancy)
::-> 서로 다른 인덱스의 데이터를 하나의 질의로 검색하여 하나의 출력으로 도출가능
:=> 전문 검색(Full text search)
:=> 문서 중심(Document oriented) : 복잡한 현실 세계의 요소들을 구조화된 json 문서 형식으로 저장
:=> Schema free : json 문서 구조를 통해 데이터를 인덱싱하고 검색 가능하게 한다.
:=> RESTful api
::-> 기본적으로 모든 필드를 색인 후 json 구조로 저장
::-> json 구조로 인해 모든 레벨의 필드에 접근이 쉽고, 빠른 속도로 검색 가능
:=> 여러개의 노드로 구성되는 분산 시스템
:=> 데이터는 각 노드에 분산 저장
:=> 복사본을 유지하여 각종 충돌로부터 노드 데이터 보호
url:http://localhost:9200
id: elastic
pw: changeme
시스템 구조
클러스터 (cluster)
(1)클러스터는 엘라스틱서치의 가장 큰 시스템 단위
(2)하나의 클러스터는 여러개의 노드로 이루어짐
(3)여러대의 서버가 하나의 클러스터를 구성할 수 있으며 그 반대도 가능
(4)같은 클러스터의 이름으로 노드를 실행하는 것만으로 자동 확장
노드 (Node)
(1) 노드는 마스터 노드와 데이터 노드로 구분
(2) 마스터 노드는 전체 클러스터 상태의 메타 정보를 관리
(3) 기존의 마스터 노드가 종료되는 경우 새로운 마스터 노드가 선출됨
(4) 데이터 노드는 실제 데이터가 저장되는 노드
샤드와 복사본 ( ??? 이건 전혀 모르겠음 )
(1) 샤드는 데이터 검색을 위해 구분되는 최소단위
(2) 색인된 데이터는 여러 개의 샤드로 분할되 저장
(3) 기본적으로 인덱스당 5개의 샤드와 5개의 복사본으로 분리
'일상' 카테고리의 다른 글
2017_12_31 (0) | 2017.12.31 |
---|---|
블레이드 러너 2049 (0) | 2017.12.30 |
EV3 (0) | 2017.12.20 |
외부 교육 (0) | 2017.11.27 |
2017_10_08_박경호_정찬호_김준현 (0) | 2017.10.08 |