분류 전체보기

자격증/SQLD

[SQLD] 트랜잭션 Isolation Level

Transaction Isolation Level (트랜잭션 격리 수준) 트랜잭션 격리 수준은 동시에 여러 트랜잭션이 처리될 때 특정 트랜잭션이 다른 트랜잭션에서 변경하거나 조회하는 데이터를 볼 수 있도록 허용할지 말지를 결정하는 것이다. Isolation Level 종류 Isolation Level 설명 Dirty Read Non-Repeatable Read Phantom Read 고립성 (안정성) 동시성 Read Uncommited 커밋되지 않은 데이터도 읽을 수 있다 O O O 낮다 높다 Read Committed 커밋된 정보만 읽는다 X O O 중간 중간 Repeatable Read 하나의 트랜잭션에서는 하나의 스냅샷만 사용한다 X X O 중간 중간 Serializable Read 시에 DML 작..

자격증/SQLD

[SQLD] DROP vs TRUNCATE vs DELETE

DROP TRUNCATE DELETE DDL DDL (일부 DDL 성격 가짐) DML ROLLBACK 불가능 ROLLBACK 불가능 COMMIT 이전 ROLLBACK 가능 AUTO COMMIT AUTO COMMIT 사용자 COMMIT 용량 모두 반환 테이블 최초 생성 시 용량만 남기고, 모두 반환함 용량 반환하지 않음 테이블의 정의 자체를 완전히 삭제함 테이블을 최초 생성된 초기상태로 만듬 데이터만 삭제 💡 TRUNCATE TABLE은 테이블 자체가 삭제되는 것이 아니고, 해당 테이블에 들어있던 모든 행들이 제거되고 저장 공간을 재사용 가능하도록 해제한다. 테이블 구조를 완전히 삭제하기 위해서는 DROP TABLE을 실행하면 된다. 📌 참고자료 https://www.youtube.com/watch?v=7..

자격증/SQLD

[SQLD] SQL 최적화 기본 원리 - 조인 수행 원리

조인 기법 조인 기법 설명 NL Join OLTP의 목록 처리 업무에 많이 사용 Sort Merge Join DW(Data Warehouse) 등의 데이터 집계 업무에 많이 사용 Hash Join NL Join (Nested Loot Join) NL Join은 프로그래밍에서 사용하는 중첩된 반복문과 유사한 방식으로 조인을 수행한다. 조인 컬럼에 적당한 인덱스가 있어서 자연조인(Natural Join)이 효율적일 때 유용하며, Driving Table(선행 테이블)의 조인 데이터 양이 큰 영향을 주는 조인 방식이다. Sort Merge Join Sort Merge Join은 조인 컬럼을 기준으로 데이터를 정렬하여 조인을 수행한다. NL Join은 주로 랜덤 액세스 방식으로 데이터를 읽은 반면 Sort Me..

자격증/SQLD

[SQLD] SQL 최적화 기본 원리 - 인덱스 기본

인덱스 (Index) 인덱스는 조회만을 위한 오브젝트로, 기본적인 목적은 검색 성능의 최적화이다. 하지만 INSERT, UPDATE, DELETE 등과 같은 DML 작업은 인덱스를 함께 변경해야 하기 때문에 오히려 성능이 느려질 수 있다. 트리 기반 인덱스 DBMS에서 가장 일반적인 인덱스는 B-트리(Blance Tree) 인덱스이다. B-트리 인덱스는 브랜치 블록(Branch Block)과 리프 블록(Leaf Block)으로 구성되며, 브랜치 블록 중 가장 상위에 있는 블록을 루트 블록 (Root Block)이라고 한다. 브랜치 블록은 분기를 목적으로 하고 리프블록은 인덱스를 구성하는 컬럼의 값으로 정렬된다. 일반적으로 OLTP(Online Transaction Processing) 시스템 환경에서 가..

숭코기
'분류 전체보기' 카테고리의 글 목록 (5 Page)