
RDBMS의 정규화에 대해 설명해주세요
RDBMS(관계형 데이터베이스 관리 시스템)의 정규화는 데이터베이스 설계에서 중복을 제거하고
데이터 중복을 최소화하여 데이터베이스를 보다 효율적으로 설계하는 과정입니다.
이를 통해 데이터의 일관성, 유지보수성, 확장성 등을 개선할 수 있습니다.
정규화는 1,2,3,BXNF 단계로 이루어 집니다.
이외에 4,5 단계 등 있으나 일반적으로 3단계 또는 BCNF까지 정규화를 수행하는 경우가 많습니다.
정규화 과정을 통해 중복된 데이터를 제거하고 이상현상을 방지하며 데이터베이스의 구조를 최적화 할수 있습니다.
하지만 너무 과도한 정규화는 성능 저하를 일으킬 수 있어 적절한 수준에서의 정규화가 필요합니다.
Primary Key, Foreign Key에 대해 설명해주세요.
Primary Key는 관계형 데이터베이스 테이블에서
각 레코드를 고유하게 식별하기 위해 사용되는 필드 또는 필드의 집합입니다.
Foreign Key는 관계형 데이터베이스에서 한 테이블의 필드로 다른 테이블의 Primary Key 값을 가리키는데 사용되는 필드입니다.
이를 통해 한 테이블의 데이터가 다른 테이블과 관련되어 있는 관계를 맺을 수 있습니다.
예를 들어, 주문 테이블에서 각 주문이 어떤 사용자에 의해 생성되었는지를 나타내기 위해
사용자 테이블의 Primary Key를 참조하는 Foreign Key를 사용할 수 있습니다.