앞에서 구현한 API는 DB가 없으므로 데이터가 보존되지 않았음
그러므로 API서버가 멈추거나 재실행되면 초기화가 됨
이를 위해
1. 관계형 데이터베이스 시스템 : RDBMS
2. 비관계형 데이터베이스 시스템 : NoSQL
정규화
- 하나의 테이블에 모든 정보를 다 넣으면 동일한 정보들이 불필요하게 중복되어 저장됨
- 많은 용량을 차지하게 됨
- 외부키를 이용해서 해결함
트랜잭션
- 일련의 작업들이 마치 하나의 작업처럼 취급되어서 모두 다 성공하거나 모두 다 실패하게 함
- ACID : Atomicity, Consistency, Isolation, Durability / 원자성, 일관성, 고립성, 지속성
관계형 데이터베이스 장점
- 데이터를 효율적이고 체계적으로 저장하고 관리
- 미리 저장하는 데이터들의 구조를 정의함으로써 완전성 보장
- 트랜잭션 기능 제공
관계형 데이터베이스 단점
- 테이블 구조 변화에 덜 유연
- 확장이 어려움
- 서버 수를 늘리기보단 스케일 업으로 확장
비관계형 데이터베이스 장점
- 데이터 구조를 미리 정의하지 않으므로 구조 변화에 유연
- 데이터베이스 시스템 확장이 유리
- 방대한 양의 데이터 처리 유리
비관계형 데이터베이스 단점
- 데이터의 완전성 덜 보장됨
- 트랜잭션이 안되거나 불안정함
SQL : Structured Query Language
- Create
- Read
- Update
- Delete
SQL 구문
- SELECT
- INSERT
- UPDATE
- DELETE
- JOIN
반응형
'SW ENGINEERING > Flask' 카테고리의 다른 글
API 개발하기(11) - MySQL 다루기 (0) | 2021.02.17 |
---|---|
API 개발하기(10) - MySQL 설치 (0) | 2021.02.17 |
API 개발하기(8) - 미니터(Miniter) 개발하기(전문) (0) | 2021.02.16 |
API 개발하기(7) - 미니터(Miniter) 개발하기(3) (0) | 2021.02.16 |
API 개발하기(6) - 미니터(Miniter) 개발하기(2) (0) | 2021.02.15 |
최근댓글