질문Q #3379
70만개의 데이타가 있는 XML를 파싱해서 DB에 넣을떄 속도를 올리는 방법 ?
람이2015-12-03 16:55:00
혹시 PHP에서
70만개의 데이타가 있는 XML를 파싱해서 DB에 넣을떄 속도를 올리는 방법 ?
$URL = "데이타 제공사의 XML URL";
simplexml_load_file($URL);
함수를 사용해서 foreach를 돌려 처리하는데 대략 4GB 서버로 약 20시간이 넘게 걸리는데요..
ㅇㅣ 고ㅏㅈㅓㅇ 중에는 if문도 있고 select * 문도 있습니다.
이 방식을 이용하면서 속도를 줄일 수 있는 방법이 있을까요 ?
apache2.4
php 5.6
mysql 5.5
ㅇㅣㅁㅕ 물론 내부 로직에 따라 속도에 영향을 주는 점은 감안하고 질문을 남깁니다.
끊어서 읽을 수 있는 구조라면 모를까 전체를 다 읽어서 변환해야 하는 것이면 빨리 읽어들이는 방법(사양 업그레이드)밖에는... ^^;
파일 읽어서 변환되는데까지 얼마나 걸리는지 체크해보세요. 그게 얼마 안걸리면 로직 개선을 하면 되는거구요.
그게 오래 걸리면 답은 사양 업그레이드나 저장형식 변경밖에 없습니다.