profile
어려운 문제를 함께 풀어가는 것을 좋아합니다.

Index에 대하여

인덱스란? 인덱스는 지정한 컬럼들을 기준으로 메모리 영역에 일종의 목차를 생성하는 것이다. 삽입,삭제,갱신의 성능을 희생하고 조회의 성능을 향상시킨다. 인덱스 종류에 따라 물리적인 공간을 요구하며, 옵티마이저는 생성한 인덱스 중 어느 인덱스를 선택해야 하는지에 대한 계산비용도 들어가게 된다. 인덱스를 통해 읽는 레코드 한건 한건이 I/O다. 때문에 ...

2019년 12월 3일
·
0개의 댓글

Transaction

Transaction Transaction 이란 DB의 상태를 변환시키는 하나의 논리적인 작업 단위를 구성하는 연산들의 집합이다. 예를 들어, A계좌에서 B계좌로 일정 금액을 이체한다고 가정하자. 이러한 과정은 다음과 같다 ​ a. A계좌의 잔액 확인 ​ b. A계좌의 금액에서 이체할 금액을 빼고 다시 저장 ​ c...

2019년 10월 9일
·
0개의 댓글

파티셔닝(Partitioning)

Partitioning 이번에 D2 Fest mini 프로젝트를 진행하면서, 대용량 아키텍처에 대해 처음으로 생각해보게 되었다. 서비스가 사용자가 많아지고 관리해야 될 데이터의 양이 많아 질 수록, 개발자는 보다 많은 짐을 얻게 된다. 어느 정도 몸짓이 커지면 어플리케이션단을 넘어서, 시스템 아키텍처를 고민하고 설계해야한다. 학부생때야 직접 서비스를 운영...

2019년 8월 22일
·
0개의 댓글

Database 선택 가이드

Database 선택 가이드 이번 포스팅에서는 RDB 부터 여러 DB들의 강점과 약점을 알아보고, 어떠한 경우에 각 DB들을 적용하면 좋을지 정리해 보자. RDB (Relation Database) 관계형 데이터베이스로, 가장 오래되고 많이 알려져있다. Mysql, Oracle, PostgreSql등이 속해 있다. 여기서 관계(Relation)란 ke...

2019년 8월 22일
·
0개의 댓글