essayer de recueillir des échantillons 2 pct stats de plusieurs colonnes sur un VT
problème est, il n'échantillonne pas ou je manque quelque choseteradata recueillir les statistiques en utilisant l'échantillon ne marche pas travailler assez
COLLECT STATISTICS USING sample 2 percent
COLUMN (C1,C2,C3) ,
COLUMN (C1) on vt ,
Table de matières volatiles VT a quelques milliards et il faut autant de temps "pour toujours" pour collecter des statistiques sur VT que pour une collection de statistiques régulière.
Aussi ailleurs, dans une situation similaire dans le passé, j'ai observé si j'utilise la syntaxe de collecte de statistiques 'new' (many cols in one), il échantillonnerait le 1er col et ignorerait le reste (maintenant cette 2ème partie n'est pas vérifié tout le chemin depuis que je basé plus sur un « temps pris » contre peeping intuition dans le Histo.)
show stats values
COLUMN (C1,C2,C3) ,
COLUMN (C1) on vt;
COLLECT STATISTICS
COLUMN (C1,C2,C3)
ON vt
VALUES
(
/** SummaryInfo **/
/* Data Type and Length: 'I8:8', 'I:4', 'CF:1' */
/* TimeStamp */ TIMESTAMP '2016-03-29 16:16:13-00:00',
/* Version */ 6,
/* OriginalVersion */ 6,
/* DBSVersion */ '14.00.00',
/* UsageType */ 'D',
/* ComplexStatInfo */ 'ComplexStatInfo',
/* NumOfBiasedValues */ 0,
/* NumOfEHIntervals */ 200,
/* NumOfHistoryRecords */ 1,
/* SamplePercent */ 0.00,
/* NumOfNulls */ 0,
/* NumOfAllNulls */ 0,
/* NumOfPartialNullVals */ 0,
/* PartialNullHMF */ 0,
/* AvgAmpRPV */ 0.000000,
/* MinVal */ 2012070201942549261, 221945585, 'P',
/* MaxVal */ 2014022922306867633, 277308727, 'P',
/* ModeVal */ 2012070201942549261, 221945585, 'P',
/* HighModeFreq */ 1,
/* NumOfDistinctVals */ 1201056221,
/* NumOfRows */ 1201056221,
/* CPUUsage */ 0.000000,
/* IOUsage */ 0.000000,
/* Reserved */ 0,
/* Reserved */ 0,
/* Reserved */ 0.000000,
/* Reserved */ 0.000000,
/* Reserved */ '',
/* StatsSkipCount */ 0,
/* SysInsertCnt */ 0,
/* SysDeleteCnt */ 0,
/* SysUpdateCnt */ 0,
/* SysInsDelLastResetTS */ TIMESTAMP '9999-12-31 23:59:59-00:00',
/* SysUpdLastResetTS */ TIMESTAMP '9999-12-31 23:59:59-00:00',
/* IsSampleFollowingTrend*/ 0,
/** Interval: MaxVal[3], ModeVal[3], ModeFreq, LowFreq, OtherVals, OtherRows **/
ici
/* SamplePercent */ 0.00,
est ce que je vais par. Je suis sûr qu'il me manque quelque chose.
Hi Dieter .TY. Je suis tellement désolé, je peux sembler trompeur avec ce 5 milliard-j'ai un peu signifié que le (*) est en milliards (comme en véhiculant une table énorme) et n'avait pas payé attn aux détails. Corrigé le Q. Je pense que c'est arrivé parce que j'ai copié le VT avec des statistiques. Ce sont des statistiques périmées. Je vais donc devoir les laisser tomber pour que l'échantillonnage fonctionne? J'ai expliqué les 'collect stats'. Cela ne semble pas vouloir échantillonner. Donc, s'il existe des statistiques complètes sur un VT, vous ne pouvez pas échantillonner lors de votre 2ème passage. Pour que l'échantillonnage fonctionne, vous devez désactiver les statistiques complètes? TY à nouveau – user1874594
@ user1874594: Depuis TD14 le processus de collecte de statistiques se souvient du paramètre SAMPLE, donc quand vous avez collecté une fois 'UTILISATION DE L'ÉCHANTILLON 2 PERCENT' le prochain rappel gardera l'échantillon même si vous ne le spécifiez pas. Il suffit de lancer Explain. – dnoeth
@ user1874594: Je l'ai juste essayé et il semble que 'SAMPLE' ne fonctionne pas sur les tables volatiles, je ne sais pas si cela est documenté (au moins je ne l'ai pas encore vu). Vous devriez demander à Carrie Ballinger sur DevEx: http://developer.teradata.com/blog/carrie/2014/09/statistics-collection-recommendations-teradata-14-10-15-0-and-15-10 – dnoeth