computer science/database(4)
-
정규화(Normalization)::데이터베이스
1. 정규화 정의 한 테이블에 여러 엔티티를 넣다 보면 중복된 정보로 인해 이상 현상이 발생하게 됩니다. 이러한 문제를 해결하기 위해 정규화 과정을 거칩니다. 즉, 관계형 데이터베이스에서 중복을 최소화하기 위해 데이터를 구조화하는 작업입니다. 2. 이상 현상(Anomaly) 삽입 이상(Insertion Anomaly) : 새 데이터를 삽입할 때, 불필요한 데이터를 함께 삽입해야 하는 현상 삭제 이상(Deletion Anomaly) : 튜플을 삭제할 때, 필요한 데이터까지 삭제되는 현상 갱신 이상(Modification Anomaly) : 반복된 데이터 중에 일부를 수정할 때, 데이터가 불일치되는 현상 3. 정규화 과정 각 정규화 단계는 이전 정규화 단계를 만족해야 합니다. ex) 제3 정규화를 만족하기 ..
2020.06.26 -
DBMS(데이터베이스 관리 시스템)::데이터베이스
1. DBMS(DataBase Management System) 데이터베이스를 조작하는 별도의 소프트웨어입니다. 데이터베이스를 관리하고, 응용 프로그램들이 데이터베이스에 접근할 수 있는 인터페이스를 제공합니다. 데이터베이스를 구축하는 틀을 제공하고, 효율적으로 데이터를 검색하고 저장하는 기능을 제공합니다. 장애에 대한 복구 기능, 사용자 권한에 따른 보안성 유지 기능 등을 제공합니다. 즉, 데이터베이스 내의 정보를 구성하는 컴퓨터 프로그램의 집합으로서 무결성을 보장하기 위해 데이터의 중복을 제거하고 관리하는 소프트웨어 체계입니다. 2. 데이터의 무결성 데이터의 무결성은 데이터의 정확성, 일관성, 유효성이 유지되는 것을 말합니다. 데이터의 무결성을 유지하는 것은 DBMS의 중요한 기능이며, 주로 데이터에 ..
2020.06.26 -
트랜잭션(Transaction)::데이터베이스
1. 트랜잭션의 정의 데이터베이스의 상태를 변환시키는 하나의 논리적인 작업의 단위를 구성하는 연산들의 집합입니다. 하나의 트랜잭션은 Commit 되거나 Rollback 됩니다. Commit - 하나의 트랜잭션에 대한 작업이 성공적으로 끝나 데이터베이스가 다시 일관된 상태에 있을 때, 이 트랜잭션이 행한 갱신 연산이 완료된 것을 트랜잭션 관리자에게 알려주는 연산입니다. Rollback - 하나의 트랜잭션 처리가 비정상적으로 종료되어 데이터베이스의 일관성을 깨뜨렸을 때, 이 트랜잭션의 일부가 정상적으로 처리되었더라도 이 트랜잭션이 행한 모든 연산을 취소(Undo)하는 연산입니다. - Rollback 시 해당 트랜잭션을 재시작하거나 폐기합니다. 2. 트랜잭션의 성질(ACID) Atomicity(원자성) : 트..
2020.06.24 -
Isolation Level::데이터베이스
1. Isolation Level 트랜잭션에서 일관성 없는 데이터를 허용하는 수준을 의미합니다. 한 사용자가 어떠한 데이터를 수정하고 있는 경우 다른 사용자들이 그 데이터에 접근하는 것을 차단함으로써 완전한 데이터만을 사용자들에게 제공하게 됩니다. 또한, 많은 사용자들의 수정 작업으로 인해 통계 자료를 작성할 수 없는 사용자를 위해 읽기 작업을 수행할 수 있도록 Isolation Level을 변경할 수 있습니다. 2. Transaction Isolation Level RU(Read Uncommitted) SELECT 문장을 수행하는 경우 해당 데이터에 Shared Lock이 걸리지 않는 Level입니다. 따라서, 어떤 사용자가 A라는 데이터를 B라는 데이터로 변경하는 동안 다른 사용자는 B라는 아직 완료..
2020.06.13