본문 바로가기
🍃SpringFrameworks/SpringDataElasticsearch

[SpringDataElasticsearch] Spring Data Elasticsearch란?

by inbeom 2023. 9. 25.
728x90
Elasticsearch용 Spring Data는 저장소별 기능을 유지하면서 새로운 데이터 저장소에 익숙하고 일관된 Spring 기반 프로그래밍 모델을 제공하는 것을 목표로 하는 Spring Data 프로젝트의 일부이다.

 

 

Spring Data 프로젝트 중 가장 많이 사용되고 있는 JPA (Spring Data JPA) 와 비슷하게 사용할 수 있기 때문에 보다 익숙하고 쉽게 Elasicsearch에 접근할 수 있게 도와준다.

 

Spring Data Elasticsearch 프로젝트는 Elasticsearch 검색 엔진과의 통합을 제공하며, 주요 기능 영역은 Elasticsearch 문서와 상호 작용하고 Repository Style Data Access 계층을 쉽게 작성하기 위한 POJO 중심 모델이다.

POJO (Plain Old Java Object) : 특정 프레임워크나 라이브러리에 종속되지 않은 간단한 자바 객체를 뜻함.

 

 

Clients

Elasticsearch에서 지원하는 Client 구현을 통한 사용방법.

 

ElasticsearchTemplate & ReactiveElasticsearchTemplate

Index 생성/삭제, Entity 저장/검색, Query 사용 등 조작방법.

 

Object Mapping

Java 객체(DomainEntity)를 Elasticsearch에 저장된 JSON  타입의 데이터에 매핑하고,  또 그 반대로 매핑하는 방법.

 

Entity Callbacks

특정 메서드가 호출되기 전후에 Entity 수정 사항을 적용하는 방법. 

 

Data Repositories

Spring Data Repository의 기본과 Elasticsearch 세부 사항 설명.

 

 

 

Elasticsearch에 대해 궁금하다면 해당 글 참고.

https://inbeom.tistory.com/entry/ElasticSearch-ElasticSearch-%EA%B8%B0%EB%B3%B8-%EA%B0%9C%EB%85%90

 

[ElasticSearch] ElasticSearch 기본 개념.

Elasticsearch는 실시간 검색 및 분석을 위한 오픈 소스 분산 검색 엔진으로, 대용량 데이터를 신속하게 색인하고 검색할 수 있는 강력한 도구이다. 데이터베이스가 아닌 분산 검색/분석 엔진. Elastic

inbeom.tistory.com

 

 

 

 

reference.

https://spring.io/projects/spring-data-elasticsearch

https://www.baeldung.com/spring-data-elasticsearch-tutorial

728x90