1. 인덱스의 개요데이터 레코드를 빠르게 접근하기 위해 쌍으로 구성되는 데이터 구조데이터가 저장된 물리적 구조와 밀접한 관계레코드가 저장된 물리적 구조에 접근하는 방법을 제공인덱스를 통해 파일의 레코드에 대한 액세스를 빠르게 수행할 수 있음레코드의 삽입과 삭제가 수시로 일어나는 경우에는 인덱스의 개수를 최소로 하는 것이 효율적데이터 정의어 DDL을 이용하여 사용자가 생성, 변경, 제거할 수 있음대부분의 데이터베이스에서 테이블을 삭제하면 관련된 인덱스로 함께 삭제인덱스가 없으면 특정한 값을 찾기 위해 모든 데이터 페이지를 확인하는 TABLE SCAN이 발생TABLE SCANFULL TABLE SCAN테이블에 있는 모든 레코드를 순차적으로 읽는 것일반적으로 적용 가능한 인덱스가 없거나 분포도가 넓은 데이터..
1. 트랜잭션 Transaction 정의데이터베이스의 상태를 변환시키는 하나의 논리적 기능을 수행하기 위한 작업의 단위 또는 한꺼번에 모두 수행되어야 할 일련의 연산들을 의미데이터베이스 시스템에서 병행 제어 및 회복 작업 시 처리되는 작업의 논리적 단위로 사용사용자가 시스템에 대한 서비스 요구 시 시스템이 응답하기 위한 상태 변환 과정의 작업 단위로 사용2. 트랜잭션의 상태활동 Active : 트랜잭션이 실행 중인 상태실패 Failed : 트랜잭션 실행에 오류가 발생하여 중단된 상태철회 Aborled : 트랜잭션이 비정상적으로 종료되어 Rollback 연산을 수행한 상태부분 완료 Parlially Commitled : 트랜잭션을 모두 성공적으로 실행한 후 Commit 연산이 실행되기 직전인 상태완료 Co..
1. 시스템 카탈로그 System Catalog 의 의미시스템 그 자체에 관련이 있는 다양한 객체에 관한 정보를 포함하는 시스템 데이터베이스시스템 카탈로그 내의 각 테이블은 사용자를 포함하여 DBMS에서 지원하는 모든 데이터 객체에 대한 정의나 명세에 관한 정보를 유지 관리하는 시스템 테이블데이터 사전 : 카탈로그들이 생성되면 데이터 사전에 저장됨2. 시스템 카탈로그 저장 정보메타 데이터 : 시스템 카탈로그에 저장된 정보메타 데이터의 유형데이터베이스 객체 정보 : 테이블 Table, 인덱스 Index, 뷰 View 등의 구조 및 통계 정보사용자 정보 : 아이디, 패스워드, 접근 권한 등테이블의 무결성 제약 조건 정보 : 기본키, 외래키, NULL 값 허용 여부 등함수, 프로시저, 트리거 등에 대한 정보3..
1. 반정규화의 개요시스템의 성능 향상, 개발 및 운영의 편의성 등을 위해 정규화된 데이터 모델을 통합, 중복, 분리하는 과정의도적으로 정규화 원칙을 위배하는 행위반정규화를 수행하면 시스템의 성능이 향상되고 관리 효율성은 증가하지만 데이터의 일관성 및 정합성이 저하될 수 있음과도한 반정규화는 오히려 성능을 저하시킬 수 있음반정규화를 위해서는 사전에서 데이터의 일관성과 무결성을 우선으로 할지, 데이터베이스의 성능과 단순화를 우선으로 할지를 결정해야 함반정규화 방법의 종류 : 테이블 통합, 테이블 분할, 중복 테이블 추가, 중복 속성 추가 등2. 테이블 통합두 개의 테이블이 조인되는 경우가 많아 하나의 테이블로 합쳐 사용하는 것이 성능 향상에 도움이 될 경우 수행두 개의 테이블에서 발생하는 프로세스가 동일하..
1. 정규화의 개요함수적 종속성 등의 종속성 이론을 이용하여 잘못 설계된 관계형 스키마를 더 작은 속성의 세트로 쪼개어 바람직한 스키마로 만들어가는 과정하나의 종속성이 하나의 릴레이션에 표현될 수 있도록 분해해가는 과정정규형의 종류 : 제1정규형, 제2정규형, 제3정규형, BCNF형, 제4정규형, 제5정규형 - 차수가 높아질수록 만족시켜야 할 제약 조건이 늘어남데이터베이스의 논리적 설계 단계에서 수행논리적 처리 및 품질에 큰 영향을 미침정규화된 데이터 모델은 일관성, 정확성, 단순성, 비중복성, 안정성 등을 보장정규화 수준이 높을수록 유연한 데이터 구축이 가능하고 데이터의 정확성이 높아지는 반면 물리적 접근이 복잡하고 너무 많은 조인으로 인해 조회 성능이 저하됨2. 정규화의 목적데이터 구조의 안정성 및 ..
1. 관계대수의 개요관계형 데이터베이스에서 원하는 정보와 그 정보를 검색하기 위해서 어떻게 유도하는가를 기술하는 절차적인 언어릴레이션을 처리하기 위해 연산자와 연산규칙을 제공하는 언어피연산자와 결과 모두 릴레이션질의에 대한 해를 구하기 위해 수행해야 할 연산의 순서를 명시관계대수의 종류순수 관계 연산자관계 데이터베이스에 적용Select, Project, Join, Division일반 집합 연산자수학적 집합 이론에서 사용합집합 UNION, 교집합 INTERSECTION, 차집합 DIFFERENCE, 교차곱 CARTESIAN PRODUCT교차곱두 릴레이션이 존재하는 모든 튜플들을 대응시켜 새로운 릴레이션을 만드는 연산연산의 결과 차수 = 두 릴레이션의 차수를 합한 것튜플 = 두 릴레이션의 튜플 수를 곱한 것..