한계점과 개선해야 할 점
ElasticSearch를 실제 프로젝트에 적용할 때 마주치는 쓰기 증폭과 딥 페이징 문제, 그리고 페이징 화면을 유지하면서 이를 완화한 방법을 정리합니다.
ElasticSearch를 실제 프로젝트에 적용할 때 마주치는 쓰기 증폭과 딥 페이징 문제, 그리고 페이징 화면을 유지하면서 이를 완화한 방법을 정리합니다.
도메인 주도 개발 시작하기 5장을 정리하며, 스펙을 이용한 동적 검색과 스펙 조합, 정렬·페이징 처리, 동적 인스턴스 생성과 @Subselect를 이용한 조회 전용 모델 구현 방법을 다룹니다.
스프링 데이터 JPA 리포지토리에 Querydsl을 결합하는 사용자 정의 리포지토리 구성과, 내용 쿼리와 count 쿼리를 나눈 페이징 처리, Pageable의 Sort를 OrderSpecifier로 바꾸는 방법을 정리합니다.
메소드 이름으로 쿼리를 생성하는 방법부터 @Query, 파라미터 바인딩, 반환 타입, 페이징과 정렬, 벌크성 수정 쿼리, @EntityGraph까지 스프링 데이터 JPA의 쿼리 메소드 기능을 정리합니다.
사용자 정의 리포지토리 구현, Auditing으로 등록일·수정일·등록자·수정자 관리, 도메인 클래스 컨버터, 스프링 MVC에서 Pageable로 받는 페이징과 정렬 등 스프링 데이터 JPA의 확장 기능을 정리합니다.
JPQL의 기본 문법과 TypedQuery, 파라미터 바인딩, 프로젝션, 페이징, 조인, 서브쿼리, CASE 식 등 자주 쓰는 문법을 정리합니다.
InnoDB의 클러스터·세컨더리·커버링 인덱스 구조를 정리하고, OFFSET 페이지네이션이 느린 이유와 Deferred Join, No Offset, 파티셔닝, 페이지 번호 제한으로 최적화하는 방법을 그림과 함께 비교합니다.