- DataBase의 구성을 파악한다.
- SQL의 개념 및 분류를 파악한다.
- DML
- DDL
- DCL
- 하나의 DB는 여러개의 TABLE로 이루어져 있다.
- 하나의 TABLE은 행과 열로 이루어져 있다.
- 각 행은 한 대상의 여러 속성을 나타낸다.
- 각 열은 모든 대상의 한 가지 속성을 나타낸다.
이러한 데이터를 제어하기 위한 언어인 SQL에 대해 알아보자.
- SQL : 위에서 살펴본 데이터베이스 시스템을 제어하기 위한 언어이다.
- DML(Data Manipulate Language) : 데이터를 조작하기 위한 언어
- SELECT : 선택
- INSERT : 삽입
- UPDATE : 변경
- DELETE : 삭제
- DDL(Data Definition Language) : 데이터를 정의하기 위한 언어
- CREATE : 생성
- DROP : 삭제
- ALTER : 변경
- DCL(Data Control Language) : 데이터를 제어하기 위한 언어
- COMMIT : 확정
- ROLLBACK : 복구
- GRANT : 권한 부여
- REVOKE : 권한 회수
SQL은 언어이기때문에, 이론 공부로 마칠게 아닌 꾸준한 학습이 필요하다.
따라서, 새로운 SQL 시리즈를 개설하여 문제 풀이 및 심화 이론을 포스팅할 예정이다.
인터넷
인터넷 작동 원리HTTP란?브라우저 동작 원리DNS 작동 원리도메인 네임이란?호스팅이란?
기본적인 프론트엔드 지식HTMLCSSJavaScript
OS 및 일반적인 지식터미널 사용방법OS 작동 방식프로세스 관리스레드와 동시성기본적인 터미널 명령어메모리 관리프로세스간 통신 (IPC)입출력(I/O) 관리POSIX 기초기본적인 네트워크 개념
버전 관리Git 기본 사용법
DataBaseSQL
DataBase 상세 정보- ORM
- ACID
- Transaction
- N + 1 Problem
- DataBase 정규화
- Index와 작동 방식
API- 인증
- REST
- JSON APIs
캐싱- CDN
- Server side
- Client side
웹 보안 지식- MD5, SHA family, scyrpt, bcrypt
- HTTPS, CORS, SSL/TL, 보안 정책
Testing- 통합 테스트
- 단위 테스트
- 기능 테스트
- CI/CD
개발과 설계 원칙- SOLID
- KISS
- YAGNI
- DRY
아키텍처 패턴- 모놀로틱 앱
- 마이크로서비스
- SQA
- Serverless
검색 엔진- ElasticSearch
메세지 브로커- RabbitMQ, Kafka
컨테이너화 vs 가상화- Docker
GraphQL- Apollo
- 웹 소켓
- 웹 서버
확장성- 측정, 모니터링, 원격측정
- 마이그레이션 전략
- 수평적 확장 vs 수직적 확장
- 관찰 가능성을 고려한 확장