ElasticSearch 의 Index 는 흔히 아는 배열의 인덱스와는 다르게 데이터베이스의 테이블과 유사한 개념
같은 NoSQL MongoDB 의 Collector 와 비슷하다.
ElasticSearch 는 http 프로토콜로 접근제어
PUT, POST, GET, DELETE 메소드를 통해 자원을 제어
기본적으로 리눅스의 Curl 기능 또는 vscode 의 rest client 등의 기능과 같이 URL을 이용해 자원에 접근제어를 할 수도 있지만 Kibana 의 Dev Tool 기능을 사용할 수도 있다.
일단 데이터베이스에서도 자원을 저장하고 사용하기 위해서 테이블을 만들듯이 ElasticSearch 에서도 이에 해당하는 Index 를 생성해줘야함.
Index 생성에는 PUT 메소드를 사용하여 요청을 한다.
일반적으로 생성에는 POST 갱신에는 PUT 메소드를 사용하지만 ElasticSearch 에서는 둘을 모호하게 사용
mydoc 이라는 Index 를 생성
PUT mydoc
위의 텍스트를 Dev Tools 콘솔 좌측에 입력후 해당 줄에 생기는 ▶ 이렇게 생긴 삼각형 버튼을 누르면 해당하는 요청이 전송
Dev Tools 에서는 http://<호스트>:<포트>/ 가 생략되어 있습니다.
즉 위의 요청은 원래대로라면 PUT http://localhost:5601/mydoc임.
Dev tools 에서는 이 사항이 동일시 적용.
첫 데이터를 생성해보기
POST mydoc/_doc
{
"title" : "first Title",
"contents" : "first contents"
}
우측에 바로
위와 같은 형식의 결과 데이터가 보인다면 성공. 우측상단에 201 status 코드와 해당 요청을 수행하는데 걸린 시간 또한 표시가 됨.
POST <인덱스>/_doc/<아이디> 처럼 아이디를 명시하지 않으면 임의로 아이디를 생성하게 된다.
해당하는 아이디가 존재할 경우 생성이 아니라 갱신을하게 되므로 조심해야함.
또한 PUT 메소드를 통해 PUT <인덱스>/_create/<아이디> 처럼 생성만 가능.
좌측 상단의 메뉴 - 하단의 Stack Management 를 클릭합니다.

좌측 중간즈음 Kibana 카테고리 아래 Index Patterns
우리가 보려는 Index 를 명시하기 위해 Create Index pattern

Index pattern name 칸에 mydoc 을 입력하고 Next Step

우리가 만든 데이터에는 시간 데이터가 없기 때문에 아무것도 선택하지 않아도 생성된다.
시간 데이터가 한 개 이상이라면 시간별로 데이터를 추적할 수 있다.
Create Index Pattern 을 클릭합시다.
이제 좌측 메뉴를 클릭 메뉴 상단의 Kibana - Discover 탭을 선택합니다
여기서 우리가 위에서 입력했던 Index 의 데이터들이 나타남
