Hayden's Archive
[ELK 스택] 엘라스틱 서치 기본 개념 본문
ELK STACK
- ELK = Elasticsearch + Logstash + Kibana 의 약자
- 멋진 빅데이터 개발자는 어떤 데이터든지 수집하고 빠르게 검색하고 데이터 무더기에서 쓸만한 정보를 보기 좋게 시각화할 수 있어야 함
- ELK스택을 마스터하면 어떤 빅데이터를 만나든지 쉽게 빅데이터 개발자 역할을 수행할 수 있음
- ELK 스택
- Logstash가 어떤 데이터베이스의 데이터든지 csv이든지 상관 없이 데이터를 엘라스틱 서치에 수집해줌
- Kibana는 Data Visualization Tool로 엘라스틱 서치의 데이터를 보기좋게 화면에 보여줄 것임. 엘라스틱 서치의 빠른 검색으로 빅데이터도 순식간에 Kibana에서 시각화(프론트엔드 코드 필요 없음)
엘라스틱 서치 vs 관계형 DB
- 엘라스틱 서치에서 John이라고 검색하면 doc1, doc2에 있다는 것을 바로 알 수 있음.
- 관계형 DB을 사용하면 doc1에 가서 professor에 또 가서 John이 있는지 없는지 확인하고 doc1 저장, doc2 확인하고 doc2 저장, doc3 확인하고 doc3 저장하지 않음. 저장된 ArrayList에서 doc1, doc2가 있으므로 doc1과 doc2를 UI에 보여줄 수 있음
- 결론 : 엘라스틱 서치가 검색에서는 매우 빠름.
엘라스틱 서치 데이터 구조
- elasticsearch는 index / type / document로 구성되어 있음
- 가장 큰 개념이 index이고, 그 안에 type을 가지고 있고 type 안에 여러 개의 document를 가지고 있음. document들은 같은 property를 가지고 있음.
엘라스틱 서치와 관계형 DB 비교
- 구성요소
- 엘라스틱 서치에서는 Rest API를 써서 CRUD를 구현
- 구문