Translation not up to date
Shromažďuje statistiky pro virtualizované tabulky v produktu Watson Query. Optimalizátor Watson Query používá tyto statistiky k určení optimálních přístupových plánů pro efektivní zpracování dotazů. Schéma je DVSYS
.
S více statistikami tabulky může optimalizátor provést lepší rozhodnutí, aby poskytl nejlepší možné přístupové plány. Když spustíte příkaz COLLECT_STATISTICS
na tabulce, následné dotazy na tuto tabulku se obvykle spouštějí výrazně rychleji. Další informace naleznete v tématu Shromažďování statistiky v produktu Watson Query.
- Použijte příkaz ANALYZE (místo procedury
COLLECT_STATISTICS
), abyste shromáždili statistiky o virtualizovaných tabulkách nad úložištěm objektů. Další informace viz Příkaz ANALYZE. Chcete-li určit, které virtualizované tabulky se vytvářejí nad úložištěm objektů, můžete filtrovat virtualizované objekty podle typu. Vyberte Object Storage, Tabulkanebo Pohled v nabídce Filtrovat v . - Použijte proceduru
SYSPROC.NNSTAT
(místo proceduryCOLLECT_STATISTICS
), abyste shromáždili statistiky o virtualizovaných tabulkách přes nestrukturované soubory, které nejsou v paměti objektů. Další informace viz SYSPROC.NNSTAT uložená procedura.
Vstupní parametry
- virtschema
- Typ tohoto povinného parametru je VARCHAR (128). Uvádí název schématu virtualizované tabulky.
- virtname
- Typ tohoto povinného parametru je VARCHAR (128). Uvádí název virtualizované tabulky.
- sloupce virtcolumns
- Typ tohoto volitelného parametru je VARCHAR (32672). Určuje seznam názvů sloupců oddělených čárkami, pro které má být shromažďována statistika. Hodnota null určuje, že statistika má být shromažďována pro všechny sloupce. Prázdný řetězec určuje, že se nemají shromažďovat žádné statistiky sloupců. V tomto případě je shromažďována pouze kardinalita tabulky. Pokud název sloupce obsahuje speciální znaky, musí být název uzavřen do dvojitých uvozovek.
- typ_kolekce
- Typ tohoto povinného parametru je SMALLINT. Uvádí metodu shromažďování statistických údajů. Platné hodnoty jsou 1 (metodaremote-catalog ) a 2 (metodaremote-query ):
- vzdálený katalog
- Tento typ shromažďování statistických údajů je podporován pouze pro virtualizované tabulky ve vzdálených zdrojích dat, které podporují lokální metodu shromažďování statistických údajů. Statistiky, které jsou uloženy v tabulkách katalogu na vzdáleném zdroji dat, se načtou a pak uloží do katalogu statistiky Watson Query . Je důležité zajistit, aby byly ve vzdáleném zdroji dat k dispozici přesné statistiky. Typ remote-catalog kolekce statistik není podporován pro seskupené tabulky.
- vzdálený-dotaz
- Tento typ kolekce statistik používá dotazy SQL pro virtualizovanou tabulku k výpočtu statistiky. Tento typ může být náročný na prostředky a dokončení může trvat dlouho, pokud má virtualizovaná tabulka mnoho řádků nebo statistik, které jsou shromažďovány pro mnoho sloupců.
- options
- Typ tohoto volitelného parametru je VARCHAR (32672). Určuje čárkami oddělený seznam dodatečných parametrů. Tento parametr je vyhrazen pro budoucí použití.
Výstupní parametry
- diagnostika
- Typ tohoto parametru je VARCHAR (32672). Představuje diagnostický výstup, pokud dojde k selhání, a souhrn shromážděných statistik se zkrácenými výsledky.
Poznámky k použití
- Chcete-li provádět významné změny dat ve vzdáleném zdroji dat, spusťte proceduru COLLECT_STATISTICS buď přímo, nebo prostřednictvím webového klienta Watson Query .
- Pokud název sloupce obsahuje speciální znaky, musí být název uzavřen do dvojitých uvozovek.
- Pokud vzdálený zdroj dat podporuje nástroje pro shromažďování lokálních statistik, ujistěte se, že jsou shromažďovány lokální statistiky a že se používá metoda remote-catalog pro shromažďování statistiky na virtualizované tabulce.
- Pokud vzdálený zdroj dat nepodporuje nástroje pro shromažďování lokálních statistik, je jedinou dostupnou volbou dostupná metoda remote-query .
- Pro sloupce typu LOB se shromažďuje pouze statistika NUMNULLS.
Příklady
Následující příklady používají virtualizované tabulky nad tabulkami, které jsou součástí databáze SAMPLE v produktu IBM® Db2®. Další informace viz Databáze SAMPLE.
- Chcete-li shromáždit statistické údaje pro všechny sloupce v tabulce, použijte metodu remote-catalog .
call dvsys.collect_statistics('SAMPLE', 'DEPARTMENT', null, 1, null, ?)
Value of output parameters -------------------------- Parameter Name : DIAGS Parameter Value : Collected statistics for table "SAMPLE "."DEPARTMENT": Table Cardinality = 14 Column "LOCATION" [CHAR(16)]: colcard=1, numnulls=14, highkey="", lowkey="" Column "ADMRDEPT" [CHAR(3)]: colcard=3, numnulls=0, highkey="E01", lowkey="A00" Column "DEPTNAME" [VARCHAR(36)]: colcard=14, numnulls=0, highkey="SPIFFY COMPUTER SERVICE DIV.", lowkey="BRANCH OFFICE F2" Column "MGRNO" [CHAR(6)]: colcard=9, numnulls=6, highkey="000100", lowkey="000020" Column "DEPTNO" [CHAR(3)]: colcard=14, numnulls=0, highkey="I22", lowkey="B01" Return Status = 0
- Chcete-li shromáždit statistické údaje pro všechny sloupce v tabulce, použijte metodu remote-query .
call dvsys.collect_statistics('SAMPLE', 'DEPARTMENT', null, 2, null, ?)
Value of output parameters -------------------------- Parameter Name : DIAGS Parameter Value : Collected statistics for table "SAMPLE "."DEPARTMENT": Table Cardinality = 14 Column "LOCATION" [CHAR(16)]: colcard=1, numnulls=14, highkey="", lowkey="" Column "ADMRDEPT" [CHAR(3)]: colcard=3, numnulls=0, highkey="E01", lowkey="A00" Column "DEPTNAME" [VARCHAR(36)]: colcard=14, numnulls=0, highkey="SUPPORT SERVICES", lowkey="ADMINISTRATION SYSTEMS" Column "MGRNO" [CHAR(6)]: colcard=9, numnulls=6, highkey="000100", lowkey="000010" Column "DEPTNO" [CHAR(3)]: colcard=14, numnulls=0, highkey="J22", lowkey="A00" Return Status = 0
- Chcete-li shromáždit statistické údaje pro některé sloupce v tabulce, použijte metodu remote-query .
call dvsys.collect_statistics('SAMPLE', 'DEPARTMENT', 'DEPTNO,DEPTNAME,LOCATION', 2, null, ?)
Value of output parameters -------------------------- Parameter Name : DIAGS Parameter Value : Collected statistics for table "SAMPLE "."DEPARTMENT": Table Cardinality = 14 Column "LOCATION" [CHAR(16)]: colcard=1, numnulls=14, highkey="", lowkey="" Column "DEPTNAME" [VARCHAR(36)]: colcard=14, numnulls=0, highkey="SUPPORT SERVICES", lowkey="ADMINISTRATION SYSTEMS" Column "DEPTNO" [CHAR(3)]: colcard=14, numnulls=0, highkey="J22", lowkey="A00" Return Status = 0
- Chcete-li shromáždit pouze statistiku tabulky, použijte metodu remote-query .
call dvsys.collect_statistics('SAMPLE', 'DEPARTMENT', '', 2, null, ?)
Value of output parameters -------------------------- Parameter Name : DIAGS Parameter Value : Collected statistics for table "SAMPLE "."DEPARTMENT": Table Cardinality = 14 Return Status = 0
- Metoda remote-query se používá k pokusu o shromažďování statistických údajů pro sloupec, který není definován v tabulce.
call dvsys.collect_statistics('SAMPLE', 'DEPARTMENT', 'DEPTNO,FIRSTNME', 2, null, ?)
Value of output parameters -------------------------- Parameter Name : DIAGS Parameter Value : ERROR: VALIDATE COLUMN FILTER LIST -- Invalid column "FIRSTNME" in virtColumns Return Status = 0
- Metoda remote-catalog se používá ke shromažďování statistických údajů, pokud vzdálený katalog neobsahuje žádné statistiky pro lokální tabulku.
call dvsys.collect_statistics('SAMPLE', 'DEPARTMENT', null, 1, null, ?)
Value of output parameters -------------------------- Parameter Name : DIAGS Parameter Value : WARNING: No statistics found in remote catalog for table "SAMPLE "."DEPARTMENT" Return Status = 0
- Metoda remote-catalog se používá ke shromažďování statistických údajů, jsou-li zadány sloupce se speciálními znaky.
call dvsys.collect_statistics('SAMPLE', 'SpecialChars', '"Col,1","Col""2"', 2, null, ?)
Value of output parameters -------------------------- Parameter Name : DIAGS Parameter Value : Collected statistics for table "SAMPLE "."SpecialChars": Table Cardinality = 4 Column "Col,1" [INTEGER]: colcard=3, numnulls=0, highkey="3", lowkey="1" Column "Col"2" [INTEGER]: colcard=3, numnulls=1, highkey="2", lowkey="1" Return Status = 0