앎을 경계하기

[가짜연구소3기] Data Engineer

[가짜연구소 3기] 데이터 엔지니어링 - 14 Databases

양갱맨 2021. 8. 25. 18:13

주제

데이터베이스가 무엇인지 배우고, 데이터 종류와 SQL과 NoSQL의 차이점을 배웠다.

SQL에서의 스키마와 스타 스키마에 대해서 배웠다.


데이터베이스란 무엇인가?

데이터베이스는 데이터 엔지니어에게 필수적인 도구이다.

  • 데이터베이스는 데이터를 보유하고 있다.
  • 데이터베이스는 데이터를 조직화한다.
  • 데이터베이스는(주로 DBMS) 데이터를 빠르게 검색하거나 그렇게 하는 데 도움이 된다.

데이터베이스와 파일 시스템


정형 데이터와 비정형 데이터

정형 데이터

  • 데이터베이스 스키마
    • 정형데이터는 잘 정의된 구조와 관련되어 있는데, 스키마가 이러한 구조를 정의한다.
  • 관계형 데이터베이스의 테이블 형식의 데이터

비정형 데이터

  • 비정형 데이터는 스키마가 없다.
  • 사진이나 동영상 같은 것들이 비정형 데이터이다.

반정형 데이터

  • JSON과 같은 데이터가 반정형 데이터이다.

SQL 과 NoSQL


SQL : 데이터베이스 스키마

데이터베이스 스키마 SQL문

테이블 관계 다이어그램

Order 테이블과 Customer 테이블이 있다.

Order 테이블의 "customer_id"컬럼이 Customer 테이블과 Order 테이블을 연결시킨다.

이러한 컬럼을 외래키라고 한다.

 

외래키를 활용한 테이블 조인 SQL문


SQL : 스타 스키마

스타 스키마는 데이터웨어하우징에서 자주 보는 스키마이다.

스타스키마는 한 개의 사실 테이블과 주 키 및 각 차원과 추가적 사실들로 이뤄진 스키마이다.