Elasticsearch
-
Elasticsearch : 시스템 구조 (2/2)Elasticsearch 2021. 4. 13. 16:27
Elastic 가이드 북 esbook.kimjmin.net Cluster 1. Elasticsearch는 대용량 데이터의 증가를 처리하기 위한 scale-out과 데이터의 무결성을 유지하기 위한 클러스터링 기능을 지원한다. 2. 여러 개의 노드를 하나의 물리 서버에 구성하는 것도 가능하다. 하지만 일반적으로, 물리 서버 1개 당 노드 1개를 실행하는 것을 권장한다. 3. 물리적인 구성을 떠나서, 여러 개의 노드를 하나의 클러스터로 묶을 때에는, 클러스터 이름을 지정하는 데에 주의해야 한다. 클러스터는 '이름'으로 구분되기 때문이다. Discovery 1. 노드가 처음 실행 될 때, 같은 서버의 다른 노드들을 찾아, 하나의 클러스터로 바인딩하는 과정을 디스커버리라고 한다. 2. 이 때, discovery...
-
Elasticsearch : 시스템 구조 (1/2)Elasticsearch 2021. 4. 13. 15:38
Elasticsearch 핵심 개념 클러스터 1개 이상의 노드로 구성된 것 하나 이상의 노드(=서버)가 모인 것 클러스터를 통해, 데이터를 저장하고, 색인 및 검색 기능을 제공한다. 노드 클러스터에 포함되는 단일 서버 데이터를 저장하고 클러스터의 색인, 검색 기능에 참여한다. 인덱스(색인, index) 인덱스 = 데이터 저장 공간 1개 노드에 여러 개 인덱스 가능 1개 인덱스는 여러 개 노드에 분산 저장되어 관리 1개 인덱스는 1개 타입 가능 elasticsearch의 index 생성 시 기본 구조 : 5개의 primary shard + 1개의 replica shard 타입(유형) 하나의 색인에서 하나 이상의 타입을 정의할 수 있다. DB의 table과 대응된다. 도큐먼트 색인화 할 수 있는 기본 정보 ..
-
Elasticsearch : 시작하기Elasticsearch 2021. 4. 2. 16:29
Elasticsearch 아파치 루씬 기반의 JAVA 오픈소스 분산 검색 엔진이다. DB처럼 '데이터 저장소'가 아니기 때문에, DB를 대체할 수는 없다. 방대한 양의 데이터를 신속하고, 실시간으로 저장, 검색, 분석을 할 수 있다는 장점이 있다. Elastic사의 대표 제품인 Elasticsearch, Logstash, Kibana를 ELK라고 부른다. 여기에 Beats가 추가된 것을 Elastic Stack이라고 부른다. Elasticsearch는 데이터의 CRUD를 위해 RESTful API 방식을 사용한다. RESTful API 방식을 사용하여 HTTP통신 기반으로 요청을 받아 JSON 형식으로 응답한다. 아파치 루씬 검색 어플리케이션을 만드는데에 사용하는 검색 라이브러리이다. 즉, 하나의 검색 ..