Posted By: vejpuste (Libor Vejpustek) on 'CZprogram' Title: Re: analyze table... Date: Thu Sep 25 16:50:15 2003 > Posledne ste se tu tak hezky rozepsali o Oraclu, az me to mile prekvapilo. > :-) > Mam dalsi dotaz. Jedna se o to, ze je tu takovej dost trapnej dotaz "select > neco from nekde order by neco". Tenhle dotaz lezi uvnitr jinyho, kterej si > tam pridava rownum a bere jen prvnich par radek a znova to sortuje. > Tenhle dotaz tu funguje nejaky 2 mesice v pohode, ale pred dvema dnama nam > slezl zoufale vykon. Ta tabulka se docela meni, teda hlavne bobtna > inserty/selecty sou tak fity fifty. > Zjisitli sme, ze nam to na ten order by (podle primarniho klice) prestalo > pouzivat index. To je prvni zajimavy zjisteni. Proste si Oracle rek, ze uz > ho to s indexama neba. :-) > Co ted. Tak predevsim, aby aplikace jela, tak sme mu to pouziti indexu > vnutili > manualne a uz to jede zase dobre. Ja se chci ale zeptat, k cemu je analyze > table. Toho se totiz tyka to druhy zajimavy zjisteni. Kdyz totiz tu tabulku > necham zanalyzovat, tak ty indexy stejne nepouzije. Kdyz udelam analyze > delete > statistics, tak zacne index pouzivat a kdyz to pak zase udelam estimate > statistics i nad celou tabulkou(!), tak ho zas prestane pouzivat. Nevite > nekdo > cim to je? Chapu, ze nemuze bejt genialni a vedet vsechno, ze to nekdy selze > a > tak, ale takovych tabulek tu mame vicero. Zajima me tedy cim to je, cim se > to > da ovlivnit a hlavne cim ho ukecat, aby to nedelal. B-) Hlavne zalezi na obsahu sloupcu nad nimiz je index. Oracle provadi analyzu SQL prikazu a podle OPTIMIZER_MODE a obsahu pripadne statistiky ttabulky a indexu bud index pouzije nebo ne. Pokud je statistika tabulky a indexu zastarala, tak muze spatne vyhodnotit pouziti nebo nepouziti indexu. Obecne se da rict, ze pouziti indexu se vyplati v pripade, kdy select vybere co nejmin radku. Pokud vybere 90% radku a pak k nim musi dohledavat dalsi data v tabulce, tak je to naprosto zbytecne. Jako prvni muzes zkusit ruzne ladeni SQL pomoci direktiv se sledovanim co a jak se pouziva : set autot on. Pak se hlavne podivej na index, jestli je na rozumnem sloupci, na pocet zaznamu a obsah sloupce. Samo o sobe odladit nejake dotazy neni az tak slozite, ale chce to urcitou praxi a hlavne ladit, ladit, ladit. Libor Vejpustek Ceska zemedelska univerzita Praha http://web.czu.cz/~vejpuste/ E-mail : vejpuste@uvt.czu.cz