#TIL Database 기본 개념

송정석·2022년 3월 14일
0

1. 데이터베이스(Database)의 개념

데이터를 오랜기간 저장 및 보존하기 위해서, 데이터를 체계적으로 보존하고 관리하기 위해서
데이터 베이스를 사용

2. 관계형 데이터베이스 (RDBMS)가 무엇이며, 사용하는 이유

RDBMS 란 데이터들 사이의 관계성을 유지하면서 저장
데이퍼 베이스를 구성하는 테이블은 수백, 수천개가 될 수 있다
관계형 데이터 베이스라는 의미는 DB를 구성하고 있는 데이블들이 
서로 상호관련성을 가지고 열결되어있다는 의미이다
각각의 테이블들이 완전한 독립적이지 않고 테이블A와 테이블B가 서로 연관된 사이라는 뜻

3. 테이블(Table)이 무엇인지 이해하고, Column, Row를 설명

관계형 데이터 베이스에서는 모든데이터는 2차원 테이블로 표현할수 있다
column(열) : 컬럼은 테이블의 각 항목(id, 책 제목, 작가 등)을 의미
Row(행) : 로우는 각 항목의 실제 값

4. 테이블(Table)의 관계 - One to One, One to Many, Many to Many 관계의 예시를 나열

one to one
- 하나의 A 테이블 데이터는 오로지 하나의 B 테이블 데이터와 연결 된다.
- 하나의 B 테이블 데이터 또한 하나의 A 테이블 데이터와 연결 된다.

one to many
- 하나의 A 테이블 데이터는 B 테이블의 여러 데이터와 연결 된다.
- 하나의 B 테이블 데이터는 오로지 하나의 A 테이블 데이터와 연결 된다.

many to many
- 하나의 A 테이블 데이터는 B 테이블 여러 데이터와 연결 된다.
- 하나의 B 테이블 데이터 또한 여러 A 테이블 데이터와 연결 된다.

5. Primary KeyForeign Key 의 관계를 설명하고, 테이블에 지정

Foreign Key : 외부에있는 테이블에서 참조한 키 , 외래키
Primary Key : 데이터의 고유한 번호, 테이블 당 각각 생성

6. 관계형 데이터베이스비관계형 데이터베이스의 차이

관계형 DB 
Mysql, Oracle, Mssql 같은 고전적인 데이터베이스를 관계형 데이터베이스라고 한다.
테이블, 행, 열을 가진 DB에 A데이터와 B데이터가 있다고 가정을 하면, 
A데이터에 B데이터의 위치를 저장하는 방식으로, 행과 열로 구성된 테이블과의 관계를 나타낼 때 사용한다.

특징
 - 트랜잭션(전부 아니면 무): 전체 트랜잭션이 하나의 단위로 기록. 실패 시 전체 롤백
 - 정규화: DB설계 시 중복을 최소화해서 구조화하는 프로세스

장점
 - 데이터의 성능이 일반적으로 좋아 정렬, 탐색, 분류가 빠름
 - 신뢰성이 높아 데이터의 무결성을 보장
 - 정규화에 따른 갱신 비용을 최소화

단점
 - 기존에 작성된 스키마를 수정하기 어려움
 - 데이터베이스의 부하를 분석하기 어려움
 - 빅데이터를 처리하는데 매우 비효율적임.

비관계형 DB
NoSQL이라고도 부르며, Not Only SQL(SQL 뿐만이 아닌. 이라는 뜻)의 줄임말이라고 한다.
이 말은 곧 SQL뿐만 아니라 다른 여러 장점을 가지고 있다는 소리다.
기존의 관계형 데이터베이스의 한계를 뛰어넘기 위해 만들어진 새로운 형태의 데이터베이스라서, 
관계형 데이터베이스보다 더 융통성 있는 데이터 모델을 사용하며,
데이터의 저장 및 검색에 특화된 메커니즘을 제공 
NoSQL은 분산 환경에서의 데이터 처리를 더욱 빠르게 하기 위해 개발되었다.
대표적으로 MongoDB, CouchDB 등이 있다.

특징
- 거대한 Map으로서 key-value 형식을 지원함.
- 관계형 db와 달리 PK,FK JOIN등 관계를 정의하지 않음.
- 스키마에 대한 정의가 없다.

장점
 - 대용량 데이터 처리를 하는데 효율적임.
 - 읽기 작업보다 쓰기 작업이 더 빠르고 관계형 데이터베이스에 비해 쓰기와 읽기 성능이 빠름.
 - 데이터 모델링이 유연함.
 - 뛰어난 확장성으로 검색에 유리함.
 - 최적화된 키 값 저장 기법을 사용하여 응답속도나 처리효율 등에서 성능이 뛰어남.
 - 복잡한 데이터 구조를 표현할 수 있음.

단점
 - 쿼리 처리시 데이터를 파싱 후 연산을 해야해서 큰 크기의 document를 다룰 때는 성능이 저하됨.

7. ERD 구성도로 데이터 관계를 모델링

완료

참조
출처: https://newehblog.tistory.com/38?category=834445 [웹쟁이의 일상]

profile
Foot print

0개의 댓글