Row Oriented Database디스크에 테이블이 Rows로 저장됩니다.하나의 IO block read는 테이블에서 여러개의 Rows를 읽어옵니다.특정 Row를 찾으려면 많은 양의 IO가 필요합니다. 예시일반적으로 우리가 사용하는 Row-Oriented Database의 예시입니다.사용자 입장에서는 위와 같이 보일 텐데 이를 실제 디스크에 저장한다면 아래와 같은 예시로 저장될 것입니다.회색은 하나의 block 에 있는 데이터를 의미하고 빨간 세로선 3개로 해당 Row가 끝났음을 명시했습니다. 검색 예시Select first_name from emp where ssn=666을 실행하면 아래와 같이 순서대로 페이지들을 검색합니다.1번 block -> 없음2번 block -> 없음3번 block -> 있..
매번 복습 할 때마다 새롭고 자주 까먹는 영역이 Transacion과 ACID인데요.한번 제대로 정리를 해두고 이를 자주 보면서 까먹지 않기 위해서 글을 써두려고합니다.Transaction 이란?SQL Query의 모음하나의 작업 단위여러 개의 Query가 하나의 작업 단위에 포함 될 수 있습니다. 실제 예제로는 돈을 맡기는 케이스가 있습니다.SELECT, UPDATE, UPDATE 와 같이 3개의 쿼리가 순서대로 필요합니다. 하나의 예시는 아래와 같습니다.계좌 1에서 계좌 2로 돈을 보내는 경우 아래와 같이 Transaction이 동작하죠.Transaction LifespanTransaction BEGIN을 통해서 Transaction을 시작할 수 있습니다.Transaction COMMIT을 통해서 실..