Study/Classes
-
패스트캠퍼스 강의와 이기적 기본서를 기반으로 공부합니다. 1. 개념 데이터베이스 넓은 의미: 일상적인 정보들을 모아놓은 것 자체 특정 기업이나 조직 혹은 개인이 필요에 의해 발생한 데이터를 일정한 형태로 저장해 놓은 것 DBMS : 효율적인 데이터 관리뿐만 아니라 사고로 인한 데이터의 손상을 피하고, 필요시 데이터를 복구하기 위한 소프트웨어 데이터베이스의 종류 계층형/네트워크형/관계형 관계형 데이터베이스 Relational database 1970년대 E.F. Codd 박사의 논문에서 처음 소개 Relation(릴레이션)과 릴레이션의 조인 연산을 통해 합집합, 교집합, 차집합을 만들 수 있음 정규화를 통한 합리적인 테이블 모델링 → 이상 현상 제거, 데이터 중복 피하기, 병행 제어를 통해 사용자들이 동시..
[SQLD] 3-1. SQL 기본 / Relational database 관계형 데이터베이스패스트캠퍼스 강의와 이기적 기본서를 기반으로 공부합니다. 1. 개념 데이터베이스 넓은 의미: 일상적인 정보들을 모아놓은 것 자체 특정 기업이나 조직 혹은 개인이 필요에 의해 발생한 데이터를 일정한 형태로 저장해 놓은 것 DBMS : 효율적인 데이터 관리뿐만 아니라 사고로 인한 데이터의 손상을 피하고, 필요시 데이터를 복구하기 위한 소프트웨어 데이터베이스의 종류 계층형/네트워크형/관계형 관계형 데이터베이스 Relational database 1970년대 E.F. Codd 박사의 논문에서 처음 소개 Relation(릴레이션)과 릴레이션의 조인 연산을 통해 합집합, 교집합, 차집합을 만들 수 있음 정규화를 통한 합리적인 테이블 모델링 → 이상 현상 제거, 데이터 중복 피하기, 병행 제어를 통해 사용자들이 동시..
2023.03.12 -
패스트캠퍼스 강의와 이기적 기본서를 기반으로 공부합니다. 1. 개요 중앙 집중형 데이터베이스: 한 대의 물리적 시스템에 DB 관리 시스템을 설치, 여러 명의 사용자가 사용 분산 데이터베이스: 물리적으로 떨어져 있는 데이터베이스를 네트워크로 연결하여 하나의 가상 시스템으로 사용할 수 있도록 한 DB 분산 데이터베이스의 투명성 분할 투명성 단편화. 하나의 논리적 사용자 입장에서 고객에 대한 데이터가 나누어 저장되어있더라도 한 개의 테이블로 인식 위치 투명성 데이터의 저장 장소 명시 불필요 고객은 데이터가 어느 위치에 있더라도 같은 명령을 이용해 데이터에 접근 가능 위치 정보가 system catalog에 유지 지역 사상 투명성 지역 DBMS와 물적 데이터베이스 사이의 사상(mapping)이 보장됨 각 지역 ..
[SQLD] 2-4. 분산 데이터베이스와 성능패스트캠퍼스 강의와 이기적 기본서를 기반으로 공부합니다. 1. 개요 중앙 집중형 데이터베이스: 한 대의 물리적 시스템에 DB 관리 시스템을 설치, 여러 명의 사용자가 사용 분산 데이터베이스: 물리적으로 떨어져 있는 데이터베이스를 네트워크로 연결하여 하나의 가상 시스템으로 사용할 수 있도록 한 DB 분산 데이터베이스의 투명성 분할 투명성 단편화. 하나의 논리적 사용자 입장에서 고객에 대한 데이터가 나누어 저장되어있더라도 한 개의 테이블로 인식 위치 투명성 데이터의 저장 장소 명시 불필요 고객은 데이터가 어느 위치에 있더라도 같은 명령을 이용해 데이터에 접근 가능 위치 정보가 system catalog에 유지 지역 사상 투명성 지역 DBMS와 물적 데이터베이스 사이의 사상(mapping)이 보장됨 각 지역 ..
2023.03.10 -
패스트캠퍼스 강의와 이기적 기본서를 기반으로 공부합니다. 슈퍼/서브타입 논리 데이터 모델 Worker=직원이라는 엔터티는 슈퍼 타입 worker의 하위분류인 관리/교사/스탭은 서브타입 부모 자식 관계가 나타남 슈퍼-서브타입간 관계는 배타적 관계 or 포괄적 관계 공통의 부분을 슈퍼타입 엔터티로 모델링 공통으로부터 상속받지만 차이가 있는 부분에 대해서는 서브타입 엔터리로 구성 분류는 데이터 양과 트랜잭션 유형에 따라 달라짐 슈퍼타입 single type / all in one type 테이블 한 개 슈퍼 타입과 서브 타입을 한 개의 테이블로 도출 테이블 개수가 제일 적음 - 조인 성능이 좋고 관리가 편리 확장성 나쁨 입출력 성능이 나쁨 서브타입 plus type / super+sub type 각각의 서브타..
[SQLD] 2-3. 데이터베이스 구조와 성능패스트캠퍼스 강의와 이기적 기본서를 기반으로 공부합니다. 슈퍼/서브타입 논리 데이터 모델 Worker=직원이라는 엔터티는 슈퍼 타입 worker의 하위분류인 관리/교사/스탭은 서브타입 부모 자식 관계가 나타남 슈퍼-서브타입간 관계는 배타적 관계 or 포괄적 관계 공통의 부분을 슈퍼타입 엔터티로 모델링 공통으로부터 상속받지만 차이가 있는 부분에 대해서는 서브타입 엔터리로 구성 분류는 데이터 양과 트랜잭션 유형에 따라 달라짐 슈퍼타입 single type / all in one type 테이블 한 개 슈퍼 타입과 서브 타입을 한 개의 테이블로 도출 테이블 개수가 제일 적음 - 조인 성능이 좋고 관리가 편리 확장성 나쁨 입출력 성능이 나쁨 서브타입 plus type / super+sub type 각각의 서브타..
2023.03.07 -
패스트캠퍼스 강의와 이기적 기본서를 기반으로 공부합니다. 1. 대량 데이터 발생에 따른 테이블 분할 대량의 데이터가 존재하는 테이블에 많은 트랜잭션이 발생함 수평/수직분할 설계를 통해 성능 저하 예방 가능 테이블의 데이터는 block 단위로 디스크에 저장됨 - 오라클 기준 block 하나에는 8192 byte (8k) 수직분할: column 단위로 분할하여 I/O 감소 수평분할: row 단위로 분할하여 I/O 감소 대용량 테이블에서 발생할 수 있는 현상 로우 체이닝 Row Chaining: row 길이가 너무 길어서 두 개 이상의 블록에 걸쳐 하나의 row가 저장된 형태 로우 마이그레이션 Row Migration: 데이터 블록에서 수정이 발생하면 수정된 데이터를 해당 데이터 블록에서 저장하지 못하고 다른..
[SQLD] 2-2. 대량 데이터에 따른 성능패스트캠퍼스 강의와 이기적 기본서를 기반으로 공부합니다. 1. 대량 데이터 발생에 따른 테이블 분할 대량의 데이터가 존재하는 테이블에 많은 트랜잭션이 발생함 수평/수직분할 설계를 통해 성능 저하 예방 가능 테이블의 데이터는 block 단위로 디스크에 저장됨 - 오라클 기준 block 하나에는 8192 byte (8k) 수직분할: column 단위로 분할하여 I/O 감소 수평분할: row 단위로 분할하여 I/O 감소 대용량 테이블에서 발생할 수 있는 현상 로우 체이닝 Row Chaining: row 길이가 너무 길어서 두 개 이상의 블록에 걸쳐 하나의 row가 저장된 형태 로우 마이그레이션 Row Migration: 데이터 블록에서 수정이 발생하면 수정된 데이터를 해당 데이터 블록에서 저장하지 못하고 다른..
2023.03.06 -
패스트캠퍼스 강의와 이기적 기본서를 기반으로 공부합니다. 1. 성능 데이터 모델링의 정의 데이터 베이스 성능 향상이 목적 설계 단계의 데이터 모델링부터 정규화, 반정규화, 테이블 통합, 테이블 분할, 조인구조, PK, FK 등 여러 가지 성능과 관련된 사항이 데이터 모델링에 반영될 수 있도록 하는 것 수행 시점 분석/설계 - 구현 - 테스트 - 운영의 단계 중에서, 사전에 할수록 비용이 들지 않음 분석/설계 단계에서 데이터베이스 처리 성능을 향상시킬 수 있는 방법을 고려해야 함 2. 성능 데이터 모델링 고려사항 정규화를 정확하게 수행 정규화된 모델은 데이터를 주요 관심사별로 분산시키는 효과가 있음 데이터베이스 용량 산정 데이터베이스에 발생되는 트랜잭션의 유형 파악 CRUD 메트릭스 혹은 시퀀스 다이어그램..
[SQLD] 2-1. 성능 데이터 모델링 - 정규화, 반정규화패스트캠퍼스 강의와 이기적 기본서를 기반으로 공부합니다. 1. 성능 데이터 모델링의 정의 데이터 베이스 성능 향상이 목적 설계 단계의 데이터 모델링부터 정규화, 반정규화, 테이블 통합, 테이블 분할, 조인구조, PK, FK 등 여러 가지 성능과 관련된 사항이 데이터 모델링에 반영될 수 있도록 하는 것 수행 시점 분석/설계 - 구현 - 테스트 - 운영의 단계 중에서, 사전에 할수록 비용이 들지 않음 분석/설계 단계에서 데이터베이스 처리 성능을 향상시킬 수 있는 방법을 고려해야 함 2. 성능 데이터 모델링 고려사항 정규화를 정확하게 수행 정규화된 모델은 데이터를 주요 관심사별로 분산시키는 효과가 있음 데이터베이스 용량 산정 데이터베이스에 발생되는 트랜잭션의 유형 파악 CRUD 메트릭스 혹은 시퀀스 다이어그램..
2023.03.06 -
패스트캠퍼스 강의와 이기적 기본서를 기반으로 공부합니다. 1. 식별자의 개념 엔터티를 대표할 수 있는 유일성을 만족하는 속성 엔터티 안의 각 인스턴스를 구분할 수 있는 이름 e.g 고객번호, 상품번호, 주민등록번호, 계좌번호 데이터베이스 키의 종류 후보키 condidate key 유일성과 최소성을 만족하는 키 기본키 primary key 엔터티를 대표할 수 있는 키 슈퍼키 super key 유일성은 만족하지만 최소성을 만족하지 않는 키 대체키 alternate key 여러 개의 후보키 중에서 기본키를 선정하고 남은 키 외래키 foreign key 한 개 이상의 다른 테이블의 기본 키 필드를 가리키는 것 참조 무결성(referential integrity)를 확인하기 위해 사용 허용된 데이터 값만 데이터베..
[SQLD] 1-3. 식별자 Identifiers패스트캠퍼스 강의와 이기적 기본서를 기반으로 공부합니다. 1. 식별자의 개념 엔터티를 대표할 수 있는 유일성을 만족하는 속성 엔터티 안의 각 인스턴스를 구분할 수 있는 이름 e.g 고객번호, 상품번호, 주민등록번호, 계좌번호 데이터베이스 키의 종류 후보키 condidate key 유일성과 최소성을 만족하는 키 기본키 primary key 엔터티를 대표할 수 있는 키 슈퍼키 super key 유일성은 만족하지만 최소성을 만족하지 않는 키 대체키 alternate key 여러 개의 후보키 중에서 기본키를 선정하고 남은 키 외래키 foreign key 한 개 이상의 다른 테이블의 기본 키 필드를 가리키는 것 참조 무결성(referential integrity)를 확인하기 위해 사용 허용된 데이터 값만 데이터베..
2023.03.04 -
패스트캠퍼스 강의와 이기적 기본서를 기반으로 공부합니다. 1. Entity 엔터티 업무에서 관리해야 하는 관심사, 데이터 집합 개념, 사건, 장소 등의 명사 인스턴스의 집합 * (엔터티는 원소, 인스턴스는 원자라고 생각하면 이해가 쉬울 듯) 엔터티의 특징 식별자가 있어야 함 2개 이상의 인스턴스가 존재하는 집합 속성을 가져야 함 다른 엔터티와 최소 한개 이상 관계가 있어야 함 업무에서 관리되어야 함 = 업무 프로세스에 의해 이용되어야 함 엔터티의 분류 유형과 무형에 따른 분류 유형 e.g 고객, 사원 업무에서 도출되며 지속적으로 사용하는 엔터티 물리적인 형태가 있고 업무로부터 엔터티를 구분하기 가장 용이 개념 e.g 종목, 상품 개념적 정보로 구분되는 엔터티 물리적인 형태가 없음 사건 e.g 주문, 취소..
[SQLD] 1-2. Entity/Attribute/Relationship패스트캠퍼스 강의와 이기적 기본서를 기반으로 공부합니다. 1. Entity 엔터티 업무에서 관리해야 하는 관심사, 데이터 집합 개념, 사건, 장소 등의 명사 인스턴스의 집합 * (엔터티는 원소, 인스턴스는 원자라고 생각하면 이해가 쉬울 듯) 엔터티의 특징 식별자가 있어야 함 2개 이상의 인스턴스가 존재하는 집합 속성을 가져야 함 다른 엔터티와 최소 한개 이상 관계가 있어야 함 업무에서 관리되어야 함 = 업무 프로세스에 의해 이용되어야 함 엔터티의 분류 유형과 무형에 따른 분류 유형 e.g 고객, 사원 업무에서 도출되며 지속적으로 사용하는 엔터티 물리적인 형태가 있고 업무로부터 엔터티를 구분하기 가장 용이 개념 e.g 종목, 상품 개념적 정보로 구분되는 엔터티 물리적인 형태가 없음 사건 e.g 주문, 취소..
2023.03.03 -
안녕하세요, 럼지입니다. 올해 SQLD 시험을 보고 앞으로도 꾸준히 SQL 공부를 하기 위해 카테고리를 신설해 봤어요. SQLD 포스팅은 패스트캠퍼스 합격의 하이패스: SQLD 자격 과정을 참고로 할 예정입니다. 수업 내용을 온전히 써놓기 보다는 키워드 위주로, 혹은 시험을 위해 같이 알아두면 좋은 내용도 최대한 포함해 포스팅하려고 합니다. 데이터 모델의 이해 모델링의 정의: 복잡한 현실세계를 "추상화, 단순화, 명확화"하여 데이터 모델로 표현하는 것 모델링 특징 추상화: 현실세계를 일정한 형식에 맞추어 표현 단순화: 복잡한 현실세계를 약속된 규약에 의해 제한된 표기법이나 언어로 표현 명확화: 누구나 이해하기 쉽도록 정확하게 현상을 기술 모델링의 세 가지 관점 데이터 관점: 데이터와 관련된 업무 혹은 ..
[SQLD] 1-1. 데이터 모델링의 이해 개요 키워드안녕하세요, 럼지입니다. 올해 SQLD 시험을 보고 앞으로도 꾸준히 SQL 공부를 하기 위해 카테고리를 신설해 봤어요. SQLD 포스팅은 패스트캠퍼스 합격의 하이패스: SQLD 자격 과정을 참고로 할 예정입니다. 수업 내용을 온전히 써놓기 보다는 키워드 위주로, 혹은 시험을 위해 같이 알아두면 좋은 내용도 최대한 포함해 포스팅하려고 합니다. 데이터 모델의 이해 모델링의 정의: 복잡한 현실세계를 "추상화, 단순화, 명확화"하여 데이터 모델로 표현하는 것 모델링 특징 추상화: 현실세계를 일정한 형식에 맞추어 표현 단순화: 복잡한 현실세계를 약속된 규약에 의해 제한된 표기법이나 언어로 표현 명확화: 누구나 이해하기 쉽도록 정확하게 현상을 기술 모델링의 세 가지 관점 데이터 관점: 데이터와 관련된 업무 혹은 ..
2023.02.26