thank you for your reply.
I understand that in the storagemodel table (), the heapsize column shows the maximum size that can be used.
This size may also be obtained by multiplying the table storage columns "count" and " typewitdh "
This size should not logically be exceeded.
To detect fragmented columns do you think of this request ?
select "table","column","type","count",typewidth,columnsize,(heapsize/1021/1024) as mega,heapsize/(count*typewidth) as taux,heapsize,count*typewidth as heapsize_max FROM sys.storage WHERE heapsize > count*typewidth AND heapsize > 100000 AND typewidth>0 AND count >0 ORDER BY taux ;
The bottom lines are the fields to be defragmented
Example with my database :
| src__at__tra__visites_agregees | idvisite | varchar | 47178937 | 1 | 188715748 | 321 | 7 | 335609856 | 47178937 |
| src__at__tra__visites_thomas | idvisiteur | varchar | 6310678 | 19 | 25242712 | 902 | 7 | 943718400 | 119902882 |
| test_integrite_tra | idvisite | varchar | 19681703 | 2 | 78726812 | 266 | 7 | 278921216 | 39363406 |
| src__at__tra__visites | idvisite | varchar | 23134243 | 2 | 92536972 | 316 | 7 | 331350016 | 46268486 |
| src_inbox__at__tra__visites | idvisite | varchar | 22812014 | 2 | 91248056 | 310 | 7 | 324337664 | 45624028 |
| src__at__lm__visites | idvisite | varchar | 331519688 | 1 | 1326078752 | 3513 | 11 | 3673489408 | 331519688 |
| test_integrite | idvisite | varchar | 394962662 | 1 | 3159701296 | 4200 | 11 | 4392091648 | 394962662 |
| sc_septembre | idvisiteur | varchar | 24155689 | 19 | 193245512 | 7224 | 16 | 7553548288 | 458958091 |
| sc_aout | idvisiteur | varchar | 29586396 | 19 | 236691168 | 14449 | 26 | 15107031040 | 562141524 |
| src__at__tra__visites_thomas | idvisite | varchar | 6310678 | 2 | 25242712 | 402 | 33 | 420675584 | 12621356 |
+--------------------------------------+---------------------+---------+-----------+-----------+------------+-------+------+-------------+--------------+
Pierre
--
1G6
52 route de bischwiller
67300 Schiltigheim
Société de Services et de Formations en Logiciels Libres
http://1g6.biz
Tél : 06 64 63 70 35
----- Mail original -----
De: "Martin Kersten"
Hello Hi
Before working with optimizer, Stethoscope and Tomograph, first I have to defragment the fragmented tables. How to detect fragmented tables? The heap size is larger then the expected count would indicate. Write a script that reads heapsize column? The storagemodel could give you hints on expected sizes.
select *, (heapsize / 1021/1024/1024) as giga from sys.storage heapsize ORDER BY DESC LIMIT 20; What do you think? select *, (heapsize / 1021/1024/1024) as giga from sys.storage order by heapsize desc limit 20;
or a more specific sql query by reading the column "count", "typewidth", "ColumnSize" and "heapsize"?
regards, Martin
thank
Pierre
-- 1G6 52 route de bischwiller 67300 Schiltigheim Société de Services et de Formations en Logiciels Libres http://1g6.biz Tél : 06 64 63 70 35
_______________________________________________ users-list mailing list users-list@monetdb.org https://www.monetdb.org/mailman/listinfo/users-list
_______________________________________________ users-list mailing list users-list@monetdb.org https://www.monetdb.org/mailman/listinfo/users-list