2011-08-04 2 views
0

데이터베이스 디자인에 대한 빠른 질문.다중 데이터베이스 연관 엔터티

User_DB와 Group_DB의 두 데이터베이스가 있고 User_DB에 User_TB라는 테이블이 있고 Group_DB에 Group_TB라는 테이블이 있습니다. 이것은 many to many 관계이므로 사용자는 많은 그룹에 속할 수 있고 그룹에는 많은 사용자가있을 수 있습니다. 그래서 UserGroup 사이에 연관 엔터티가 있습니다. 이 테이블을 어디에 두어야합니까? User_DB 또는 Group_DB에?

+3

두 개의 서로 다른 데이터베이스가 필요합니까? –

답변

0

두 개의 별도 데이터베이스가있는 유효한 이유가 있다고 가정하면 관계를 '소유하고있는'데이터베이스에 보관하는 경향이 있습니다. 응답은 문제 도메인에서 엔티티 및 관계가 정의되는 방법에 따라 달라질 것입니다 아마도 주관적 일 것입니다.

이 경우 사용자 에 속합니다. 그룹 -이 관계는 그룹 대신 사용자쪽으로 크게 기울어 져 있으므로 User_DB에 매핑을 유지하려고합니다.

0

대부분의 RDBMS는 데이터베이스 간 외래 키를 지원하지 않습니다.

주어진 시간에 하나의 데이터베이스가 유지 보수를 위해 작동하지 않거나 사용할 수 없거나 부하가 높을 수 있음을 명심하십시오. 따라서 cross-db 외래 키를 사용하는 것이 가능할지라도 좋은 생각이 아닐 수도 있습니다.

따라서 두 테이블을 동일한 DB에 보관하는 것이 좋습니다.

관련 문제