나는 약 30M 레코드가있는 테이블을 가지고 있으며 크기는 6.6GB입니다. 나는 그것에서 일부 데이터를 쿼리하고에 의해 그룹을 사용하여 주문해야합니다. 그것은 데이터를 쿼리하는 데 너무 오래 걸립니다, 나는 여러 번 DB에 연결을 잃었 ...mysql에서 대형 테이블을 최적화하는 방법은 무엇입니까?
나는 키와 합성 키로 모든 필수 필드에 대한 색인을 가지고 있습니다. 쿼리를 더 빨리 수행하려면 어떻게해야합니까?
예 쿼리 : 쿼리 쿼리입니다
select id, max(price), avg(order) from table group by id, date order by id, location.
물론 원하는 열만 지정하고 선택 쿼리에서는 *를 사용하지 않아야합니다. –
어디서나 WHERE 절을 사용하고 있습니까? 30M + 레코드를 가져 오는 경우 느린 동작이 예상됩니다. 실제로 PHP 스크립트가 시간 초과 될 수 있습니다. –
당신에게 옵션인지 모르겠지만 맵 축소 패러다임을 사용하는 mongodb 또는 couchbase와 같은 nosql 데이터베이스에서이를 수행하는 것이 좋습니다. – jbaylina