본문 바로가기

분류 전체보기267

[DataBase] Delete vs Truncate 오늘은 Truncate와 Partition에 대해 공부해 보려고 한다.이번 프로젝트에서 Truncate와 Partition을 사용할 일이 생겨서Truncate가 왜 Delete보다 빠른지, Partition은 어떤 구조로 이루어졌는지에 대한 궁금증이 생겨서이에 대해 조사해 보았다. Delete와 TruncateDelete와 Truncate는 둘다 데이터를 삭제한다는 기능을 가지고 있지만동작방식은 살짝 다른데, 이에 대해 이해하기 위해서는 RDBMS의 저장 구조를 알면 좋을거 같다. RDBMS의 논리적 저장구조RDBMS는 Table Space, Segment, Extent, Block으로 구성되어 있다.Block (Page)Block은 디스크와 메모리 간 I/O 처리를 위한 최소 단위 이다.Block은 여.. 2026. 8. 9.
[Database] 인덱스(Index)란 무엇인가? : B+Index의 구조 이전에 쿼리튜닝을 공부하면서 인덱스에 대해 살짝 알아봤었다. 쿼리 튜닝에 대하여(기초)이번 프로젝트에서 쿼리를 다룰일이 많다. DB를 많이 사용하다보니 select할 때 시간이 많이 걸리기 때문에 쿼리튜닝이 필수였다.쿼리튜닝은 DBA가 해주지만 DBA가 바빠서 그런지 응답 시간이 오래ytlive.tistory.com오늘은 인덱스란게 어떻게 데이터 조회 속도를 향상시키는지그 구조와 종류에 대해 알아보려고 한다. Index 너는 누구인가?인덱스(Index)란 정확히 무엇인가?인덱스는 테이블에서 데이터를 빠르게 읽을 수 있도록 도와주는 자료구조 이다.흔히 책의 목차 정도로 이해하면 될 것이다.테이블의 특정 컬럼에 대해 별도의 자료구조를 만들어 데이터베이스에서 테이블의 모든 테이블을 검색하지 않고, 원하는 데이.. 2026. 7. 24.
DB PK(유일값) 일련번호 채번방식에 대하여 이번 프로젝트에서는 데이터 보관을 위해DELETE 사용을 금지하고 삭제여부 컬럼을 추가하여 삭제 데이터를 관리하고 있다.그래서 중복 방지를 위해 SEQ즉 일련번호 컬럼을 추가할 필요가 있었다.때문에 오늘은 일련번호를 채번하는다양한 방법에 대해 알아보고 비교해보려고 한다. 일련번호 채번방법 4가지일련번호 채번방법으로는 크게 4가지가 있다.1️⃣ Max + 12️⃣ DB Sequence (시퀀스 객체)3️⃣ 채번 테이블 방식4️⃣ 프레임워크 UUID (Universally Unique Identifier)하나씩 예시를 들어서 확인해보겠다. 1️⃣ Max + 1가장 간단한 채번방법은 Max + 1이다.현재 테이블에 저장된 ID 값 중 가장 큰 값을 조회하여거기에 + 1을 더해 새 번호를 부여한다.Max + 1.. 2026. 7. 5.
[Spring Batch] Batch에서의 Tasklet과 Chunk 오늘은 배치에 대해 알아보겠다.배치란 무엇일까.배치란?배치는 대용량 데이터를 사용자 개입 없이 컴퓨터가 일괄적으로 처리하는 프레임워크이다.주로 대용량 데이터 처리, 자동화 등에서 사용된다. 배치의 실행 방식배치는 배치 실행 시점과 동작방식에 따라 아래와 같이 크게 3가지 종류로 나뉜다.- 정기배치- 이벤트 배치- On-Demand 배치정기 배치 (Scheduled Batch)정기 배치는 정해진 주기에 따라 자동으로 실행되는 배치이다.우리가 알고 있는 배치는 대부분 정기 배치일 것이다.주로 스케줄러 툴과 연동하여 사용한다.예를 들어 매일 새벽 2시에 통계를 생성한다든지, 매달 25일에 월급 명세서를 발급한다는 등의 작업을 할 수 있다. 이벤트 배치 (Event-Driven Batch)이벤트 배치는 특정 이.. 2026. 6. 13.