inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

ERD 매핑 관계 질문(ManyToMany 매핑 사용여부)

70

KMC

작성한 질문수 43

0

 

{30F2D2E7-6E7B-40D2-B988-890C8946E81C}.png

 

안녕하세요 숨고와 같이 게시판이 여러개 있을 경우 예를들어 특정게시판에서 게시글에 대한 필터링 밑에 사진 2개처럼 분야와 위치에 관해 필터링해서 게시글을 볼 수 있는 경우 이렇게 하는 것 말고는 답이 없나요?

{0A4D8E05-AD18-46BB-9B36-E6246BC1AF15}.png{B6BDDEC3-62C6-4B20-91BE-4AFC4A8D5D1B}.png

 

jpa ERD

답변 1

0

인프런 AI 인턴

안녕하세요, 인프런 AI 인턴입니다.

전한준님, 데이터베이스에서 게시판을 여러 개 운영하고 각 게시글에 대해 분야와 위치에 따라 필터링을 구현하고자 하시는군요. 현재 주어진 ERD(개체-관계 다이어그램)를 기반으로 각각의 게시글이 특정 ‘분야’와 ‘위치’에 연결되어 필터링이 가능하도록 설계하는 방법에 대해 말씀드리겠습니다.

  1. ManyToMany 매핑: 게시글이 여러 분야에 속하고, 또한 여러 위치에 속할 수 있는 구조라면 ManyToMany 매핑이 적합할 수 있습니다. JPA 등을 활용하여 ‘Post-Category (분야)‘와 ‘Post-Location (위치)’ 사이의 다대다 관계를 매핑하여 구현할 수 있습니다. 이 경우, 중간 테이블을 생성해 각 게시글이 어떤 분야, 어떤 위치와 연결되는지를 기록하는 방식으로 해결할 수 있습니다.

  2. 다른 방법:

    • Single 연결: 만약 하나의 게시글이 단 하나의 분야와 위치에만 속한다면 단순히 각각의 ‘Post’ 테이블에 ‘분야 ID’와 ‘위치 ID’를 외래 키로 추가하여 관리할 수 있습니다.
    • 검색 필터링: 데이터의 크기 및 성격에 따라 다르지만, 검색 필터링 용도로 검색 인덱스를 활용하여 효율성을 높일 수 있습니다.

두 방법 모두, 데이터베이스의 설계와 쿼리 최적화가 중요합니다. 또한, 사용자가 많거나 데이터가 매우 방대한 경우에는 검색 성능을 고려해 세심한 인덱싱과 캐시 전략이 필요할 수 있습니다.

더 자세한 구현 방법이나 최적화에 대한 부분은 프로젝트의 규모와 요구 사항에 따라 다를 수 있습니다. 추가적인 사항이 필요하시면 언제든지 문의하세요.

이미지 링크:
- 첫 번째 이미지
- 두 번째 이미지
- 세 번째 이미지

안녕하세요 치킨 디도스 이벤트 보고 흉내내보려 들어왔습니다..

0

25

2

join에대해 질문드립니다.

0

22

1

코드 질문

0

26

1

To-Do App

0

27

1

twitterdb 연결이 안돼요

1

30

2

@JsonIgnore 이후 Internal Server Error가 발생하지 않습니다.

0

33

2

changeTeam 메서드 질문

0

35

1

테스트 관련 질문!

0

57

2

안녕하세요 질문있습니다.

0

46

2

application.properties가 적용되지 않아요

1

71

3

새 프로젝트 속 제너레이터에 SpringBoot가 없습니다.

0

54

2

설정 정보 없이 임베디드 데이터베이스 생성

0

41

1

OrderServiceTest 상문주문 테스트 시 update 쿼리 문의

0

42

1

N+1 관련해서 질문있습니다.

0

97

3

벌크연산에서 member.getAge 호출 시 영속성 컨텍스트에서 데이터를 가져오는건가요?

0

56

2

inheritance startegy 선택시 고려사항

0

41

1

Entity 동등성 비교

0

46

1

패키지 구분에 대해 궁금한게 있습니다

0

51

2

스프링부트 서버 에러나요

0

37

1

RepositoryTest의 패키지 위치가 domain인 이유

0

60

2

도메인 모델에서 관계와 규칙을 구분하는 방법

0

87

2

16 강의 메세지 retryCount의 의도

0

46

2

JPA Repository 질문이 있습니다!

1

58

2

페이지네이션 처리를 쿼리에서 하는 방식 질문

1

50

1