2016-08-17 2 views
0

수천 개의 행이 있고 테이블 크기가 100MB 이상인 WordPress 데이터베이스에 테이블이 있다고 가정합니다.테이블을 사용하지 않을 때 테이블 크기가 데이터베이스 성능에 영향을 줍니까?

이 테이블은이 특정 테이블에 대한 쿼리가 없어도 데이터베이스의 전체 성능에 영향을 줍니까?

+0

짧은 대답 아니, 오래 대답 할 수있다. – Hogan

+0

데이터베이스에서 사용되지 않는 테이블의 요점은 무엇입니까? – Nicarus

+0

사용자가 워드 프레스 백엔드에서 플러그인에 액세스 할 때 테이블이 사용됩니다. 커다란 테이블이 프론트 엔드 성능이나 다른 플러그인에 영향을 준다면 관심이 있습니다. 내가 뭐라는지 알 겠어? –

답변

0

데이터 저장 방식에 따라 다릅니다. 100MB의 데이터가 근접한 블록에 저장되면 변경되지 않습니다. 데이터가 더 많으면 Fragmented이고 더 작은 블록을 사용하는 다른 작은 테이블에서도 조각화가 발생하면 성능이 저하 될 수 있습니다.

작은 테이블의 경우 데이터베이스가 테이블을 캐시하고 결과를 읽을 때 디스크 저장 메커니즘이 중요하지 않은 경우가 있습니다.

+0

나는 귀하의 답을 열 번 읽었습니다. 그래서 저장된 행이 삭제되고 행 사이에 빈 블록이있을 때 sql 결과의 조각화가 발생합니까? 맞습니까? 제 경우에는 플러그인이 새로운 행을 광고하고 특정 날짜가 초과 될 때 끝에 행을 삭제합니다. 그래서 분열이 없습니까? –

+0

한 번에 모든 데이터를 삽입하지 않을 것입니다. 처음에 10MB 크기의 데이터 레코드가 테이블 A에 삽입되고 블록 크기가 데이터베이스 구성에 따라 8k라고하면 필요한 저장소는 10000/8 = 1250 블록입니다. 1MB 크기의 테이블 B가 세 개 더 있다고 가정하면 1000/8 = 125 블록이 사라집니다. 그런 다음 A에 대한 10MB 삽입을 수행 한 다음 테이블 B에 대한 후속 삽입을 수행한다고 가정하십시오. 표 A는 두 번째 삽입 세트를 시작하여 조각화됩니다. 삭제를 수행하면 삭제 된 공간을 다른 테이블에 다시 사용할 수 있습니다. – randominstanceOfLivingThing

+0

데이터베이스 저장소 엔진은 사용자가 수행하는 CRUD 작업을 관리합니다. 지침을 직접 발행하지 마십시오. – randominstanceOfLivingThing

관련 문제