TIL_14_221117

young0_0·2022년 11월 17일
0

TIL

목록 보기
13/91

14일 차 회고

시간이 부족해..

들어야 할 강의는 많고 해야할 프로젝트는 생겼고 이해는 안되고
잠도 오고 집중도 안되고.. 걱정은되고 머리도 아프다
아직 모르는게 너무 많은데 프로젝트를 진행하려니 팀원들에게 벌써 미안한
느낌이다. 항상 하기전에 걱정을 많이 하는 타입이기는 하는데
잘 진행 되었으면 좋겠다. 누가 내 걱정좀 저 멀리 던져줬으면 ⚽️

데이터베이스란?

여러 사람들이 공유하고 사용할 목적으로 통합 관리 되는 데이터들의 모임이다.

데이터베이스 관리 시스템(DBMS)

데이터 베이스를 관리 하고 운영하는 시스템 이라고 하며 데이터가 저장되어 있는 데이터베이스는 여러 명의 사용자나 응용프로그램과 공유하고 동시에 접근이 가능해야 한다.

데이터베이스 관리 시스템의 종류

관계형 데이터베이스(RDBMS)

  • RDBMS의 데이터베이스는 테이블(table)이라는 최소 단위로 구성되며 , 테이블은 하나이상의 열과 행으로 저장되어 데이터 구조를 쉽게 파악하고 이해 할수 있다.
  • 항상 테이블에 사전에 정의된 내용에 부합하는 형태의 데이터만 삽입 할수있다.

RDBMS의 종류

  • MySQL
  • Oracle
  • SQLite
  • MariaDB
  • PostgresSQL

장단점

  • 장점 : 직관적이고,테이블 간의 관계도 파악하기 쉽다.
  • 단점 : 성능을 향상시키려면 아주 비싸다. 사전에 데이터베이스 설계를 잘못하면 큰일이 날 수 있다.

DBMS에서 사용하는 언어?

SQL

관계형 데이터베이스 시스템에서 자료를 관리하고 처리하기 위해 설계된 언어이다. 잘 정의하여 잘 구조화된 관계형 데이터베이스를 조작할 때 사용한다.
대부분의 관계형 데이터베이스는 SQL 문법을 지원하고 때로는 관계형데이터베이스를 SQL이라고 부른다.

사용예시

SELECT *
FROM Reservation

SELECT * 
FROM Customer 
WHERE Name='홍길동'

SELECT *
FROM TABLE
ORDER BY Age ASC

  • 테이블에 있는 모든 정보를 가져오거나, 조건(Name이 A인 것들만 가져오기)이 맞는 정보를 가져오거나, 나이 기준 오름차순으로 정렬해서 가져오는 예시

SELECT *
FROM Reservation
INNER JOIN Customer
ON Reservation.Name = Customer.Name;
  • Reservation과 Customer 테이블에서 각 테이블의 Name이 동일한 경우만 교집합으로 가져오는 예시

NoSQL

RDBMS를 제외한 나머지를 비관계형 데이터베이스 Not Only SQL(SQL만을 사용하지 않는 데이터베이스)
사전에 구조를 정의하는 관계형 데이터베이스와는 다르게, 유연하게 데이터를 쓰고, 읽을 수 있다.

NoSQL 데이터베이스 유형

  • Key-Value 타입
    - Key-Value 형태로 데이터를 저장하는 데이터베이스
    - Redis, AWS DynamoDB
  • Document 데이터베이스
    - 데이터를 문서(JSON이랑 비슷)처럼 저장하는 데이터베이스
    - MongoDB, Firebase(Firestore)
  • Column DB
    - 데이터베이스의 열(column)에 대한 데이터를 집중적으로 관리하는 데이터베이스
    - Cassandra, HBase

SQL vs NoSQL

SQL vs NoSQL 비교

SQL(RDBMS)NoSQL
데이터 저장 구조열과 행이 있는 테이블Key-value, document, column, 등 다양
데이터 사전 정의엄격하게 column에 대한 정의 필요SQL보다 유연하다.
확장Scale Up(수직 확장)Scale Out(수평 확장)
profile
열심히 즐기자ㅏㅏㅏㅏㅏㅏㅏ😎

1개의 댓글

comment-user-thumbnail
2022년 11월 18일

걱정아 물러가라~~~ ㅎㅎ 진행하기전엔 언제나 걱정이 앞서는것 같아요
잘 이겨내실거라 믿습니다!

답글 달기