하루 회고
패스트캠퍼스 데이터 사이언스 스쿨 (DAY 27, 29)
- 3월 31일, 4월 2일은 모두 MySQL 과정으로, 이어지는 내용이었기에 한번에 쓴다(고 합리화한다)
데이터베이스 - MySQL
1. MySQL 설치와 Workbench 세팅
2. 데이터베이스의 개요
- 데이터베이스란 데이터를 통합하여 관리하는 데이터의 집합을 의미한다
2.1 DBMS
- 데이터베이스 관리시스템
- SQL은 Structured Query Language : 관계형 데이터베이스 관리 시스템에서 데이터를 관리하기 위해 사용하는 "언어/문법"
- 스키마는 테이블의 구조, 테이블 간 관계를 포함한 전체 구조
2.1.1 RDBMS
- 데이터 테이블 사이에 키값으로 관계를 가지고 있는 데이터베이스
- 관계성으로 인해 저장/삭제 속도는 느리지만, 로딩 속도는 빠름
- 따라서 Insert는 적어도 로딩이 자주 있을 때 유리
- Oracle, MySQL 등
2.1.2 NoSQL
- 데이터 테이블 사이의 관계가 없이 데이터를 저장
- 데이터 간 관계가 없어 많은 데이터의 저장이 가능
- 저장/삭제 속도가 빨라 빅데이터 활용이 증가하면서 중요성이 대두되고 있지만, 대신 로딩 속도는 느림
- 따라서 Insert는 많고 로딩이 별로 없을 때 유리
- MongoDB, 카산드라 등
3. 주요 문법
- 표준 SQL을 따르는 경우 어느 정도 호환되며, 일부 함수명이 다를 수 있다(ex MySQL ↔ Oracle)
3.1 RDBMS에서의 모델링 개념
- 개념적 모델링 → 논리적 모델링 → 물리적 모델링
3.2 SQL문의 종류
3.2.1 DML : Data Manipulation Language
- 데이터 검색 / 삽입 / 수정 / 삭제에 사용하는 데이터 조작어
- SELECT, INSERT, UPDATE, DELETE
3.2.2 DDL : Data Definition Language
- DB 개체 생성 / 삭제 / 변경
- CREATE, DROP, ALTER, TRUNCATE
3.2.3 DCL : Data Control Language (아직 진도 안 나감)
- 사용자의 권한 부여 / 회수
- GRUNT, REVORKE, DENY
3.3 추가 내용
- SQL 문에서도 기본 연산자를 사용한다 : 산술 연산자 / 비교 연산자 / 논리 연산자
- World , Sakila 데이터를 활용한 MySQL 실습
SQL 문의 보다 상세한 내용은 정보성 포스트로 분리하여 업로드하는 것이 나을 것 같다. 클래스 내부에서는 파이썬을 거치고 와서 그런지 SQL이 상대적으로 쉽게 느껴진다는 평이 많았다. 확실히 더 간결(?)하고 Pandas로도 이미 비슷한 작업을 몇번 해봐서 쉽게 느껴지는 것도 있는 것 같다.
팀 프로젝트로 드디어 전처리가 끝나간다! 이번 주말은 본격적으로 시각화, 분석에 Deep Dive할 수 있을 듯:)
'Today I Learned' 카테고리의 다른 글
20210423_그동안의회고 (0) | 2021.04.23 |
---|---|
20210401_TIL (0) | 2021.04.03 |
20210329-0330_TIL (0) | 2021.03.31 |
20210326_TIL (0) | 2021.03.27 |
20210325_TIL (0) | 2021.03.27 |