컴퓨터/컴퓨터 ETC

[ MYSQL / ORACLE ] DB데이터가 대용량일 때 빠른 처리방법

푸른바다23 2020. 6. 8. 17:11

[ MYSQL ] [ MYSQL / ORACLE ] DB 데이터가  대용량일 때 빠른 처리방법

 

DB(데이터베이스)를 사용하다 보면 많은 데이터를 가지고 있을 때가 있다. 

 

이 경우 조금만 더 신경써주면 검색(SELECT), 삭제(DELETE) 시 속도 차이가 많이 난다. 

 

즉 처리완료시간이 단축된다. 

 

많은 방법들이 있지만 오늘은 간단히 할 수 있는 2가지 방법만 나열해본다. 

 

1. 인덱스(INDEX) 설정하기 

    => 자주 사용하는 컬럼(필드)를 인덱스로 설정하자.

    => 즉 SELECT, DELETE 의 조건(WHERE)으로 자주 사용하는 칼럼(필드)은 인덱스로 꼭 설정하자

 * CREATE INDEX <인덱스명> ON <테이블명>(컬럼);
 ex) CREATE INDEX history_log ON history_log(idx);

 

2. 서브쿼리 사용하지 않기 

    => 특히 개발자들이 많이 사용한다. 서브 쿼리는 SELECT 등의 처리속도를 감소시킨다. 

SELECT   name
       , (SELECT b.category_name 
      FROM category b 
  WHERE a.category_id = b.category_id)
FROM item

 

반응형