Skip to content

[ASSIGNMENT] 7차 과제 구현#17

Open
haerxeong wants to merge 3 commits into
mainfrom
feat/#16/user-email-index
Open

[ASSIGNMENT] 7차 과제 구현#17
haerxeong wants to merge 3 commits into
mainfrom
feat/#16/user-email-index

Conversation

@haerxeong

@haerxeong haerxeong commented May 29, 2026

Copy link
Copy Markdown
Collaborator

🔥Pull requests

closed #16

👷 과제 구현

필수과제

  • 1차~6차 세미나에서 배운 내용 중 아직 글로 정리해보지 않은 주제를 골라서 아티클을 작성해주세요. 주제는 자유롭게 선택하되, 단순 요약이 아니라 내가 이해한 것을 내 언어로 설명하는 방식으로 써주세요.

선택과제

  • 아티클 주제와 관련된 기능을 에브리타임 클론 프로젝트에 직접 구현해주세요. 구현한 내용과 과정에서 배운 점을 PR 설명에 함께 작성해주세요.

구현한 내용에 대해서 설명해주세요

  • 로그인과 회원가입에서 자주 조회되는 User.email 컬럼에 인덱스를 적용했습니다.
  • email은 사용자를 식별하는 값으로 사용되기 때문에 @Column(unique = true)를 함께 적용해 중복 이메일 가입을 방지하도록 했습니다.
  • 기존 User 엔티티의 필드들에 @Column을 추가했습니다.

구현하며 고민했던 내용을 적어주세요 (사소한 것도 좋아요)

어떤 컬럼에 인덱스를 적용할지 고민했습니다. Where절에 자주 등장하는 컬럼, JOIN 조건이 사용되는 컬럼, ORDER BY, GROUP BY에 사용되는 컬럼 등등에 인덱스를 걸면 좋으며 데이터가 적은 테이블에는 인덱스 효과가 낮다는 점을 참고하였습니다.

  1. users.email: 로그인, 회원가입 중복 확인에서 findByEmail()로 자주 조회되는 컬럼이므로 인덱스 적용
  2. likes(user_id, post_id): 좋아요 시 특정 사용자가 특정 게시글에 이미 좋아요를 눌렀는지 확인하기 위해 인덱스 적용
  3. posts.board_type: 게시글 목록 조회에서 게시판 타입 별 필터링에 사용하기 위해 인덱스 적용


🚨 참고 사항

@haerxeong haerxeong self-assigned this May 29, 2026
@haerxeong haerxeong linked an issue May 29, 2026 that may be closed by this pull request
1 task
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[ASSIGNMENT] 7차 과제 구현

1 participant