이 강의는
ElasticSearch, LogStash, Kibana 기초부터 설명합니다.
최종단계로 ELK 스택을 활용하여, 세계 인구 분석, 주식 분석을 하시는 본인의 모습을 발견하실 수 있습니다.
## 섹션1. 데이터 과학 소개
## 어떠한 데이터든 수집하여 시각화하는 것이 목표
- 빅데이터 수집을 구현할 수 있다.
- 엘라스틱서치의 빠른 검색으로 키바나에서 시각화 가능
## 섹션1. 우분투에 엘라스틱서치 설치하기
- 우분투 16.04 에 설치
- 우분투용 JDK 설치 명령어
- Sudo add-apt-repository -y ppa:webupd8team/java
- Sudo apt-get update
- Sudo apt-get -y install oracle-java8-installer
- Java -version (JDK버전 확인)
- 엘라스틱서치 설치
2. Dpkg -i elasticsearch-5.1.1.deb
3. Sudo systemctl enable elasticsearch.service
- 서버 시작시 자동시작 설정
- 엘라스틱서치 시작 & 중지 & 체크 방법
- Sudo service elasticsearch start
- Sudo service elasticsearch stop
3. Curl -XGET localhost:9200 (버전정보 확인 가능)
## 섹션2. 엘라스틱서치
## 2-1. 엘라스틱서치 기본개념 정리
- John 과 database 가 어디에 있는지 저장하는 모습
: 엘라스틱서치는 키워드가 어디에 있다고 저장만 함
- 엘라스틱서치는 RDB에 비해 검색속도가 매우 빠르다.
- 엘라스틱서치 데이터 구조
- 엘라스틱서치 & RDB 데이터 구조
: Index -> Database
: Type -> Table
: Document -> Row
: Field -> Column
: Mapping -> Schema
- 엘라스틱서치는 REST API를 사용하여 데이터를 삽입/지울 수 있다.
: GET -> Select
: PUT -> Update
: POST -> Insert
: DELETE -> Delete
## 2-2. 엘라스틱서치 데이터 입력 조회 삭제 (GET,POST,PUT,DELETE)
- 엘라스틱서치는 REST API 를 사용한다.
: GET -> Select -> Read
: PUT -> Update -> Update
: POST -> Insert -> Create
: DELETE -> Delete -> Delete
- Index를 만든다는 것은 Database를 만든다는 의미다.
- 먼저 Classes 라는 인덱스 있는지 조회해 본다
- Curl -XGET http://localhost:9200/classes
: status 에 404 에러로 Index가 없음을 의미한다.
- 결과값을 예쁘게 보고 싶을때 ?pretty 사용
- JSON 포멧으로 보여줌
- Index 가 있다/없다 알기 쉽다. (status : 404)
- Curl -XGET http://localhost:9200/classes?pretty
- 인덱스가 없음을 확인했으면 생성해보자.
- Curl -XPUT http://localhost:9200/classes (PUT 명령어로 인덱스 생성)
- Curl -XGET http://localhost:9200/classes?pretty (classes 인덱스 조회)
- 인덱스 지우는 방법
(curl 명령어는 REST API를 사용하기 때문에 -X 를 붙임)
- Curl -XDELETE http://localhost:9200/classes
- Curl -XGET http://localhost:9200/classes?pretty
(인덱스가 지워져서 status : 404 발생)
- 데이터 생성시 사용하는 REST API 명령어 - POST
- Curl -XPOST http://localhost:9200/classes/class/1/ -d '
{"title" : "Algorithm", "professor" : "John"}'
- Classes 는 Index (Database) 를 의미
- Class 는 Type (테이블) 을 의미
- 1 은 ID 를 의미
- -d 옵션을 주고 데이터 직접 타이핑
- 데이터를 파일로 부터 Insert 할때 (대량의 파일 입력시 사용)
- Curl -XPOST http://localhost:9200/classes/class/1/ -d @oneclass.json
- Curl -XGET http://localhost:9200/classes?pretty (정상적으로 데이터 조회)
- 깃허브 자료 확인
## 2-3. 엘라스틱서치 데이터 업데이트 (UPDATE)
'[AWS]' 카테고리의 다른 글
AWS 엔터프라이즈 클라우드 마이그레이션 방법론 (0) | 2020.09.03 |
---|---|
AWS EC2 타임존(Timezone) 변경 (0) | 2020.06.16 |
[실습] AWS CodeCommit 구성 (0) | 2020.06.10 |
40. IT 보안 준수 담당자가 EC2.IAM 및 RDS 리소스에 대한 변경 사항을 추적 할 수있는 안정적이고 내구성있는 로깅 솔루션을 개발하도록 임무를 부여했습니다. / 솔루션은 로그 데이터의 무결성과.. (0) | 2020.06.10 |
39. 모바일 애플리케이션에 비용 효율적인 위치 기반 경고를 추가하는 옵션을 모색하고 있습니다. / 모바일 앱은 미국 전역에 5 백만 명의 사용자가 있습니다. (0) | 2020.06.10 |
댓글