본문 바로가기

공부방/Elasticsearch

elasticsearch - CRUD

가장 기본이 되는 데이터 저장을 알아보겠습니다.

기존 RDB와는 용어도 약간씩 다르고, 삽입하는 방법도 약간 다르지만 쉽게 따라할 수 있도록 되어있습니다.

 

 

 

http:// IP : port / Index / Type / id값

ex) http://localhost:9200/test/dog/1

 

classes index 조회


classes index가 존재하는지 아래의 커맨드를 이용하여 확인해 보자.

curl -XGET http://localhost:9200/classes?pretty

 

status 404: index를 만들어 준 적이 없기 때문에 찾을 수 없다고 나타남.

 

classes index 생성


이번에는 classes index를 생성해보고 잘 만들어졌는지 확인까지 해보도록 하자.

 

curl -XPUT http://localhost:9200/classes

 

아래와 같이 잘 만들어졌다고 로그가 나타난다. 

 

그럼 GET을 이용하여 정말 잘 만들어졌는지 확인까지 해보자.

 

curl -XGET http://localhost:9200/classes?pretty

 

아까와는 다르다.

생성 날짜와 uuid가 생긴것으로 보아 잘 만들어진 것을 알 수 있다.

 

 

classes index 삭제


classes index를 삭제해 보고, 잘 삭제되었는지 까지 확인해보자.

 

삭제 커맨드는 아래와 같다.

curl -XDELETE http://localhost:9200/classes?pretty

status가 다시 404로 바뀌면서 삭제가 된 것을 확인할 수 있다.

 

classes index에 내용 삽입


index가 유무에 상관없이 본문 내용을 추가할 수 있다.

index가 없으면 index를 만들고 난 뒤 내용을 추가하고,

index가 존재하면 그대로 내용만 추가해주는 형식이다.

 

현재는 index가 없는 상태이다. 

index를 생성하면서 바로 본문 내용까지 삽입해보자.

 

curl -XPOST http://localhost:9200/classes/class/1/ 
-d '{"title" : "Algorith", "professor" : "John"}' 
-H "Content-Type: application/json"

 

 

 

 

curl -XGET http://localhost:9200/classes/class/1/?pretty

제대로 삽입된 것을 확인할 수 있따.

 

파일을 이용하여 내용을 삽입할 경우


아래의 내용을 담고 있는 "file1"이 존재한다고 할 때

 

아래의 코드를 이용하여 내용을 삽입할 수 있다.

curl -H "Content-Type: application/json" -XPOST "http://localhost:9200/classes/class/1/?pretty" -d "@f
ile1"

 

내용이 변경된 것을 확인할 수 있다.

'공부방 > Elasticsearch' 카테고리의 다른 글

elasticsearch - search  (0) 2022.07.06
elasticsearch - 매핑 (mapping)  (0) 2022.07.06
elasticsearch - bulk  (0) 2022.07.06
elasticsearch - update  (0) 2022.07.06
elastic search  (0) 2022.07.06