No.17 [Wecode] Session 2 - All | Database
데이터 베이스란?
데이터를 저장하고 관리하는 곳. 컴퓨터의 정보를 저장하는 곳.
DBMS (데이터베이스 시스템)으로 관리한다.
데이터베이스를 쓰는 이유?
애플리케이션을 종료하면 임시 메모리에 저장이 되지만, 재부팅 시 사라질 수 있음.
오랜기간 저장하고, 보존하려고 데이터베이스를 사용함.
1. 관계형 데이터베이스
ex) MYSQL
-
관계형 데이터란?
일반적으로 Table의 형태에 저장되며, 모든 데이터는 테이블형태로 저장이 가능함.
각 로우(row)는 고유키가 있으며, 주로 프라이머리키를 통해서 해당 로우를 찾거나 인용함.
데이터가 많아질수록 테이블끼리 연결이 필요하며, 연결의 종류는 크게 3가지로 나뉜다.
- one to one : 테이블 A의 로우와 테이블B의 로우가 정확히 일대일 매칭이 되는 관계
- one to many : 하나의 테이블의 값을 다른 테이블에서 여러곳에 사용이 가능한 관계 (1:N 관계)
- 표현방식 : "오더스 테이블이 커스터머스 아이디를 Fireign Key(FK : 외래키)로 가지고(참조하고) 있다."
- many to many : 각각의 테이블의 이름을 합친 중간테이블이 존재하며,
- 위의 예시처럼 포린키를 사용하여 중복된 데이터들을 중복값 관리를 한다
-> 이유는, 데이터 수정 시 수정해야하는 번거로움을 덜 수 있음. 그렇기 때문에 중간 테이블에
각각의 아이디를 부여하고, ID로 데이터 표현함
+ 기존에 있던 데이터가 삭제 or 불필요한 데이터가 됐을 경우, 해당 데이터 자리를 지우지 않고,
데이터는 보관하고 있어야함 : 지운 데이터에 새로운 데이터를 넣게 됐을 경우, 적용된 다른 테이블에 적용 될 수 있는 오류가 생길 수 있음.
ex) 위의 이미지에서 4번 최호진님이 삭제하고, 신규 인원을 추가했을 때
다른 테이블에 적용된 4번이 신규인원에게 적용될 수 있음.
- one to one : 테이블 A의 로우와 테이블B의 로우가 정확히 일대일 매칭이 되는 관계
어떤 테이블에서 테이블을 분리해서 각각 테이블을 연결해주는 것을 바로 '정규화(normalization)'이라고 한다.
그 외, 원자성, 일관성, 고립성, 지속성가 주로 사용되며, 알아야 할 내용임.
- 트랜잭션이란?
![]
은행에서 계좌이체를 예를 들면, 중간 단계가 오류가 나면 다시 돌아오는 과정
NO SQL
비관계형 타입의 데이터를 저장할 때 주로 사용되는 데이터베이스 시스템.
비관계형이기 때문에 관계를 정의(PK)를 정할 필요가 없음.
* 데이터 수정에 용이함
과제
- 스타벅스의
음료
에 관한 정보를 팀별로 모델링하기
AQUERY TOOL 사이트 : 관계도를 그릴 수 있는 사이트
Author And Source
이 문제에 관하여(No.17 [Wecode] Session 2 - All | Database), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@ysh1394/TIL-No.9-Wecode-Session-2-All-Database-24k9ip9p저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)