一、為什么 Informix 數(shù)據(jù)庫需要定期 UPDATE STATISTICS
因?yàn)镮nformix 數(shù)據(jù)庫需要定期 UPDATE STATISTICS可以查詢統(tǒng)計(jì)優(yōu)化,對頻繁插入數(shù)據(jù)的表的進(jìn)行統(tǒng)計(jì)更新可以提高性能。對索引進(jìn)行統(tǒng)計(jì)更新。重建索引和重建數(shù)據(jù)庫后都應(yīng)該進(jìn)行該操作。
數(shù)據(jù)庫執(zhí)行sql時的執(zhí)行計(jì)劃是依賴于統(tǒng)計(jì)更新信息的, 統(tǒng)計(jì)更新信息里一般有數(shù)據(jù)庫表的數(shù)據(jù)分布情況,索引分布情況等等。 對經(jīng)常訪問的大表做統(tǒng)計(jì)更新可以讓執(zhí)行計(jì)劃更準(zhǔn)確。
像所熟悉的teradata rdbms也要求定期收集統(tǒng)計(jì)信息:
1.因?yàn)閠eradata的優(yōu)化器是cost-base的…所以優(yōu)化器需要數(shù)據(jù)庫表的各種信息來進(jìn)行開銷計(jì)算,從而決定執(zhí)行計(jì)劃。
2. 如果某個表沒有統(tǒng)計(jì)信息,優(yōu)化器會對該表進(jìn)行sample來獲得一個統(tǒng)計(jì)信息快照,通常是不準(zhǔn)確的,會影響到優(yōu)化器決定執(zhí)行計(jì)劃從而造成sql執(zhí)行緩慢,此時就需要收集或更新統(tǒng)計(jì)信息
3.這種應(yīng)該可以使用etl作業(yè)定時定期執(zhí)行。
延伸閱讀:
二、數(shù)據(jù)庫和 SQL 概念
數(shù)據(jù)庫(Database)是按照數(shù)據(jù)結(jié)構(gòu)來組織、存儲和管理數(shù)據(jù)的倉庫,它的產(chǎn)生距今已有六十多年。隨著信息技術(shù)和市場的發(fā)展,數(shù)據(jù)庫變得無處不在:它在電子商務(wù)、銀行系統(tǒng)等眾多領(lǐng)域都被廣泛使用,且成為其系統(tǒng)的重要組成部分。
數(shù)據(jù)庫用于記錄數(shù)據(jù),使用數(shù)據(jù)庫記錄數(shù)據(jù)可以表現(xiàn)出各種數(shù)據(jù)間的聯(lián)系,也可以很方便地對所記錄的數(shù)據(jù)進(jìn)行增、刪、改、查等操作。
結(jié)構(gòu)化查詢語言(Structured Query Language)簡稱 SQL,是上世紀(jì) 70 年代由 IBM 公司開發(fā),用于對數(shù)據(jù)庫進(jìn)行操作的語言。更詳細(xì)地說,SQL 是一種數(shù)據(jù)庫查詢和程序設(shè)計(jì)語言,用于存取數(shù)據(jù)以及查詢、更新和管理關(guān)系數(shù)據(jù)庫系統(tǒng),同時也是數(shù)據(jù)庫腳本文件的擴(kuò)展名。