테이블(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)는 대용량의 데이터를 저장할 수 있는 데이터 타입

이상포스터를 마치겠습니다.

+ Recent posts