COMPUTER SCIENCE/DB3 [DB] Join Join operation 이란 두 개이상의 relation 을 하나의 relation 처럼 만들어 주는 연산이다. Join operation 은 relation 의 tuple 들이 특정 조건에 의해 match 되기를 요구하는 Cartesian product 이다. 예시를 위해 사용할 relation 들이다. 위의 relation 은 course, 아래 relation 은 prereq 이다. Inner Join Inner join 은 모든 공통 column 들 중 같은 값을 가지는 tuple 들을 match 하고, match 되지 않는 tuple 은 유지하지 않는다. 공통된 column 은 하나만 유지한다. SELECT * FROM course INNER JOIN prereq ON course.cours.. 2023. 2. 14. [DB] Transaction 트랜잭션 (transaction) 이란 다양한 data items 를 접근하고 갱신할 수 있는 프로그램 실행 단위이다. Transaction Properties 데이터 무결성을 지키기 위해, database system 은 ACID 특성 보장해야 한다. Atomicity (원자성) : 한 트랜잭션의 모든 연산들은 db 에 모두 반영되거나 모두 반영되지 않아야 한다. Consistency (일관성) : isolation 내의 트랜잭션의 실행은 db 의 일관성을 유지한다. 여기서 일관성은 트랜잭션 전, 후에 데이터 모델의 모든 제약조건 (기본키, 외래키, 도메인, 도메인 제약조건 등) 을 만족하는 것을 통해 보장한다. Isolation (격리성, 고립성) : 여러 트랜잭션이 동시에 발생하더라도, 각각의 트랜.. 2023. 2. 12. [DB] Indexing 인덱스(index) 는 원하는 데이터에 더 빠른 접근을 할 수 있는 역할을 한다. 즉, 검색 성능을 향상시킨다. 예를들어, ID 가 주어진 student record 를 조회하기 위해, database systme 은 해당 record 가 있는 disk block 을 찾기 위해 인덱스를 조회한 다음, 적절한 student record 를 가져오기 위한 disk block 을 가져온다. 인덱스는 database 에서 효율적인 쿼리 처리에 필수적이다. 인덱스가 없다면, 모든 쿼리는 사용하는 모든 relation 의 모든 내용들을 읽어야 하므로 상당한 시간을 소모하게 된다. 인덱스에는 크게 두 가지 종류가 있다. Ordered indices : 값들의 정렬된 순서를 기반으로 한다. Hashing indices.. 2023. 2. 4. 이전 1 다음