Книга - Оптимизация запросов в системах баз данных
статья - Методы оптимизации запросов в реляционных системах
Использование статистики оптимизатором запросов Microsoft SQL Server 2005
1. Статистика в MSSQL
1.1.Получение статистики для внутренних и пользовательских объектов текущей БД.
Синтаксис:
sp_createstats [ [ @indexonly = ] 'indexonly' ]
[ , [ @fullscan = ] 'fullscan' ]
[ , [ @norecompute = ] 'norecompute' ]
1.2. Получение статистики по объекту БД (таблице, представлению, полю)
Синтаксис:
CREATE STATISTICS statistics_name
ON { table | view } ( column [ ,...n ] )
[ WITH
[ [ FULLSCAN
| SAMPLE number { PERCENT | ROWS }
| STATS_STREAM = stats_stream ] [ , ] ]
[ NORECOMPUTE ]
] ;
Показать созданные объекты статистики
Синтаксис:
DBCC SHOW_STATISTICS ( table_or_indexed_view_name , target )
[ WITH [ NO_INFOMSGS ] < option > [ , n ] ]
< option > :: =
STAT_HEADER | DENSITY_VECTOR | HISTOGRAM | STATS_STREAM
Пример:
create statistics myfirst on personal(lastname) with fullscan
dbcc show_statistics (personal,myfirst)
2. Статистика в Oracle
2.1. Для получения информации о последней дате сбора статистики по объекту конкретного пользователя,можно использовать запрос:
select * from USER_TABLE
2.2. Для получения статистики аппаратной части
Собираем статистику:
begin
dbms_stats.gather_system;
end;
Просмотр собранной статистики:
select * from sys.aux_stats$
Хорошая статья по анализу собранной системной статистики тут
2.3. Для получения статистики по database
begin
dbms_stats.gather_database_stats;
end;
2.4. Для получения статистики по schema
begin
dbms_stats.gather_schema_stats('nya', stattab=>'mystat');
end;
2.5. Для получения статистики по table
begin
dbms_stats.gather_table_stats ('nyaka',tabname=>'nya',stattab=>'mystat');
end;
Справочная информация по DBMS_STATS - тут и тут
статья - Методы оптимизации запросов в реляционных системах
Использование статистики оптимизатором запросов Microsoft SQL Server 2005
1. Статистика в MSSQL
1.1.Получение статистики для внутренних и пользовательских объектов текущей БД.
Синтаксис:
sp_createstats [ [ @indexonly = ] 'indexonly' ]
[ , [ @fullscan = ] 'fullscan' ]
[ , [ @norecompute = ] 'norecompute' ]
1.2. Получение статистики по объекту БД (таблице, представлению, полю)
Синтаксис:
CREATE STATISTICS statistics_name
ON { table | view } ( column [ ,...n ] )
[ WITH
[ [ FULLSCAN
| SAMPLE number { PERCENT | ROWS }
| STATS_STREAM = stats_stream ] [ , ] ]
[ NORECOMPUTE ]
] ;
Показать созданные объекты статистики
Синтаксис:
DBCC SHOW_STATISTICS ( table_or_indexed_view_name , target )
[ WITH [ NO_INFOMSGS ] < option > [ , n ] ]
< option > :: =
STAT_HEADER | DENSITY_VECTOR | HISTOGRAM | STATS_STREAM
Пример:
create statistics myfirst on personal(lastname) with fullscan
dbcc show_statistics (personal,myfirst)
2. Статистика в Oracle
2.1. Для получения информации о последней дате сбора статистики по объекту конкретного пользователя,можно использовать запрос:
select * from USER_TABLE
2.2. Для получения статистики аппаратной части
Собираем статистику:
begin
dbms_stats.gather_system;
end;
Просмотр собранной статистики:
select * from sys.aux_stats$
Хорошая статья по анализу собранной системной статистики тут
2.3. Для получения статистики по database
begin
dbms_stats.gather_database_stats;
end;
2.4. Для получения статистики по schema
begin
dbms_stats.gather_schema_stats('nya', stattab=>'mystat');
end;
2.5. Для получения статистики по table
begin
dbms_stats.gather_table_stats ('nyaka',tabname=>'nya',stattab=>'mystat');
end;
Справочная информация по DBMS_STATS - тут и тут
Комментариев нет:
Отправить комментарий