문제

특정 데이터베이스가 얼마나 큰지 알아내려고 합니다(아직 생성되지 않음).행 수와 테이블이 무엇인지 알고 있습니다.그러한 이론적 데이터베이스의 크기를 알려주는 기능이 Oracle에 있습니까?사용할 수 있는 알려진 수학 공식이 있나요?기존 데이터베이스의 크기를 결정하는 기능이 있다는 것을 알고 있지만, 생성하기 전에 데이터베이스의 크기가 얼마나 될지 알고 싶습니다.

도움이 되었습니까?

해결책

테이블의 열에 대한 데이터 유형의 크기에서 확인할 수 있습니다.그러면 해당 테이블의 행 크기를 대략적으로 추정할 수 있습니다.1~n개 테이블의 경우, 1개 테이블의 1개 행, x 테이블의 x개 행 = 주어진 행 크기에 대한 데이터베이스 추정치입니다.

장수인 것은 알고 있지만 이것이 제가 일반적으로 하는 방식입니다.

다른 팁

디자인의 프로토타입을 시도해 볼 수도 있습니다. 데이터베이스의 초기 버전을 만들고 일부 스크립트를 작성(또는 도구를 사용하여)하여 합리적인 양의 데이터로 테이블을 채울 수 있습니다.그러면 X 행이 얼마나 많은 공간을 차지하는지 확실히 알 수 있습니다.너무 많으면 디자인을 가지고 처음부터 다시 시작할 수 있습니다.데이터베이스를 생성하기 전에 수치를 원한다는 것을 알고 있지만 내부적으로 실제 데이터 파일에서 발생하는 모든 일을 설명할 수는 없습니다.

정확하게 말하면 이것은 매우 복잡해질 수 있습니다.예를 들어 MS SQL Server에서 수행하는 방법은 다음과 같습니다.

http://msdn.microsoft.com/en-us/library/aa933068(SQL.80).aspx

또한 추정치에 지수를 포함해야 합니다.나는 인덱스가 데이터만큼 큰 시스템을 본 적이 있습니다.내가 대답을 믿을 수 있는 유일한 방법은 Eric Z Beard가 제안한 것처럼 프로토타입을 만드는 것입니다.서로 다른 데이터베이스 시스템에는 서로 다른 오버헤드가 있지만 모두 그러한 오버헤드를 가지고 있습니다.

정확한 크기를 갖는 것은 그다지 중요하지 않았기 때문에 littlegeek의 방법을 사용했습니다.나는 내 테이블과 열이 무엇인지 알아냈고, 데이터 유형의 크기를 조회했습니다., 그런 다음 좋은 '올레 곱셈을 수행했습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top