2012-01-25 2 views
2

이 질문은 정확한 대답을 얻지 못할 것이라는 점을 이해합니다. 나는 볼 파크 피규어에 갈거야.Mysql : 합리적으로 열 또는 인덱스 추가 기간을 예측하십시오.

기본적으로이 질문에 대답하는 방법이 필요합니다.이 열 또는 인덱스를 추가하면 1 분, 10 분 또는 1 시간 동안 테이블을 잠글 것입니까? 이것이 구현인지 여부를 알 필요가있는 이유는 고객에게 서비스 중단을 알리거나 사용량이 가장 적은 시간에이를 수행 할 수 있도록해야한다는 것입니다. 내가 실현

나는 등 기계 성능, 현재의 시스템 부하 이상적으로

으로 분명하지 않은 것들에 집중할 싶습니다,이 같은 질문에 관여하는 요인이 많이 있지만 같은 어떤 종류의 공식적인 :

(Number of Rows) * (0.01 Secs) * (Some unknown factors) = 112.secs

또한 인덱스가 열을 추가 사이에 상당한 차이가있다? 추가되는 여러 유형의 열은 어떻게됩니까?

또 다른 질문을 던지려면 alter 문이 느리거나 매우 느릴지를 결정하는 가장 큰 요인은 무엇입니까?

답변

3

가장 좋은 접근 방법은 야간 백업에서 생성되는 동일한 데이터 세트를 사용하는 유사한 하드웨어에서 데이터베이스의 준비 복사본을 만드는 것입니다.

그런 다음 스키마 수정을 두려움없이 시도 할 수 있으며 소요 시간을 대략적으로 알 수 있습니다. 물론로드중인 데이터베이스는 그렇지 않은 데이터베이스보다 오래 걸립니다. 이 문제를 해결하려면 스키마 변경을 시도하는 동안 공통 응용 프로그램 작업을 실행하는 준비 데이터베이스에 대해로드 테스트 스크립트를 실행할 수 있습니다.

+0

나는 귀하의 권리를 생각합니다. mysql 개발자가 없으면 좋은 수식을 얻는 것이 어려울 것이며 이것은 여전히 ​​볼 파크를 제공합니다. 그것이 더 많은 일이지만, 아무것도하지 못하는 것보다 낫다고 인정했습니다. – SeanDowney