SQL Server에서 데이터 파일을 데이터베이스 테이블로 가져 오거나 사용자 지정 형식으로보기

(1) 여러 개의 Insert 구문 수행시 Values 리스트를 다중으로 사용하는 것이 성능을 향상시킬 수 있다. 

(2) 여러 클라이언트에서 Insert 시 Insert Delayed 를 통해 속도 개선이 가능하다. 이 구문을 이용하면 수행 응답이 큐에 적재되고 테이블이 사용되지 않을 때 삽입한다. 

(3) 파일 스트림으로부터 대량의 데이터를 삽입 시 Load Data Local Infile 구문을 이용해서 필드 구문자로 정리된 File을 MySQL DB로 Redirection 시킬 수 있다. 

(4) Index가 많이 사용된 테이블에 대량으로 Insert 시 Index를 비활성화한 후 수행하는 것이 좋다. 

(5) 트랜잭션을 지원하는 테이블의 경우, Start Transaction과 Commit을, 지원하지 않는 테이블의 경우 테이블 잠금을 실행하면 성능이 향상된다. (이유는 버퍼 플러시가 매번 수행되지 않고 작업이 끝난 후 수행되기 때문이다.)

(6) Buffer Size 의 조절을 통해 성능 향상이 가능하다.


참고 사이트: https://jins-dev.tistory.com/entry/MySQL-에서의-Bulk-Inserting-성능-향상
참고 사이트: https://docs.microsoft.com/en-us/sql/t-sql/statements/bulk-insert-transact-sql?view=sql-server-ver15

'RDBMS(mysql,mssql)' 카테고리의 다른 글

[MSSQL] MSSQL 실습  (0) 2018.08.03
[MSSQL][펌] 인덱스 성능차이 실습  (0) 2018.08.03
[MSSQL] 다수의 데이터 INSERT  (0) 2018.08.03
[MSSQL] 14.트리거,커서 (Trigger, Cursor)  (0) 2018.08.01
[MSSQL] 15.인덱스(INDEX)  (0) 2018.08.01

+ Recent posts