inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

김영한의 실전 데이터베이스 - 기본편

데이터베이스 로직의 함정과 현대적 대안

애플리케이션 코드 관리

86

티티티

작성한 질문수 21

0

안녕하세요 스승님!

질문드립니다!

 

  1. 데이터 정합성을 위한 확인 절차는 front, back, DB에서 3중으로 처리하는게 좋은가요? 아니면 애플리케이션 레이어에서 처리하는게 좋을까요?

    (3중으로 하면 처리가 빠르고 정확할 수 있다는 장점이 있지만 처리 조건이 변경되는 경우 3군데에서 모두 변경이 있어야한다는 점이 꽤 번거로울 것 같습니다...)

  2. 이후 설계에서 다뤄주시겠지만, 1:1 관계의 테이블로 연결된 두 테이블에서 FK에 UNIQUE 제약을 거는게 일반적인지도 궁금합니다.

매번 덕분에 성장하고있슴다!

감사합니다!

sql mysql dbms/rdbms SQLD

답변 2

0

dev.rudevico

이미 이후 강의를 확인하셨을 수도 있겠지만, 섹션 10. 데이터 무결성 - 73.CHECK 제약 조건에서 확인이 가능합니다.

0

인프런 AI 인턴

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

티티티님께서 질문하신 데이터 정합성 처리와 1:1 관계에서의 FK 유니크 제약 사항에 대해 간단히 설명 드리겠습니다:

  1. 데이터 정합성 처리:
    데이터 정합성을 확보하는 방법은 여러 계층을 통해 이루어질 수 있습니다.
    • 프론트엔드(UI 레벨): 사용자 입력에 대한 기본적인 검증은 빠른 피드백을 줄 수 있어 사용자 경험을 향상시킵니다.
    • 백엔드(애플리케이션 레벨): 보안 및 비즈니스 로직 상의 검증을 통해 보다 깊이 있는 데이터 검증이 가능합니다.
    • 데이터베이스(DB 레벨): 최종적인 안전장치로, 데이터 무결성을 보장하기 위해 필요한 경우 제약조건(예: 유니크, 외래키) 등을 사용합니다.

모든 레벨에서 검증을 하게 되면 중복된 검증으로 인한 효율성 저하가 있을 수 있지만, 그만큼 높은 신뢰성과 보안성을 제공합니다. 그러나, 유지보수 차원에서 세 영역의 검증을 병행하는 것은 관리가 복잡해질 수 있으므로, 실제 요구사항과 환경에 따라 어느 정도 타협할 것이 필요합니다.

  1. 1:1 관계의 FK에 UNIQUE 제약 사용:
    • 1:1 관계의 데이터베이스 설계에서는 일반적으로 외래키에 UNIQUE 제약 조건을 걸어두는 것이 좋습니다. 이는 양쪽 엔티티 간의 고유하고 엄격한 연결을 보장하기 위해 필요합니다. 이를 통해 쿼리의 효율성과 참조 무결성을 높일 수 있습니다.

다음 링크에서 유사한 논의를 찾아보실 수 있습니다:
- 1:1 연관관계 설계 시 고려 사항: 데이터베이스 연관 관계 설정에 관한 논의입니다.

성장에 도움이 되셨길 바랍니다! 데이터베이스 설계에 대한 다양한 접근과 사례를 통해 더 깊이 이해하시게 될 것입니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천드립니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

간단한 오타 제보입니다.

0

19

1

ON을 명시하지 않았을 경우 질문드립니다.

0

63

1

강의 2:53 union을썼는데도 션이 중복

0

61

1

where 대신 having을 써도 되나요?

0

85

1

주문 내역에 대한 고객 데이터

0

67

2

in 수행

0

46

1

외부조인1 강의 관련 질문

0

77

3

커버링 인덱스와 랜덤i/o 질문

0

73

1

오타인거죠?

0

82

1

섹션 3 퀴즈 3번 문제

0

79

2

GROUP BY 기준 컬럼

0

89

1

질문이 있습니다

0

58

1

오타

0

84

2

실제 상용 서비스 질문

0

101

1

파티셔닝 관련 질문입니다.

0

62

1

join 문제 풀이2 문제1(self join) 질문

0

68

1

9. 인덱스2.pdf 중에서

0

81

1

문제 2번

0

69

2

문제와 풀이1 - 3번 문제

-1

73

2

잘 사용하진 않지만 풀 외부 조인을 사용하신 사례가 궁금합니다!

0

96

1

[58. 인덱스와 정렬]을 듣다가 질문입니다.

0

96

2

두개 이상의 테이블을 조인할때 인덱스 질문이 있습니다.

0

62

1

파일을 만드는 단위가 궁금해요

0

75

1

MySQL은 실무에서 사용하는 케이스도 있을까요?

0

85

1