Database Normalization
데이터베이스 정규화
데이터베이스 정규화는 관련된 사실을 잘 구성된 테이블로 나눕니다. 이는 반복되는 데이터를 줄이고 한 사실이 바뀔 때 생기는 실수를 줄입니다.
다른 예시
클리닉은 환자의 전화번호, 의사의 이름 및 세 개의 약품 열을 모든 방문 행에 복사하는 것을 중단합니다. 환자, 임상가, 방문 및 `visit_medications`는 관련 테이블이 됩니다. 전화번호 변경은 하나의 사실만 업데이트하며, 확인된 보고(view)를 통해서만 데이터를 결합하여 빠른 읽기를 제공합니다.
주요 부분
- 01사실과 종속성
- 02키 및 관계
- 03이상 없는 업데이트
사용할 때
하나의 신뢰할 수 있는 출처를 구축하기 위해 사실, 그 의존성 및 키를 사용하십시오. 성능 증거가 뒷받침될 때만 나중에 비정규화하십시오.
다음 경우에는 사용하지 마세요
실제 데이터 관계와 일치하지 않는 상태에서 더 높은 정규형을 추구하지 마십시오. 명확한 소유 및 동기화 규칙 없이 조기 비정규화를 하지 마십시오.
코드에서 사용된 이름
functional dependencies + candidate keys + 1NF/2NF/3NF/BCNF as appropriate 출시하기 전에
Check contracts and invariants, authorization, and input limits. Test retries, one-time effects, timeouts, and partial failures. Verify data integrity, compatibility, monitoring, recovery, and rollback.
Outcome:Complete the task with 데이터베이스 정규화 (Database Normalization)。 User context:클리닉은 환자의 전화번호, 의사의 이름 및 세 개의 약품 열을 모든 방문 행에 복사하는 것을 중단합니다. 환자, 임상가, 방문 및 `visit_medications`는 관련 테이블이 됩니다. 전화번호 변경은 하나의 사실만 업데이트하며, 확인된 보고(view)를 통해서만 데이터를 결합하여 빠른 읽기를 제공합니다. Technical concept or control:데이터베이스 정규화 (Database Normalization)。 Why it fits:하나의 신뢰할 수 있는 출처를 구축하기 위해 사실, 그 의존성 및 키를 사용하십시오. 성능 증거가 뒷받침될 때만 나중에 비정규화하십시오. Do not use it when:실제 데이터 관계와 일치하지 않는 상태에서 더 높은 정규형을 추구하지 마십시오. 명확한 소유 및 동기화 규칙 없이 조기 비정규화를 하지 마십시오. Engineering requirements: Define inputs, outputs, contracts, and rules that must always hold. Set authorization and input checks. Define failures, timeouts, retries, one-time effects, data moves, and compatibility limits. Operations: Add useful signals and logs that hide sensitive data. Set capacity limits and write an operator guide. Test recovery and rollback. Acceptance criteria: Contract and failure-path tests pass. Data and authorization rules still hold during retries and partial failures. Check performance limits, monitoring, recovery, and rollback. Evidence and limits (evidence boundary):하나의 공식 표준이 전체 용어를 통제하지 않음. 의미는 팀, 플랫폼 또는 프레임워크마다 달라질 수 있음. Unknowns to confirm: Where the code runs, data stores, traffic shape, consistency needs, and the security boundary. Also confirm the compatibility period, service goals, and rollback limits.
이 요청을 확인하세요
Review how 데이터베이스 정규화 (Database Normalization) is used now. Definition: 데이터베이스 정규화는 관련된 사실을 잘 구성된 테이블로 나눕니다. 이는 반복되는 데이터를 줄이고 한 사실이 바뀔 때 생기는 실수를 줄입니다. Release checks: Check contracts and invariants, authorization, and input limits. Test retries, one-time effects, timeouts, and partial failures. Verify data integrity, compatibility, monitoring, recovery, and rollback. Before changing code, list the evidence, gaps, severity, and the smallest safe fix.