본문 바로가기

데이터베이스4

[DB] 트랜잭션(Transaction) -목차- 1. 트랜잭션(Transaction)이란? 2. 트랜잭션의 상태 3. 트랜잭션을 사용할 때 주의할 점 1. 트랜잭션(Transaction)이란? 트랜잭션은 작업의 완전성을 보장해주는 것이다. 즉, 논리적인 작업 셋을 모두 완벽하게 처리하거나 또는 처리하지 못할 경우에는 원 상태로 복구해서 작업의 일부만 적용되는 현상이 발생하지 않게 만들어주는 기능이다. 사용자의 입장에서는 작업의 논리적 단위로 이해를 할 수 있고 시스템의 입장에서는 데이터들을 접근 또는 변경하는 프로그램의 단위가 된다. 트랜잭션과 Lock 잠금(Lock)과 트랜잭션은 서로 비슷한 개념 같지만 사실 잠금은 동시성을 제어하기 위한 기능이고 트랜잭션은 데이터의 정합성을 보장하기 위한 기능이다. 잠금은 여러 커넥션에서 동시에 동일한 자.. 2022. 2. 6.
[DB] 정규화(Normalization) -목차- 1. 정규화(Normalization)란? 2. 제1 정규형 3. 제2 정규형 4. 제3 정규형 5. BCNF(Boyce-Codd) 정규형 6. 정규화에는 어떠한 장점이 있는가? 6.1 정규화의 단점은 없는가? 6.2 반정규화 1. 정규화(Normalization)란? 한 릴레이션에 여러 엔티티의 애트리뷰트들을 혼합하게 되면 정보가 중복 저장되며, 저장 공간을 낭비하게 된다. 또 중복된 정보로 인해 갱신 이상이 발생하게 된다. 동일한 정보를 한 릴레이션에는 변경하고, 나머지 릴레이션에서는 변경하지 않은 경우 어느 것이 정확한지 알 수 없게 되는 것이다. 이러한 문제를 해결하기 위해 정규화 과정을 거치는 것이다. 정규화의 목적 데이터의 중복을 없애면서 불필요한 데이터를 최소화시킨다. 무결성을 지키.. 2022. 2. 6.
[DB] 인덱스(Index) -목차- 1. 인덱스(Index)란? 1.1 배경 2. 인덱스의 관리 2.1 인덱스의 장단점 2.2 인덱스 사용시 고려사항 3. 인덱스의 자료구조 3.1 해시테이블 3.2 B Tree 3.3 B+ Tree 마치며 1. 인덱스(Index)란? 인덱스란 추가적인 쓰기 작업과 저장공간을 활용하여 데이터베이스 테이블의 검색 속도를 향상시키기 위한 자료구조이다. 인덱스를 사용하는 목적은 RDBMS에서 검색 속도를 높이기 위함이라 할 수 있다. 테이블의 Column을 색인화 한다.(따로 파일로 저장) 해당 테이블의 레코드를 full scan(완전 탐색)하지 않는다. (B+ 트리 구조로)색인화된 Index 파일 검색으로 검색 속도 향상 1.1 배경 인덱스는 책의 목차에 주로 비유됨 하지만 일반적인 책을 생각해보면 목.. 2022. 2. 6.
데이터베이스(DataBase) -목차- 1. 데이터베이스(DataBase)란? 2. 데이터베이스 관리 시스템(DBMS)이란? 3. 데이터베이스를 사용하는 이유 3.1 데이터베이스의 특징 1. 데이터베이스(DataBase)란? 데이터베이스는 일반적으로 컴퓨터 시스템에 전자적으로 저장되는 구조화된 정보 또는 데이터의 조직화된 모음이다. 데이터베이스는 일반적으로 데이터베이스 관리 시스템(DBMS)에 의해 제어된다. 연결된 애플리케이션과 함께 데이터와 DBMS를 하나로 묶어 데이터베이스 시스템이라고 하며 단축하여 데이터베이스라고도 한다. 오늘날 운영되고 있는 가장 일반적인 유형의 데이터베이스에서 데이터는 일반적으로 처리 및 데이터 쿼리를 효율적으로 수행하기 위해 일련의 테이블에서 행과 열로 모델링된다. 그러면 데이터에 쉽게 액세스하고 관리,.. 2022. 2. 5.