회사에서 일을 하다가 elastic search의 document를 지우려다가 index를 날려버렸다.
다행히 개발 서버였고 다른 서비스에 영향을 주지 않는 것는 거 같아 다행이었지만, 다음부터는 엘라스틱에 쿼리를 넣기 전에 테스트를 해봐야겠다. 아래는 내가 로컬에서 테스트하는 과정이다.
1. https://www.elastic.co/kr/downloads/elasticsearch 에서 elasticsearch-7.17.0를 설치한다.
2. https://www.oracle.com/kr/java/technologies/javase/jdk11-archive-downloads.html 에서 jdk-11.0.15_windows-x64_bin.exe를 설치했다.
3. '환경 변수'에서 JAVA_HOME, ES_JAVA_HOME을 방금 설치한 JDK폴더를 가리키도록 설정한다.
4. 1번에서 설치한 elasticsearch-7.17.0폴더에 /bin/elasticsearch.bat을 실행한다.
Java HotSpot(TM) 64-Bit Server VM warning: Option UseConcMarkSweepGC was deprecated in version 9.0 and will likely be removed in a future release. 라는 경고가 나온다. 그리고 마지막에 [2022-06-02T16:13:14,455][INFO ][o.e.h.AbstractHttpServerTransport] [DESKTOP-025KCVJ] publish_address {127.0.0.1:9200}, bound_addresses {127.0.0.1:9200}, {[::1]:9200}
[2022-06-02T16:13:15,078][INFO ][o.e.i.g.DatabaseNodeService] [DESKTOP-025KCVJ] successfully reloaded changed geoip database file [C:\Users\SECURI~1\AppData\Local\Temp\elasticsearch\geoip-databases\0xMmmewpSSGsVr49ud50Pg\GeoLite2-City.mmdb] 이렇게 나온다. 앞에 경고는 해결하지 않았지만 일단 이어가보도록 한다.
5. Index 생성
6. 모든 Index 조회
7. 특정 Index 확인
8. Document 생성
Document를 생성하려면 Index를 열어줘야한다.
Index를 닫아주는 방법은 아래와 같다.
이제 Document를 생성한다.
위의 방식은 put을 사용하고 아래는 post를 사용했다. put과 post의 차이는 post의 경우는 elasticsearch에서 _id를 자동으로 생성해준다.
9. Document 목록 조회
10. ID를 입력하여 특정 Document 조회
11. Document의 특정 field만 수정
참고자료:
'TIL(Today I Learned)' 카테고리의 다른 글
[TIL] (0) | 2022.06.24 |
---|---|
[TIL]immer (0) | 2022.06.22 |
외부에서 local서버로 접속하기(with ngrok) (0) | 2022.06.21 |
VScode에서 클러스터 포트 포워딩하기 (0) | 2022.06.08 |
window.location.href 헤더요청 (0) | 2022.04.04 |