DB

    [Database System] SQL과 NOSQL

    SQL SQL(Structed Query Language)는 대표적인 DBMS의 카테고리 중 하나로, 관계형 데이터 베이스 시스템(RDBMS)를 사용하는 데이터 베이스이다. SQL 데이터 베이스는 데이터간의 관계를 중요한 개념으로 채택한다는 점이 특징이다. 대표적인 SQL 데이터베이스로는 MySQL, PostgreSQL, Oracle 등이 있다. SQL의 특징 SQL의 대표적인 특징으로는 `정형화된 데이터 스키마`, `ACID 트랜잭션`, `Relation 개념`등을 들 수 있다. 정형화된 데이터 스키마 SQL에서 데이터는 정해진 데이터 스키마에 따라 테이블에 저장되며, 구조가 고정된다는 특징이 있다. 해당 구조는 필드의 이름, 그리고 필드의 데이터 타입으로 정의되어 있다. 따라서 INSERT를 통해 추..

    [Database System] Modern SQL

    CMU의 Intro to Database System / Fall 2022를 바탕으로 정리 한 것입니다. Modern SQL Relational Languages에는 DML, DDL, DCL 의 세 가지 Language가 존재하며, sets이 아닌 bags를 기반으로 작동한다. 즉, 중복되는 튜플이 존재한다는 것을 가정하고 작동되도록 구성되어있다. 앞으로 보여줄 예시에 대한 데이터베이스 구조는 아래와 같다. Aggregates `bags of tuples로 부터 하나의 value를 리턴하는 함수`에 해당한다. - AVG(col) => col value의 평균 값을 리턴한다. - MIN(col) => col value의 최소 값을 리턴한다. - MAX(col) => col value의 최대 값을 리턴한다...

    [Database System] Introduction

    CMU의 Intro to Database System / Fall 2022를 바탕으로 정리 한 것입니다. Lecture 1. Introduction relation Relation이란 속성들의 관계를 포함하고 있는 unordered set을 말한다. tuple tuple은 relation 안에 있는 attribute values 들의 set이다. 이 value들은 일반적으로 atomic/scalar하며, 만약 NULL값을 허용한 경우, NULL은 모든 domain의 member가 될 수 있는 special 한 값이다. Primary key primary key란 하나의 튜플을 유일하게 식별할 수 있는 key를 말한다. 일부 DBMS의 경우 자동으로 internal primary key를 생성하는데, My..