테이블(Table)이란?
테이블은 데이터베이스의 가장 기본적인 객체로 로우(Row, 행)와 컬럼(Column, 열)으로 구성되어 있습니다.
- 테이블은 논리 설계 단계의 개체(Entity)에 대응하는 객체이다.
클러스터드 인덱스 테이블(Clustered Index Table)이란?
기본키(Primary Key)나 인덱스키의 순서에 따라 데이터가 저장되는 테이블
- 인덱스를 사용하는 테이블에 비해 접근 경로가 단축된다.
학번 | 이름 | 학과 | 학년 |
20132812 | 김철수 | 경영학과 | 3 |
20142222 | 김민수 | 컴퓨터공학과 | 4 |
20152838 | 김춘삼 | 회계학과 | 2 |
20182999 | 남지원 | 물리치료학과 | 1 |
클러스터드 인덱스 테이블은 데이터가 기본키인 '사원번호'필드를 기준으로 정렬되어 저장된다.
파티셔닝 테이블(Partitioning Table)이란?
- 대용량의 테이블을 작은 논리적 단위인 파티션(Partition)으로 나눈 테이블
- 대용량의 데이터를 효과적으로 관리할 수 있지만 파티션 키를 잘못 구성하면 성능 저하 드의 역효과를 초래할 수 있다.
- 파티셔닝 방식에 따라 범위 분할(Range Partitioning), 해시 분할(Hash Partitioning), 조합 분할(Composite Partitioning) 등으로 나뉜다.
- 범위 분할(Range Partitioning) : 지정한 열의 값을 기준으로 분할
- 해시 분할(Hash Partitioning) : 해시 함수를 적용한 결과 값에 따라 데이터를 분할
- 조합 분할(Compostie Partitioning) : 범위 분할로 분할 한 다음 해시 함수를 적용하여 다시 분할하는 방식
<파트1> 테이블
학번 | 이름 | 입학날짜 | 학과 |
20203943 | 김오리 | 2020-03-03 | 경영학과 |
20143495 | 김화석 | 2014-03-03 | 경영학과 |
20103333 | 김암모 | 2010-03-02 | 통계학과 |
<파트2> 테이블
학번 | 이름 | 입학날짜 | 학과 |
20213943 | 김구라 | 2021-03-03 | 경영학과 |
20203495 | 김지영 | 2020-03-03 | 경영학과 |
'입사일자' 필드르 기준으로 연도별 파티셔닝 되었다.
외부 테이블(Txternal Table)이란?
- 데이터베이스에서 일반 테이블처럼 이용할 수 있는 외부 파일로, 데이터베이스 내에 객체로 존재한다.
- 데이터웨어하우스(Data Warehouse)에서 ETL(Extraction, Tarnsformation, Loading) 등의 작업에 유용하게 사용된다.
- 데이터웨어하우스(Data Ware-house) : 조직이나 기업체의 중심이 되는 주요 업무 시스템에서 추출되어 새로이 생성된 데이터베이스, 의사결정지원시스템을 지원하는 주체적, 통합적, 시간적 데이터의 집합체를 말한다.
- ETL(Extraction, Transformation, Loading) : 데이터웨어하우스를 사용 하여 추출(Extract), 변환(Transform), 적재(Load)하는 일련의 모든 과정
임시 테이블(Temporary Table)이란?
트랜잭션 이나 세션별로 데이터를 저장하고 처리할 수 있는 테이블
- 임시 테이블에 저장된 데이터는 트랜잭션이 종료되면 삭제된다.
- 임시 테이블은 절차적인 처리를 위해 임시로 사용하는 테이블
- 트랜잭션(Transaction) - 데이터베이스의 상태를 변환시키는 하나의 논리적 기능을 수행하기 위한 작업의 단위 or 한꺼번에 모두 수행되어야 할 일련의 연산들
컬럼(Column)이란?
테이블의 열을 구성하는 요소로 데이터 타입(Data Type), 길이(Length) 등으로 정의
- 데이터의 일관성 유지를 위해 사용되는 가장 기본적인 것, 도메인을 정의한 경우 도메인에 따라 데이터의 타입과 길이가 정의된다.
- 두 컬럼의 데이터 타입이나 길이가 다르면 DBMS 내부적으로 데이터 타입을 변한한 후 비교 연산을 수행한다.
- 참조 관계인 컬럼들은 데이터 타입과 길이가 일치해야 된다.
- 데이터 타입과 길이 지정 시 고려사항
1. 가변 길이 데이터 타입 : 에상되는 최대 길이로 정의
2. 고정 길이 데이터 타입 : 최소 길이로 지정
3. 소수점 이하 자릿수 : 소수점 이하 자릿수는 반올림되어 저장
- 데이터 타입에 따른 컬럼의 물리적인 순서
1. 고정 길이 컬럼이고 NOT Null인 컬럼 : 앞쪽
2. 가변 길이 컬럼 : 뒤쪽
3. Null 값이 많을 것으로 예상되는 컬럼 : 뒤쪽
테이블스페이스(Tablespace)이란?
테이블이 저장되는 논리적인 영역, 하나의 테이블 스페이스에 하나 or 그 이상의 테이브을 저장할 수 있다.
- 테이블을 저장하면 논리적으로는 테이블스페이스에 저장되고, 물리적으로는 해당 테이블스페이스와 연관된 데이터 파일(Data File)에 저장된다.
- 테이블베이스를 테이블, 테이블스페이스, 데이터 파일로 나눠 관리하면 논리적 구성이 물리적 구성에 종속되지 않아 투명성이 보장된다.
- 데이터베이스에 저장되는 내용에 따라 테이블, 인덱스, 임시(Temporay)등의 용도로 구분하여 설계한다.
- 테이블스페이스 설계 시 고려사항
1. 업무별로 구분하여 지정
2. 대용량 테이블은 하나의 테이블스페이스에 독립적으로 저장한다.
3. 테이블과 인덱스는 분리하여 저장한다.
4. LOB(Large Object) 타입의 데이터는 독립적인 공간으로 지정
- 투명성 : 어떠한 사실이 존재함에도 마치 투명하여 보이지 않는 것
- LOB (Large Object)는 대용량의 데이터를 저장할 수 있는 데이터 타입
이상포스터를 마치겠습니다.
'정보처리기사 및 정보보안기사' 카테고리의 다른 글
정보처리기사(012) - UI 설계 도구 (0) | 2020.03.29 |
---|---|
정보처리기사(009) - UML(Unified Modeling Language) (0) | 2020.03.28 |
정보처리기사 003 - XP(eXtrem Programming)기법 (그림작성) (0) | 2020.03.28 |
정보처리기사 002 - 스크럼(Scrum)기법 (0) | 2020.03.26 |
정보처리기사 - 소프트웨어 생명 주기(001) (0) | 2020.03.26 |