본문 바로가기

DB모델링17

역정규화(반정규화) □ 효율을 위해서 정규화된 결과의 일부를 수정하여 중복허용 ○ 정규화되지 않은 상태에서 중복을 허용하는 것과는 다름 ○ 대부분 JOIN 시 발생되는 엄청난 계산량을 해결하기 위해서 사용 □ 역정규화(반정규화)진행시 고려사항 ○ 무결성 저하 주의 ○ 조회 속도는 향상되나, 입력/수정/삭제는 속도 저하됨 ○ DB저장공간 효율 저하 ○ 유지보수가 어려워지며 테이블 등 확장성이 매우 저하됨 * 정규화가 잘되어 있다면 데이터 입력/수정 효율 ↑ but 과도한 조인유발을 야기할 수 있어 조회시 효율 ↓ * 이를 위해 역정규화를 필요시 판단하여 적용해야함. 2023. 10. 27.
1 정규화 □ 1 정규화란 ○ 모든 속성은 반드시 하나의 값을 가짐 ○ 값이라는 것은 원자성(ATOM)을 가져야함 ○ 즉 더 이상 쪼갤 수 없는 하나의 값만을 가져야함 - 다가속성 : 값이 여러 개 있음 - 복합속성 : 한단어처럼 보이지만 여러 의미로 합쳐진 단어를 의미 □ 1정규화 대상 ○ 다가 속성이 사용된 릴레이션 ○ 복합 속성이 사용된 릴레이션 ○ 유사한 속성이 반복된 릴레이션 ○ 중첩 릴레이션 ○ 동일 속성이 여러 릴레이션에 사용되는 경우 2023. 10. 26.
Anomaly : 데이터 이상현상 마스터 테이블과 PK / FK 지정을 바탕으로한 모델링은 결국 하나의 결과로 데이터를 조회하기위한 과정임 ( DB모델링시 조회를 하면 엑셀구조와 비슷한 결과로 조회가능할 뿐 DB구조와 엑셀구조는 엄연히 다름) 이 과정에서 중복, 즉, Anomaly가 발생되지 않도록 중복 최소화에 주력하여 무결성과 정합성 등을 보장해야함 ○ 위와 같은 테이블 모델링을 진행했을 때 Anomaly 현상이 발생될 우려가 있음 ○ Anomaly - 데이터 이상현상 - 데이터 중복으로 인하여 Anomaly 발생 커짐 - DML(Update, Delete, Insert) 과정에서 해당 문제가 발생될 수 있음 * DML : Data Manipulation Language → Update : 홍길동을 2루수로 수정시 일부 홍길동이 바뀌.. 2023. 10. 25.
도서관 도서 대출관리(part 2) 도서관 도서 대출관리(part 1) 이어서 https://dandora-90.tistory.com/62 도서관 도서 대출관리(part 1) ○ 도서관에는 각 서고/서가에 많은 책들이 있음 ▶(명사/동사추출) 서고, 서가, 책 * 서고 : 책이 위치한 공간 / 서가 : 책꽂이 수납장 * 서고와 서가는 1:M, 서가와 서가공간(행/열)은 1:M ○ 고객들 dandora-90.tistory.com ○ 도서관에는 각 서고/서가에 많은 책들이 있음 ▶(명사/동사추출) 서고, 서가, 책 * 서고 : 책이 위치한 공간 / 서가 : 책꽂이 수납장 * 서고와 서가는 1:M, 서가와 서가공간(행/열)은 1:M ○ 고객들은 인터넷을 통해서 로그인한 후 도서 목록을 조회가능 ▶(명사/동사추출) 고객, 로그인, 도서목록, 조회.. 2023. 10. 25.
중학교 성적관리 프로젝트(part 3) 중학교 성적관리 프로젝트(part 2) 이어서.... □ 상황 ○ 과목, 학년별 담당 선생님이 따로있음 ○ 시엄은 중간/기말고사 두가지임 ○ 학생들은 학년, 반에 배정되며 반별로 학생들에게 고유 번호를 부여함 ○ 각 반에는 담임 선생님이 배정되어 있음. 선생님 중에는 담임을 맡지 않는 선생님도 있음 ○ 한 번의 학생은 대략 40명 정도이고 남녀 공학임 ○ 석차는 남녀 공통 1등부터 순서대로 정함 ▼▼▼▼▼▼1단계 : 키워드 추출▼▼▼▼▼ ○ 과목 선생 ○ 담당 선생 ○ 시험 - 중간고사, 기말고사 ○ 학생, 학년, 반, 배정, 고유번호(반별) ○ 담임, 선생님 ○ 한반의 학생 40명 ○ 남녀 공학 ○ 석차(남녀 공통 1등부터 순서대로) ▼▼▼▼▼2단계 : 명사/동사에 따른 테이블 분류▼▼▼▼▼ ○ 마스터.. 2023. 10. 23.
중학교 성적관리 프로젝트(part 2) 중학교 성적관리 프로젝트(part 1) 이어서.... □ 상황 ○ 과목, 학년별 담당 선생님이 따로있음 ○ 시엄은 중간/기말고사 두가지임 ○ 학생들은 학년, 반에 배정되며 반별로 학생들에게 고유 번호를 부여함 ○ 각 반에는 담임 선생님이 배정되어 있음. 선생님 중에는 담임을 맡지 않는 선생님도 있음 ○ 한 번의 학생은 대략 40명 정도이고 남녀 공학임 ○ 석차는 남녀 공통 1등부터 순서대로 정함 ▼▼▼▼▼▼1단계 : 키워드 추출▼▼▼▼▼ ○ 과목 선생 ○ 담당 선생 ○ 시험 - 중간고사, 기말고사 ○ 학생, 학년, 반, 배정, 고유번호(반별) ○ 담임, 선생님 ○ 한반의 학생 40명 ○ 남녀 공학 ○ 석차(남녀 공통 1등부터 순서대로) ▼▼▼▼▼2단계 : 명사/동사에 따른 테이블 분류▼▼▼▼▼ ○ 마스터.. 2023. 10. 20.
중학교 성적관리 프로젝트(part 1) □ 상황 ○ 과목, 학년별 담당 선생님이 따로있음 ○ 시엄은 중간/기말고사 두가지임 ○ 학생들은 학년, 반에 배정되며 반별로 학생들에게 고유 번호를 부여함 ○ 각 반에는 담임 선생님이 배정되어 있음. 선생님 중에는 담임을 맡지 않는 선생님도 있음 ○ 한 번의 학생은 대략 40명 정도이고 남녀 공학임 ○ 석차는 남녀 공통 1등부터 순서대로 정함 ▼▼▼▼▼▼1단계 : 키워드 추출▼▼▼▼▼ ○ 과목 선생 ○ 담당 선생 ○ 시험 - 중간고사, 기말고사 ○ 학생, 학년, 반, 배정, 고유번호(반별) ○ 담임, 선생님 ○ 한반의 학생 40명 ○ 남녀 공학 ○ 석차(남녀 공통 1등부터 순서대로) ▼▼▼▼▼2단계 : 명사/동사에 따른 테이블 분류▼▼▼▼▼ ○ 마스터 테이블(명사) = 기준 테이블 * 한번 선정되어 모델.. 2023. 10. 19.
도서관 도서 대출관리(part 1) ○ 도서관에는 각 서고/서가에 많은 책들이 있음 ▶(명사/동사추출) 서고, 서가, 책 * 서고 : 책이 위치한 공간 / 서가 : 책꽂이 수납장 * 서고와 서가는 1:M, 서가와 서가공간(행/열)은 1:M ○ 고객들은 인터넷을 통해서 로그인한 후 도서 목록을 조회가능 ▶(명사/동사추출) 고객, 로그인, 도서목록, 조회 ○ 고객들은 원하는 책 대출받을 수 있음 ▶(명사/동사추출) 대출-고객이 직접찾아 대출 ○ 고객은 책이 있는 경우 대출예약을 할 수 있으며 대출을 위해 직접 방문해서 책을 찾아 대출해야함 ▶(명사/동사추출) 대출예약 ▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼ 상황요약 ▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼.. 2023. 10. 17.
M:N 관계 ○ 1:M 관계가 존재할 때 나타나는 모습임 ○ M:N관계는 선천적으로 테이블과 테이블과 관계가 없고 각 테이블은 스스로 존재하고 있지만 이러한 상황에서 어떤 관계를 맺어줌으로써 관계가 형성됨 ex) 학생과 과목 테이블 : 서로 쌍방이며 M:N관계 형성 2023. 10. 16.