Warning: Declaration of Suffusion_MM_Walker::start_el(&$output, $item, $depth, $args) should be compatible with Walker_Nav_Menu::start_el(&$output, $item, $depth = 0, $args = Array, $id = 0) in /DISK2/WWW/plsql.cz/www/wp-content/themes/suffusion/library/suffusion-walkers.php on line 0
Nov 112012
 

Hintování se stává národním sportem! No, dobře, přeháním – semtam sem přijde někdo s dotazem na hinty. Přiznejme si, že hinty INDEX, FIRST_ROWS, USE_HASH, DRIVING_SITE, FULL.. jsou ty nejpoužívanější, ale špatně se o nich něco píše – nejsou prostě zajímavé (nebo alespoň mi tak nepřípadají) a dokumentace je vcelku dobře popisuje, včetně příkladů. Nicméně pár chvil bych hintům věnovat mohl – ovšem jen těm nejlepším a nejzajímavějším kouskům ;)

Takže hint číslo jedna: CARDINALITY

Důvodů, proč jsem si vybral tento hint jsou tři: Jednak se moc dobře hodí na předchozí článek :Naděje na stejný exekuční plán po paralelizaci , není dokumentovný a především je slibováno, že od Oracle 12c, bude oficiálním hintem. A zrovna tento hint je tak něja považován za “bezepčný” i když není pro 10g ani 11g oficiálně posvěcený Oraclem.

Hint slouží vnucení estimátoru správnou cardinalitu, kterou z nějakého důvodu správně neurčí (z jakéhokoliv důvodu – statistiky, nevhodně nastavený dynamic_sampling parametr nebo prostě pricnipálně nemůže kombinaci daných predikátů podchytit)

Synaxe: /*+ cardinality(<tabulka> <cardinalita> ) */

Takže s minulého postu, podstatně jednodušeji, nedokumentovaným hintem:

Nedokumentovaný hint cardinality

Nedokumentovaný hint cardinality

 Šikovná věcička, minimálně se hodí na odlaďování – nápověda Oracle, kolik řádků má očekávat a po té nejspíše jinak sestaví exekuční plán – a po té jeho prozkoumání, podobně jako s DYNAMIC_SAMPLING hintem, ale o něm třeba příště ;)

 Posted by at 16:50

  One Response to “Hint 1. – cardinality(tbl 100)”

  1. [...] CARTDINALITY – který podle internetových diskuzí vypadalo, že  “zlegalizují” a stane se [...]

 Leave a Reply

(required)

(required)

(required)

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>