728x90
반응형

sql최적화 3

Statement vs Prepared Statement

개요Java로 데이터베이스를 다룰 때 가장 많이 사용되는 두 가지 SQL 실행 방법이 Statement와 PreparedStatement입니다. 이 둘은 SQL 실행 방식, 보안, 성능 최적화 측면에서 큰 차이를 보이며, 잘못된 선택은 SQL Injection, 성능 저하 등의 문제로 이어질 수 있습니다. 이 포스트에서는 Statement와 PreparedStatement의 차이점, 사용법, 보안성, 성능 차이, 실무 활용 전략을 상세히 비교합니다.1. 개념 및 정의 항목 Statement Prepared Statement 정의실행할 SQL을 문자열로 직접 입력실행할 SQL을 미리 컴파일하고 파라미터로 값 주입사용 목적단순, 고정되지 않은 쿼리파라미터가 있는 반복 쿼리 실행SQL 실행 시점컴파일과 실..

Topic 2025.04.20

SQL 처리 과정(SQL Processing Steps)

개요SQL은 데이터베이스와의 대화 언어로, 우리가 작성한 SELECT, INSERT, UPDATE, DELETE 명령어는 내부적으로 복잡한 처리 과정을 거쳐 실행됩니다. 이 과정을 이해하면 SQL 최적화, 성능 개선, 오류 해결에 있어 보다 전략적인 접근이 가능합니다. 본 포스트에서는 SQL이 DBMS에서 처리되는 전 과정을 체계적으로 설명합니다.1. SQL 처리 개요SQL 처리란, 사용자가 입력한 SQL 문이 데이터베이스에서 해석, 최적화, 실행, 결과 반환까지 이르는 일련의 과정을 의미합니다.목적: SQL 성능 분석 및 튜닝 이해 기반 마련대상 DBMS: Oracle, MySQL, PostgreSQL 등 범용 적용 가능중요성: 실행 계획과 옵티마이저 이해의 기반2. SQL 처리 단계 단계 설명 세..

Topic 2025.04.20

RBO(Rule-Based Optimizer) vs CBO(Cost-Based Optimizer)

개요RBO(Rule-Based Optimizer)와 CBO(Cost-Based Optimizer)는 데이터베이스 관리 시스템(DBMS)에서 SQL 실행 계획을 수립할 때 사용하는 두 가지 대표적인 옵티마이저 방식입니다. 쿼리 성능에 중대한 영향을 미치는 이 두 방식은 시대 흐름에 따라 CBO 중심으로 발전해 왔으며, DB 성능 튜닝 및 SQL 최적화에 있어 중요한 이해 포인트입니다. 이 글에서는 RBO와 CBO의 개념, 비교, 작동 원리, 활용 전략 등을 상세히 다룹니다.1. 개념 및 정의 구분 설명 RBO (Rule-Based Optimizer)미리 정해진 규칙(rule)에 따라 SQL 실행 계획을 결정하는 방식CBO (Cost-Based Optimizer)통계 정보와 비용(cost)을 기반으로 최적..

Topic 2025.04.20
728x90
반응형