본문 바로가기

반응형

SQL

(4)
[MySQL] EXPLAIN 최근에 통계 관련 기능을 개발하기 위해 쿼리의 성능을 확인해가며 개발을 진행했다. 이때는 ORM 을 사용했기 때문에 프레임워크의 로깅 기능을 통해서 ORM 으로 작성한 쿼리에서 실제 발생하는 SQL 쿼리를 확인하면서 개발을 했다. 이번에는 한번 더 나아가서 SQL 쿼리가 실제 DB 에서 수행될 때 어떻게 수행되는지를 확인해보고자 한다. SQL 의 실행계획을 보기 위해서는 EXPLAIN 명령어를 사용하면 된다. 이 글에서는 EXPLAIN 에 대해서 설명하고 EXPLAIN 사용 방법과 결과를 해석하는 방법 등에 대해서 정리한다.1. EXPLAINEXPLAIN 은 MySQL 에서 쿼리를 실제 실행하기 전 MySQL 이 어떤 방식으로 작업을 실행할지 보여주는 도구이다. 쿼리의 성능 최적화를 위해서 많이 사용되며..
[Spring] Database 연동 - 4 (JPA) 1. JPA JPA 는 Java Persistence API 의 줄임말로 Java 표준 ORM 인터페이스이다. ORM 은 Object Relational Mapping 의 줄임말로 객체와 RDB 를 매핑하는 기술이다. 객체와 DB 를 매핑하면서 SQL 쿼리 중심이 아닌 객체 중심의 코딩을 할 수 있도록 한다. JPA 는 Java 표준 ORM 인터페이스로 JPA 의 기능을 사용하면 기존의 반복적인 코드는 물론이고 기본적인 SQL 쿼리를 자동으로 생성해주어 코드를 간결하게 유지할 수 있다. 또한 JPA 를 사용하여 데이터를 객체와 매핑하게 되면, SQL 과 데이터 중심의 설계에서 Java 언어와 객체 중심의 설계로 전환할 수 있다. 2. 환경 설정 JPA 를 사용하기 위해서는 application 의 라이브..
[SpringBoot] Database 연동 - 3 (JdbcTemplate) 1. JdbcTemplate Spring 에는 Database 를 사용할 수 있는 방법으로 JdbcTemplate 이 있다. 순수 JDBC 에서는 DB Connection 을 얻고 해제하는 등의 DB 작업을 위해 반복되는 코드들이 있다. JdbcTemplate 은 이러한 반복 코드들을 제거할 수 있도록 되어서 사용에 편리하고 자원을 얻고 해제하는 등의 코드를 작성하면서 발생할 수 있는 문제들을 피할 수 있도록 해준다. 물론 SQL 쿼리문은 직접 작성하여야 한다. JdbcTemplate 은 사용할 때 설정은 앞서 JDBC 를 사용하기 위해서 했던 Spring Datasource 등의 설정과 동일하게 수행하면 된다. 2. 구현 JdbcTemplate 으로 구현 시에는 기존의 JDBC 와는 다르게 Connec..
[DB] SQL 기본 정리 1. SQL SQL (Structured Query Language) 는 관계형 데이터베이스 관리 시스템, RDBMS의 데이터를 관리하기 위해 개발된 프로그래밍 언어이다. 관계형 데이터베이스에서 데이터의 검색과 관리, 스키마 생성과 수정, DB 객체 접근 조정 관리 등을 위해 고안되었다. SQL 문법의 종류는 다음 세가지로 구분할 수 있다. - DDL (Data Definition Language, 데이터 정의 언어) DB에서 새로운 데이터의 정의 및 제거, 기존에 존재하는 데이터의 재정의 등의 역할을 하는 언어이다. CREATE, DROP, ALTER, TRUNCATE 등이 존재한다. - DML (Data Manipulation Language, 데이터 조작 언어) DB에서 데이터 검색, 등록, 삭제,..

반응형