MySql 더미 데이터를 넣고 테스트 해보기

박진형·2022년 2월 23일
0

서론

쿼리의 성능을 측정하려면 데이터가 있어야되는데 유의미한 차이를 눈으로 확인하기 위해서는 꽤 많은 데이터가 필요할 수 있다.
이럴때에는 일일이 insert 쿼리를 날려주기 어려운데 프로시져를 이용해 더미데이터를 넣어주는 방법을 알아본다.

프로시저를 이용해 더미 데이터 삽입

먼저 테이블을 생성해준다. 적당히 조인도 할 수 있게끔 두개의 테이블을 생성해 준다.

프로시져를 작성한다.

DELIMITER $$ 
DROP PROCEDURE IF EXISTS dummyInsert;
 
CREATE PROCEDURE dummyInsert()
BEGIN
    DECLARE i INT DEFAULT 1;
        
    WHILE i <= 500 DO
        INSERT INTO test.test_table(name,title,content,tag)
          VALUES(concat('이름',i), concat('제목',i), concat("내용",i), concat("태그",i));
        SET i = i + 1;
    END WHILE;
END$$

call dummyInsert;

DELIMITER는 프로시저안의 세미콜론과 프로시저 작성이 끝났다는 의미의 구분자와 구분하기위해 지정하는 것

두번째 테이블에도 같은 방식으로 칼럼과 내용만 살짝씩 바꿔 프로시져를 실행한다.

더미 데이터 생성 결과

test_table에 96944개, order에 2,195,952개의 데이터가 삽입됐다.

쿼리 성능 체크

몇 개의 쿼리를 실행하여 실행 시간을 비교해 본다.
여기서 쿼리 실행 시간은 Duration이고 Fetch는 페치된 결과를 전송하는데 걸리는 시간이다.
그러므로 Duration을 집중적으로 보면 된다.

0개의 댓글