CS/Database

    SQL 성능 확인, Plan(실행계획) 보는 법

    mybatis로 개발을 하면서 query의 성능을 최적화 시키는게 필요한 시점들이 있다. 이때 튜닝을 하게 된느데 튜닝의 기초라고 할 수 있는 플랜 보는 법을 알아보자. 1. plan (실행계획) 이란? DBMS는 SQL을 수행할 최적의 처리 경로를 생성해 주는 핵심 엔진인 옵티마이저(Optimizer)를 가지고 있다. 이 옵티마이저는 우리가 SQL을 작성하고 실행하면 이 쿼리를 어떤 순서로 실행하겠다고 실행계획을 세우게 된다. 이 실행계획이 어떤 순서로 짜여져 있냐에 따라 성능의 차이가 크기 때문에 plan을 보는 방법을 알아두면 쿼리 성능 개선에 큰 도움이 된다. 2. plan 보는 법 툴을 확인하거나 "Explain plan for"를 쿼리 앞단에 붙여서 실행계획을 떠보면 위와 비슷한 형식으로 나온..

    [DB] 데이터베이스, Index

    데이터베이스 데이터베이스는 통합하여 관리되는 데이터의 집합체를 의미한다. 이는 중복된 데이터를 없애고, 자료를 구조화하여 효율적인 처리를 할 수 있도록 관리된다. 이런 데이터베이스는 응용 프로그램과는 다른 별도의 미들웨어에 의해 관리되며 이를 데이터베이스 관리 시스템 (DBMS)라고 한다. 데이터 베이스를 사용하는 이유 파일 시스템을 사용했을 때의 문제점 데이터의 중복과 비일관성 데이터 접근 시 필요한 데이터를 편리하고 효율적으로 검색하기 힘듬 데이터가 여러 파일에 흩어져 있고 파일 형식이 서로 다를 수 있음 데이터 동시 접근 시 데이터가 잘못 업데이트 될 수 있음 무결성 문제 보안 문제 데이터베이스의 장점 데이터의 논리적, 물리적 독립성, 일관성, 무결성, 보안성 보장 데이터의 중복 최소화 저장된 자료..