TIL/ELK Stack(4)
-
[Elasticsearch] Sharding and scalability
Sharding 이란 샤딩은 인덱스를 더 작은 조각으로 나누는 방법을 뜻한다. 각 조각을 샤드라고 부른다. 샤딩은 인덱스 레벨에서 수행된다. 주 목적은 데이터 볼륨을 수평적 확장하기 위함이다. Console에서 확인하기 Kibana를 켜거나 터미널에서 curl로 다음을 실행시켜 보자. pri라고 적힌 컬럼이 보이는데, pri는 "primary shards"의 약자이다. Shards 수 구성 하나의 인덱스는 기본적으로 하나의 샤드로 구성된다. Elasticsearch 7.0 버전부터 디폴트로 1개의 샤드로 인덱스가 구성되고 그 전에는(6 버전 미만) 5개로 구성되었다. 5개로 구성되었던 것을 오버샤딩으로 불렸다.
2023.06.23 -
[Elasticsearch] 데이터 입력, 조회, 삭제(GET, POST, PUT, DELETE)
Elasticsearch 실행 Elasticsearch를 설치하는 방법은 다양하지만 나는 mac을 사용하기 때문에 homebrew를 이용하여 설치하였다. 다음 명령어로 설치를 진행하자. 참고로 나는 7.17.4 version을 설치하였다. $ brew tap elastic/tap $ brew install elastic/tap/elasticsearch-full 설치가 완료되면 Elasticsearch를 실행하여 보자. 참고로 Elasticsearch는 9200 포트를 사용한다. $ elasticsearch 다음과 같이 많은 출력이 뜨고 마지막에 뭐 successfully reloaded changed 이런 멘트가 뜨면 성공적으로 실행이 된 것이다. 이제 인덱스를 조회하여보자. GET input $ cur..
2023.05.08 -
[Elasticsearch] Elasticsearch의 기본 개념
Elasticsearch란? Apache Lucene 기반의 분산 검색 엔진 오픈소스이다. Elasticsearch는 다음과 같은 특징들이 있다. 오픈소스(open source) Elasticsearch의 핵심 기능들은 Apache 2.0 라이센스로 배포되고 있고 Elastic github repository에서 소스들을 찾을 수 있다. 실시간 분석(real-time) Elasticsearch의 가장 큰 특징 중 하나이다. Elasticsearch는 배치 기반의 분석 시스템인 하둡(Hadoop)과 달리 Elasticsearch 클러스터가 실행되고 있는 동안에는 계속해서 데이터가 입력되고, 동시에 거의 실시간 속도로 색인(index)된 데이터의 검색, 집계가 가능하다. 전문(full text) 검색 엔진 ..
2023.05.06 -
[ELK Stack] ELK Stack 이란
ELK Stack이란? ELK는 Elasticsearch, Logstash, Kibana 세 가지 오픈소스 프로젝트의 앞글자를 따서 만든 이름이다. Elasticsearch Elasticsearch는 Apache Lucene에 구축되어 배포된 검색 및 분석 엔진이다. 다양한 언어를 지원하고 고성능에 스키마가 없는 JSON 문서로 Elasticsearch는 다양한 로그 분석과 검색 사용을 위해 많은 사용자에게 사랑받는 오픈소스이다. 2010년에 릴리스된 이후로 빠르게 인기 검색 엔진이 되었으며, 로그 분석, 전체 텍스트 검색, 보안 인텔리전스, 비즈니스 분석 및 운영 인텔리전스 사용 사례에 일반적으로 사용되었다. JSON 문서 형식의 데이터를 Logstash와 같은 수집 도구나 API를 사용해 Elasti..
2022.05.12