엘라스틱 서치 인덱스 동적 생성, 해쉬, 데이터 저장?
2019. 3. 19. 19:51ㆍ[개발] 기록/오늘의 고민
해결
createIndex(string) 이후 putMapping에 XContentBuilder로 만든 mapping 데이터를 넘기는 식으로 구현.
XContentBuilder를 자동화하기 위해 class파일의 필드 이름과 필드에 적용된 Annotation을 추출하는 클래스를 만듬
문제상황
1. 테스트 코드는 잘 동작하는데 프로그램은 동작하지않는다.
2. 엘라스틱 서치에 Hash 데이터를 넣어야한다. 어떻게 해야하는가?
=> nested나 object를 사용한다는데
=> 해쉬 데이터는 mapping 파일에 어떤식으로 써야하는가?
=> Entity에 적용된 Annotation을 바탕으로 XContentBuilder는 해쉬 필드에 어떻게 접근할 것인가?
TODO 문제상황
스프링부트가 지원하는 엘라스틱 서치 데이터 저장 방법이 모두 엔티티에 @Document를 적어서 저장하는 방식이다
같은 포맷의 데이터를 다른 이름의 인덱스에 저장해야한다
그러기위해선 고정적인 인덱스이름을 사용하는 @Document를 사용해선 안된다.
=> 엘라스틱 서치 서버에 post 하는 api를 직접 호출하는 방식으로 해도 괜찮을까?
'[개발] 기록 > 오늘의 고민' 카테고리의 다른 글
ControllerAdvice의 Response status 가 변경되지 않는 문제 (0) | 2019.06.20 |
---|---|
엘라스틱 서치 Rest Client (0) | 2019.03.20 |
엘라스틱 서치 인덱스 동적 생성? (0) | 2019.03.18 |