Teradata 性能調(diào)優(yōu)

2018-01-12 16:37 更新

本章討論Teradata中性能調(diào)整的過程。

解釋

性能調(diào)整的第一步是在查詢中使用EXPLAIN。 EXPLAIN計(jì)劃提供優(yōu)化程序如何執(zhí)行查詢的詳細(xì)信息。在解釋計(jì)劃中,檢查關(guān)鍵字,如置信度級(jí)別,使用的連接策略,假脫機(jī)文件大小,重新分配等。

收集統(tǒng)計(jì)數(shù)據(jù)

優(yōu)化程序使用數(shù)據(jù)受眾特征來制定有效的執(zhí)行策略。 COLLECT STATISTICS命令用于收集表的數(shù)據(jù)人口統(tǒng)計(jì)。確保在列上收集的統(tǒng)計(jì)數(shù)據(jù)是最新的。
收集在WHERE子句中使用的列以及在連接條件中使用的列上的統(tǒng)計(jì)信息。
收集唯一主索引列的統(tǒng)計(jì)信息。
收集非唯一二級(jí)索引列的統(tǒng)計(jì)信息。優(yōu)化器將決定是否可以使用NUSI或全表掃描。
收集關(guān)于聯(lián)接索引的統(tǒng)計(jì)信息,盡管收集了基表上的統(tǒng)計(jì)信息。
收集分區(qū)列上的統(tǒng)計(jì)信息。

Data Types

確保使用正確的數(shù)據(jù)類型。這將避免使用超過所需的過量存儲(chǔ)。

Conversion

確保連接條件中使用的列的數(shù)據(jù)類型兼容,以避免顯式數(shù)據(jù)轉(zhuǎn)換。

Sort

刪除不必要的ORDER BY子句,除非必需。

Spool Space Issue

如果查詢超過該用戶的每個(gè)AMP卷軸空間限制,則會(huì)生成假脫機(jī)空間錯(cuò)誤。 驗(yàn)證解釋計(jì)劃并識(shí)別占用更多假脫機(jī)空間的步驟。 這些中間查詢可以拆分并單獨(dú)放置以構(gòu)建臨時(shí)表。

Primary Index

確保為表正確定義了主索引。主索引列應(yīng)均勻分布數(shù)據(jù),應(yīng)經(jīng)常用于訪問數(shù)據(jù)。

SET Table

如果定義了SET表,那么優(yōu)化器將檢查記錄是否與插入的每個(gè)記錄重復(fù)。要?jiǎng)h除重復(fù)檢查條件,可以為表定義唯一輔助索引。

UPDATE on Large Table

更新大表將是耗時(shí)的。您可以刪除記錄,并插入帶有修改行的記錄,而不是更新表。

Dropping Temporary Tables

刪除臨時(shí)表(臨時(shí)表)和揮發(fā)性(如果不再需要它們)。這將釋放永久空間和假脫機(jī)空間。

MULTISET Table

如果確定輸入記錄不具有重復(fù)記錄,則可以將目標(biāo)表定義為MULTISET表,以避免SET表使用重復(fù)行檢查。
以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)