개발/JAVA
jpa join시 join column과 join table 구분
보리ing
2019. 7. 9. 11:17
one to many 관계 테이블 조인을 하는데 40만 * 천만 건이상의 데이터인데다가 정렬에 거리계산 내장함수를 사용하다보니
10여초가 걸린다. 때문에 조금이라도 속도개선을 위해 이것저것을 하다보니
조인에 있어 join table과 join column을 쓸 수 있는데 둘 차이와 어느것이 성능이 좋은지 궁금해
찾아보았다.
결론은 2 테이블에서 조회를 할 때는 join column이 좋은 것 같다.
결정을 내리게 된 스택오버플로우의 답변이다.
@JoinTable stores the id of both the table into a separate table while @JoinColumn stores id of the another table in a new column.
@JoinTable : This is the default type. Use this when you you need a more normalized database. ie. to reduce redundancy.
@JoinColumn : Use this for better performance as it does not need to join extra table.
전체 글은 여기다.
https://stackoverflow.com/questions/30288464/when-should-i-use-joincolumn-or-jointable-with-jpa