
SpringBoot로 프로젝트를 시작할 때 어떤 DB를 사용할지 고민해본 적이 있으신가요? 저는 지금까지 당연하게, 자연스럽게 Java + MySQL 기반 환경을 사용해왔는데요, 최근 떠오르는 PostgreSQL이라는 DB가 있다길래 한 번 새로운 환경에 도전

PostgreSQL에는 Partial Index라는 기능이 있습니다.속히 부분 인덱스라고 불리는데, 말 그대로 특정 칼럼에 대해 조건을 걸어 해당 조건에 부합하는 행에 대해서만 인덱스를 생성할 수 있습니다.전체 테이블에 대해 생성하지 않고 부분적으로만 인덱스를 생성하기

1. Bitmap Index 비트맵 인덱스란, 인덱스 컬럼의 데이터를 0과 1, 즉 비트로 변환해 인덱스의 키로 사용하는 방법입니다. 이는 인덱스 키 value, 즉 컬럼의 데이터를 포함하는 행의 주소를 제공합니다. bitmap index에 대해 그림으로 먼저 살펴

서버 애플리케이션의 성능 개선을 위해 눈여겨보고는 하는 인덱스, 이 인덱스는 크게 클러스터 인덱스와 논클러스터 인덱스로 구분됩니다.쉽게 얘기해 클러스터 인덱스는 실제 데이터를 물리적으로 정렬해 클러스터로 꾸려둔 것이고, 논클러스터 인덱스는 인덱스 페이지를 이용하는 그

해당 포스팅은 오라클 성능 고도화 원리와 해법2의 내용을 기반으로 작성되었습니다.Index의 Scan에 대해 언급하기 전에, 기본적인 Index의 구조에 대해 알아봅시다.root block, branch block, leaf block으로 구분root, branch b

동시에 여러 트랜잭션을 수행할 때, 다른 트랜잭션에서 변경하거나 조회하는 데이터를 볼 수 있도록 허용할지 말지를 결정함격리 수준이 낮을 수록 동시성이 높아지고 오버헤드가 줄어드나, 일관성이 떨어짐커밋되지 않은 트랜잭션의 결과를 볼 수 있음성능이 좋지 않기 때문에 실제로

"데이터베이스에 여러 명의 사용자가 접근할 때 어떻게 일관성 있는 데이터를 반환할 수 있을까?" 라는 물음에 대해 어떤 답변을 할 수 있을까요?동시성을 제어하는 방법에는 아주 여러가지 다양한 방법이 있으나, 이번에는 DB에서 데이터의 동시성을 컨트롤하는 MVCC에 대해