Subject | Calculate table size |
---|---|
Author | Sean |
Post date | 2007-01-08T18:11:24Z |
Hi, I have a table with the following columns:
ID BIGINT NOT NULL,
A_ID BIGINT,
EVENT_NUMBER BIGINT,
EVENT_SOURCE VARCHAR(50),
EVENT_TYPE SMALLINT,
EVENT_TIME TIMESTAMP,
EVENT_MESSAGE VARCHAR(10240),
B_ID BIGINT
I added one record of
{1, 1, 1, 'abcdefghij', 1, '1/8/2006 12:00:00',
'abcdefghijklmnopqrstuvwxyz1234', null}. (The character set is
UNICODE_FSS)
gstat shows the record length is 556, which is far more than my
calculation of
4 * BIGINT + 1 * TIMESTAMP + 1 * SMALLINT + 10(/*EVENT_SOURCE*/) *
2(/*UNICODE*/) + 30(/*EVENT_MESSAGE*/) * 2(/*UNICODE*/) = 122 BYTES.
How does gstat calculate record length?
Best,
Sean
ID BIGINT NOT NULL,
A_ID BIGINT,
EVENT_NUMBER BIGINT,
EVENT_SOURCE VARCHAR(50),
EVENT_TYPE SMALLINT,
EVENT_TIME TIMESTAMP,
EVENT_MESSAGE VARCHAR(10240),
B_ID BIGINT
I added one record of
{1, 1, 1, 'abcdefghij', 1, '1/8/2006 12:00:00',
'abcdefghijklmnopqrstuvwxyz1234', null}. (The character set is
UNICODE_FSS)
gstat shows the record length is 556, which is far more than my
calculation of
4 * BIGINT + 1 * TIMESTAMP + 1 * SMALLINT + 10(/*EVENT_SOURCE*/) *
2(/*UNICODE*/) + 30(/*EVENT_MESSAGE*/) * 2(/*UNICODE*/) = 122 BYTES.
How does gstat calculate record length?
Best,
Sean