-
원티드 프리온보딩 백엔드 챌린지 2023년 2월 후기후기 2023. 2. 18. 20:04
이번달 원티드 프리온보딩을 통해서 데이터베이스의 중요한 개념을 많이 배웠다.
그 동안 나는 orm을 통해서 원하는 결과를 얻기만하면 된다고 생각했다.
하지만 내부적으로 어떤 동작이 일어나고 같은 결과를 얻더라도 발생하는 비용에서 상당한 차이가 있다는걸 알게 됐다.
또 데이터베이스 지식뿐만 아니라 강사님은 자신의 이력서, 회사 지원 이력 및 결과 등 사람들이 오픈하기 꺼려하는 예민한 개인 정보까지 오픈해주셨다.
수강생들에게 데이터베이스 지식뿐만 아니라 여러가지 경험을 간접적으로 할 수 있는 강의였다고 생각한다.
프리온보딩 주제
- 다양한 데이터베이스 데이터베이스 장/단점 비교
- Big Tech 기업들이 MySQL을 선택하는 이유
- MySQL이 제공하는 다양한 기능들
- MySQL 최적화 방안
수업내용
1주차
- 데이터베이스의 원칙
- data integrity(무결성)
- data reliability (안전성)
- scalability (확장성)
- 데이터베이스 종류
- 서비스에 적합한 데이터베이스 선택법
- 관계형 데이터베이스(RDBMS) vs 비관계형 데이터베이스(NoSQL)
2주차
- Mysql 설치
- MySQL을 사용하는 Big Tech
- Transaction
- 작업의 완전성을 처리하거나 원상태로 복구함
- MySQL 엔진
- 데이터베이스 관리 시스템의 핵심 부분으로, 데이터의 입출력과 인덱스 구조, 쿼리 처리 등을 담당
- Mysql 스토리지 엔진
- Database Lock
- Isolation Level(격리수준)
https://hssm93.tistory.com/entry/MySQL-Storage-Engines-%EC%9A%94%EC%95%BD
3주차
- 쿼리 실행 절차
- SELECT
- JOIN
- SUBQUERY
https://hssm93.tistory.com/entry/MySQL-Subquery-%EC%9A%94%EC%95%BD
https://hssm93.tistory.com/entry/MySQL-Join-%EC%9A%94%EC%95%BD
4주차
- indexing
- 도서의 찾아보기('색인')과 유사
- 인덱스 처리된 컬럼의 값을 주어진 순서로 미리 정렬해서 보관한다
- 수정,삽입,삭제의 성능을 어느정도 포기하고 읽기 성능을 올리는 도구
- 랜덤 I/O 접근 row의 갯수를 줄이는게 핵심
- 인덱스 키 사이즈와 포인터 사이즈의 크기가 크면 인덱스 테이블당 저장하는 데이터의 갯수가 달라짐
- normalization
- 데이터 중복이 어떻게 줄어드는지
- MySQL이 중복 데이터를 방지할 수 있기 때문
- partitioning
- 대용량 테이블을 소규모 테이블로 나누어 저장하는
- sharding
- DB를 여러개로 나눠 놓은 것
cache ( mysql8.0 부터는 지원하지 않는다고 함)
흥미로웠던 점
1. 데이터베이스 락
https://hssm93.tistory.com/entry/MySql-Database-Lock
2. 격리 수준
https://hssm93.tistory.com/entry/MySql-Isolation-Level%EA%B2%A9%EB%A6%AC%EC%88%98%EC%A4%80
3. 쿼리 실행 절차
https://hssm93.tistory.com/entry/mysql-%EC%BF%BC%EB%A6%AC-%EC%8B%A4%ED%96%89-%EC%A0%88%EC%B0%A8
'후기' 카테고리의 다른 글
원티드 프리온보딩 백엔드 챌린지 2023년 1월 후기 (0) 2023.02.18 프론트앤드 개발자 신입 질문 요약 (1) 2020.01.21 국비지원(it) 비트캠프 강남점 후기! (1) 2020.01.21