CS(Computer Science) 정리
데이터 베이스 트랜잭션(Transaction) 데이터 베이스의 상태를 변화시키는 작업 중 더 이상 쪼개선 안되는 작업들의 모임이다. 즉, 원자성을 보장하는 작업들을 말한다. 트랜잭션이 진행되는 도중에 부분 작업이 실패하면 전체 작업에 영향을 끼치므로 롤백 을 통해 처음으로 되돌려햐 하며 모든 부분 작업이 성공적으로 완료되면 커밋 을 통해 변경 사항을 한꺼번에 데이터베이스에 반영하게 된다. RDBMS - 관계형 데이터베이스 관리 시스템 모든 데이터가 관계로서 표현되는 데이터 베이스 시스템으로, 모든 데이터는 행, 열로 묶인 테이블의 형태로 사용자에게 제공된다. 테이블 형식의 데이터를 관계 연산자를 사용한 쿼리문을 날려 조작하게 된다.(SQL) ex) MySQL, OracleDB, MariaDB ... 특징 데이터의 분류, 정렬, 탐색이 비교적 빠르다. 스키마가 정해져 있어 유연성이 떨어진다. NoSQL - 비관계형 데이터베이스 관리 시스템 RDBMS와는 반대되는 형태의 데이터 베이스 시스템이다. 데이터를 Key-Value 나 Dovument(JSON), Graph 형태로 저장하기 때문에 관계형보다 간단하게 데이터 베이스를 구성할 수 있다. ex) MongDB, Redis, Cassandra ... 특징 관계형 데이터 베이스에 비해 대용량의 데이터를 저장할 수 있다.(분산형 구조) 스키마가 정의되지 않아 변화에 유연하다. B-Tree 데이터베이스나 파일 시스템에서 데이터 인덱싱을 위해 사용되는 트리로, 다음과 같은 특징을 갖는 트리이다. 각 노드들은 M 개의 데이터를 가질 수 있고, 각 데이터 사이마다 양 옆 데이터의 사이에 있는 데이터들을 가진 자식 노드에 대한 링크가 있다. ex) A (B~E를 갖는 자식 노드 링크) F 한 노드가 M개를 넘어가게 되면 그 노드를 반으로 쪼개어 두 노드로 분할한다. 그리고 중간의 데이터를 부모 노드로 넘긴다. 부모 노드도 꽉찬다면 계속 반복한다. B+ Tree 기존의 B 트리는 데이터에 대해 순차적으로 접근하기 힘들다...