Exportar (0) Imprimir
Expandir todo

dta (utilidad)

La utilidad dta es la versión del símbolo del sistema del Asistente para la optimización de motor de base de datos. La utilidad dta está diseñada para permitir usar la funcionalidad del Asistente para la optimización de motor de base de datos en aplicaciones y scripts.

Al igual que el Asistente para la optimización de motor de base de datos, la utilidad dta analiza una carga de trabajo y recomienda estructuras de diseño físico para mejorar el rendimiento del servidor para esa carga de trabajo. La carga de trabajo puede ser una tabla o un archivo de seguimiento del Analizador de SQL Server o un script de Transact-SQL. Las estructuras de diseño físico incluyen índices, vistas indizadas y particiones. Después de analizar una carga de trabajo, la utilidad dta crea una recomendación para el diseño físico de bases de datos y puede generar el script necesario para implementar la recomendación. Las cargas de trabajo se pueden especificar desde el símbolo del sistema con el argumento -if o -it. También puede especificar un archivo de entrada XML desde el símbolo del sistema con el argumento -ix. En ese caso, la carga de trabajo se especifica en el archivo de entrada XML.



            dta
                    [ -? ] |
     [
          [ -S server_name[ \instance ] ]
          {
              { -U login_id [-P password ] }
              | –E             }
              { -D database_name [ ,...n ] }
                  [-d database_name ] 
                  [ -Tl table_list | -Tf table_list_file ]
              { -if workload_file | -it workload_trace_table_name }
              { -ssession_name | -IDsession_ID }
                  [ -F ]
                          [ -of output_script_file_name ]
                          [ -or output_xml_report_file_name ]
                          [ -ox output_XML_file_name ]
                          [ -rl analysis_report_list [ ,...n ] ]
                          [ -ix input_XML_file_name ]
                          [ -A time_for_tuning_in_minutes ]
                          [ -n number_of_events ]
                  [ -m minimum_improvement ]
                          [ -fa physical_design_structures_to_add ]
                          [ -fi ]
                          [ -fp partitioning_strategy ]
                          [ -fk keep_existing_option ]
                          [ -fx drop_only_mode ]
                  [ -B storage_size ]
                  [ -c max_key_columns_in_index ]
                  [ -C max_columns_in_index ]
                          [ -e | -e tuning_log_name ]
                          [ -N online_option]
                          [ -q ]
                        [ -u ]
                       [ -x ]
                       [ -a ]
     ]

-?

Muestra información de uso.

-Atime_for_tuning_in_minutes

Especifica el límite de tiempo de optimización en minutos. dta utiliza el tiempo especificado para optimizar la carga de trabajo y generar un script con los cambios de diseño físico recomendados. De forma predeterminada dta asume un tiempo de optimización de 8 horas. Si especifica 0, se permite un tiempo de optimización ilimitado. dta puede acabar de optimizar toda la carga de trabajo antes de que pase el límite de tiempo. No obstante, para asegurarse de que se optimiza toda la carga de trabajo, se recomienda especificar un tiempo de optimización ilimitado (-A 0).

-a

Optimiza la carga de trabajo y aplica la recomendación sin preguntarle.

-Bstorage_size

Especifica el espacio máximo en megabytes que puede usar la partición y el índice recomendados. Cuando se optimizan varias bases de datos, se tienen en cuenta las recomendaciones para todas las bases de datos sobre el cálculo del espacio. De forma predeterminada, dta asume el menor de los siguientes tamaños de almacenamiento:

  • Tres veces el tamaño actual de los datos sin procesar, que incluye el tamaño total de los clúster y montones de las tablas de la base de datos.

  • El espacio disponible en todas las unidades de disco adjuntas más el tamaño de los datos sin procesar.

El tamaño de almacenamiento predeterminado no incluye los índices no clúster ni las vistas indizadas.

-Cmax_columns_in_index

Especifica el número máximo de columnas en los índices propuestos por dta. El valor máximo depende de la versión de SQL Server. El valor máximo en SQL Server 2000 es 16, mientras que en SQL Server 2005y SQL Server 2008 es 1024. De forma predeterminada, este argumento tiene asignado el valor 16 .

-cmax_key_columns_in_index

Especifica el número máximo de columnas de clave en los índices propuestos por dta. El valor predeterminado es 16, que es el valor máximo permitido. Este argumento sólo se aplica a SQL Server 2005 y SQL Server 2008. dta también tiene en cuenta la creación de índices con columnas incluidas. Los índices recomendados con columnas incluidas pueden sobrepasar el número de columnas especificado en este argumento.

-Ddatabase_name

Especifica el nombre de cada base de datos que se va a optimizar. La primera base de datos es la base de datos predeterminada. Puede especificar varias bases de datos separando los nombres de la base de datos con comas, por ejemplo:

dta –D database_name1, database_name2...

De forma alternativa, puede especificar varias bases de datos utilizando el argumento –D para cada nombre de base de datos, por ejemplo:

dta –D database_name1 -D database_name2... n

El argumento -D es obligatorio. Si el argumento -d no se ha especificado, dta inicialmente se conecta con la base de datos que se ha especificado con la primera cláusula de USE database_name en la carga de trabajo. Si no hay ninguna cláusula explícita de USE database_name en la carga de trabajo, debe usar el argumento -d.

Por ejemplo, si tiene una carga de trabajo que no contiene ninguna cláusula explícita de USE database_name y utiliza el siguiente comando de dta, no se generará ninguna recomendación:

dta -D db_name1, db_name2...

No obstante, si usa la misma carga de trabajo y utiliza el siguiente comando de dta que usa el argumento -d, se generará una recomendación:

dta -D db_name1, db_name2 -d db_name1
-ddatabase_name

Especifica la primera base de datos a la que se conecta dta cuando optimiza una carga de trabajo. Sólo se puede especificar una base de datos para este argumento. Por ejemplo:

dta -d adventureworks2008R2 ...

Si se especifican varios nombres de bases de datos, dta devuelve un error. El argumento -d es opcional.

Si utiliza un archivo de entrada XML, puede especificar la primera base de datos a la que se conecta dta utilizando el elemento DatabaseToConnect que se encuentra debajo del elemento TuningOptions. Para obtener más información, vea Referencia del archivo de entrada XML (Asistente para la optimización de motor de base de datos).

Si sólo optimiza una base de datos, el argumento -d proporciona una funcionalidad similar al argumento -d en la utilidad sqlcmd, pero no ejecuta la instrucción USE de database_name. Para obtener más información, vea sqlcmd (utilidad).

-E

Utiliza una conexión de confianza en lugar de solicitar una contraseña. Debe usarse el argumento -E o el argumento -U, que especifica un Id. de inicio de sesión.

-etuning_log_name

Especifica el nombre de la tabla o del archivo en el que dta registra eventos que no puede optimizar. La tabla se crea en el servidor en el que se realiza la optimización.

Si se usa una tabla, especifique su nombre en el formato [database_name].[owner_name].table_name. La siguiente tabla muestra los valores predeterminados para cada parámetro:

Parámetros

Valor predeterminado

database_name

database_name especificado con la opción –D

owner_name

dbo

NotaNota
owner_name debe ser dbo. Si se especifica otro valor, la ejecución de dta es errónea y devuelve un error.

table_name

Ninguno

Si se utiliza un archivo, especifique .xml como extensión. Por ejemplo, TuningLog.xml.

NotaNota

La utilidad dta no elimina el contenido de las tablas de registro de optimización especificadas por el usuario si se elimina la sesión. Cuando optimice cargas de trabajo de gran tamaño, se recomienda especificar una tabla para el registro de optimización. Puesto que la optimización de cargas de trabajo de gran tamaño puede producir registros de optimización grandes, las sesiones se pueden eliminar mucho más rápidamente cuando se utiliza una tabla.

-F

Permite que dta sobrescriba un archivo de salida existente. Si ya existe un archivo de salida con el mismo nombre y no se especifica -F, dtadevuelve un error. Puede usar -F con -of, -or o -ox.

-faphysical_design_structures_to_add

Especifica los tipos de estructuras de diseño físico que dta debe incluir en la recomendación. En la tabla siguiente se muestran y describen los valores que se pueden especificar para este argumento. Cuando no se especifica ningún valor, dta utiliza el -faIDX predeterminado.

Valor

Descripción

IDX_IV

Índices y vistas indizadas. Para obtener más información acerca de las versiones de SQL Server que no admiten esta opción de optimización, vea Opciones de optimización no admitidas.

IDX

Sólo índices.

IV

Sólo vistas indizadas. Para obtener más información acerca de las versiones de SQL Server que no admiten esta opción de optimización, vea Opciones de optimización no admitidas.

NCL_IDX

Sólo índices no clúster.

-fi

Especifica que los índices filtrados se consideren para las nuevas recomendaciones. Para obtener más información, vea Directrices generales para diseñar índices filtrados.

-fkkeep_existing_option

Especifica las estructuras de diseño físico que dta debe conservar cuando cree su recomendación. En la tabla siguiente se muestran y describen los valores que se pueden especificar para este argumento:

Valor

Descripción

NONE

Ninguna estructura existente

ALL

Todas las estructuras existentes

ALIGNED

Todas las estructuras alineadas de partición

CL_IDX

Todos los clúster en las tablas

IDX

Todos los clúster y no clúster de las tablas

-fppartitioning_strategy

Especifica si las nuevas estructuras de diseño físico (índices y vistas indizadas) que dta propone se deben dividir y cómo se deben dividir. En la tabla siguiente se muestran y describen los valores que se pueden especificar para este argumento:

Valor

Descripción

NONE

No crear particiones

FULL

Particiones completas (para mejorar el rendimiento)

ALIGNED

Sólo particiones alineadas (para mejorar la capacidad de administración)

ALIGNED significa que, en la recomendación generada por dta, cada índice propuesto se divide exactamente igual que la tabla subyacente para la que se ha definido el índice. Los índices no clúster de una vista indizada se alinean con la vista indizada. Sólo se puede especificar un valor para este argumento. El valor predeterminado es -fpNONE.

-fxdrop_only_mode

Especifica que dta sólo tiene en cuenta eliminar estructuras de diseño físicas existentes. No se tienen en cuenta las nuevas estructuras de diseño físico. Cuando se especifica esta opción, dta analiza la utilidad de las estructuras de diseño físico existentes y recomienda la eliminación de las estructuras que se utilizan rara vez. Este argumento no necesita valores. No se puede usar con los argumentos -fa, -fp ni -fk ALL

-IDsession_ID

Especifica un identificador numérico para la sesión de optimización. Si no se especifica, dta genera un número de Id. Puede usar este identificador para ver información para sesiones de optimización existentes. Si no especifica un valor para -ID, debe especificarse un nombre de sesión con -s.

-ifworkload_file

Especifica el nombre y la ruta del archivo de carga de trabajo que se desea usar como entrada para la optimización. El archivo debe estar en uno de estos formatos: .trc (archivo de seguimiento del Analizador de SQL Server) o .log (archivo de Seguimiento de SQL Server ). Debe especificarse un archivo de carga de trabajo o una tabla de carga de trabajo.

-itworkload_trace_table_name

Especifica el nombre de una tabla que contiene la traza de carga de trabajo para la optimización. El nombre se debe especificar en el formato: [database_name].[owner_name].table_name.

En la tabla siguiente se muestran los valores predeterminados para cada parámetro:

Parámetros

Valor predeterminado

database_name

database_name especificado con la opción –D.

owner_name

dbo.

table_name

Ninguno.

NotaNota

owner_name debe ser dbo. Si se especifica cualquier otro valor, la ejecución de dta no será correcta y se devolverá un error. Tenga en cuenta también que debe especificarse una tabla de carga de trabajo o un archivo de carga de trabajo.

-ixinput_XML_file_name

Especifica el nombre del archivo XML que contiene la información de entrada dta. Debe ser un documento XML válido que cumpla con DTASchema.xsd. Los argumentos en conflicto especificados en el símbolo del sistema para las opciones de optimización invalidan el valor correspondiente en este archivo XML. La única excepción se produce cuando se usa una configuración especificada por el usuario en el modo de evaluación del archivo de entrada XML. Por ejemplo, si se especifica una configuración en el elemento Configuration del archivo de entrada XML y el elemento EvaluateConfiguration también se especifica como una de las opciones de optimización, las opciones de optimización especificadas en el archivo de entrada XML anulan las opciones de optimización especificadas desde el símbolo del sistema.

-mminimum_improvement

Especifica el porcentaje mínimo de mejora que debe satisfacer la configuración recomendada.

-Nonline_option

Especifica si las estructuras de diseño físico se crean en línea. En la tabla siguiente se muestran y describen los valores que pueden especificarse para este argumento:

Valor

Descripción

OFF

No se pueden crear en línea las estructuras recomendadas de diseño físico.

ON

Se pueden crear en línea todas las estructuras recomendadas de diseño físico.

MIXED

Siempre que es posible, el Asistente para la optimización de motor de base de datos intenta recomendar las estructuras de diseño físico que se pueden crear en línea.

Si los índices se crean en línea, se anexa ONLINE = ON a la definición del objeto.

-nnumber_of_events

Especifica el número de eventos de la carga de trabajo que dta debe optimizar. Si se especifica este argumento y la carga de trabajo es un archivo de seguimiento que contiene información de duración, dta optimiza los eventos en orden decreciente de duración. Este argumento es útil para comparar dos configuraciones de estructuras de diseño físico. Para comparar dos configuraciones, especifique el mismo número de eventos que se optimizarán para ambas configuraciones y después especifique un tiempo de optimización ilimitado para las dos de la siguiente manera:

dta -n number_of_events -A 0

En este caso es importante especificar un tiempo de optimización ilimitado (-A 0). De lo contrario, el Asistente para la optimización de motor de base de datos asume un tiempo de optimización de 8 horas de forma predeterminada.

-ofoutput_script_file_name

Especifica que dta escriba la recomendación como un script de Transact-SQL en el nombre de archivo y el destino especificados.

Puede usar -F con esta opción. Asegúrese de que el nombre de archivo es exclusivo, especialmente si también utiliza -or y -ox.

-oroutput_xml_report_file_name

Especifica que dta escribe la recomendación en un informe de salida en XML. Si se proporciona un nombre de archivo, las recomendaciones se escriben en ese destino. De lo contrario, dta utiliza el nombre de sesión para generar el nombre de archivo y lo escribe en el directorio actual.

Puede usar -F con esta opción. Asegúrese de que el nombre de archivo es exclusivo, especialmente si también utiliza -of y -ox.

-oxoutput_XML_file_name

Especifica que dta escriba la recomendación como un archivo XML en el nombre de archivo y el destino especificados. Asegúrese de que el Asistente para la optimización de motor de base de datos tiene permiso para escribir en el directorio de destino.

Puede usar -F con esta opción. Asegúrese de que el nombre de archivo es exclusivo, especialmente si también utiliza -of y -or.

-Ppassword

Especifica la contraseña para el identificador de inicio de sesión. Si no se utiliza la opción, dta solicitará una contraseña.

-q

Establece el modo silencioso. No se escribe ninguna información en la consola, ni siquiera información de progreso o de encabezado.

-rlanalysis_report_list

Especifica la lista de informes de análisis que se crearán. En la tabla siguiente se muestran los valores que se pueden especificar para este argumento:

Valor

Informe

ALL

Todos los informes de análisis

STMT_COST

Informe de costo de instrucciones

EVT_FREQ

Informe de frecuencia de eventos

STMT_DET

Informe de detalles de instrucciones

CUR_STMT_IDX

Informe relacional de instrucciones e índices (configuración actual)

REC_STMT_IDX

Informe relacional de instrucciones e índices (configuración recomendada)

STMT_COSTRANGE

Informe de intervalo de costo de instrucciones

CUR_IDX_USAGE

Informe de uso de índices (configuración actual)

REC_IDX_USAGE

Informe de uso de índices (configuración recomendada)

CUR_IDX_DET

Informe de detalles de índices (configuración actual)

REC_IDX_DET

Informe de detalles de índices (configuración recomendada)

VIW_TAB

Informe relacional de vistas y tablas

WKLD_ANL

Informe de análisis de carga de trabajo

DB_ACCESS

Informe de acceso a bases de datos

TAB_ACCESS

Informe de acceso a tablas

COL_ACCESS

Informe de acceso a columnas

Especifique varios informes separando los valores con comas, por ejemplo:

... -rl EVT_FREQ, VIW_TAB, WKLD_ANL ...
-Sserver_name[ \instance]

Especifica el nombre del equipo y la instancia de SQL Server a la que conectarse. Si no se especifica ningún valor de server_name, dta se conecta con la instancia predeterminada de SQL Server en el equipo local. Esta opción es necesaria cuando se conecta con una instancia con nombre o cuando se ejecuta dtadesde un equipo remoto de la red.

-ssession_name

Especifica el nombre de la sesión de optimización. Es necesario si no se especifica -ID.

-Tftable_list_file

Especifica el nombre de un archivo que contiene una lista de tablas a optimizar. Cada tabla enumerada en el archivo debe empezar en una nueva línea. Los nombres de tabla deben tener nombres en tres partes, por ejemplo, adventureworks2008R2.dbo.department. Opcionalmente, para invocar la característica de escala de tablas, el nombre de una tabla existente puede ir seguido de un número que indica el número previsto de filas de la tabla. El Asistente para la optimización de motor de base de datos toma en consideración el número proyectado de filas a la vez que optimiza o evalúa instrucciones de la carga de trabajo que hacen referencia a esas tablas. Tenga en cuenta que puede haber uno o más espacios entre el número de number_of_rows y table_name.

Este es el formato de archivo de table_list_file:

database_name.[schema_name].table_name [number_of_rows]

database_name.[schema_name].table_name [number_of_rows]

database_name.[schema_name].table_name [number_of_rows]

Este argumento es una alternativa a especificar una lista de tablas en el símbolo del sistema (-Tl). No utilice un archivo de lista de tabla (-Tf) si está utilizando -Tl. Si se usan ambos argumentos, dta devuelve un error.

Si se omiten los argumentos -Tf y -Tl, todas las tablas de usuario de las bases de datos especificadas se tienen en cuenta para la optimización.

-Tltable_list

Especifica en el símbolo del sistema una lista de tablas que se optimizarán. Utilice una coma entre los nombres de tabla para separarlos. Si sólo se especifica una base de datos con el argumento -D, no es necesario calificar los nombres de tabla con un nombre de base de datos. De lo contrario, se requiere el nombre completo en el formato: database_name.schema_name.table_name para cada tabla.

Este argumento es una alternativa al uso de un archivo de lista de tablas (-Tf). Si se utilizan los argumentos -Tl y -Tf, dta devuelve un error.

-Ulogin_id

Especifica el Id. de inicio de sesión para conectar con SQL Server.

-u

Inicia la GUI del Asistente para la optimización de motor de base de datos. Todos los parámetros se tratan como la configuración inicial para la interfaz de usuario.

-x

Inicia la sesión de optimización y se cierra.

Presione CTRL+C una vez para detener la sesión de optimización y crear recomendaciones basándose en el análisis que dta ha completado hasta este punto. Se le solicitará que decida si desea o no generar recomendaciones. Presione CTRL+C de nuevo para detener la sesión de optimización sin generar recomendaciones.

A. Optimizar una carga de trabajo que incluye índices y vistas indizadas en su recomendación

Este ejemplo utiliza una conexión segura (-E) para conectar con la base de datos tpcd1G en MyServer para analizar una carga de trabajo y crear recomendaciones. Escribe la salida en un archivo de script denominado script.sql. Si este archivo ya existe, dta sobrescribirá el archivo porque se ha especificado el argumento -F. La sesión de optimización se ejecuta durante un período de tiempo ilimitado para garantizar un completo análisis de la carga de trabajo (-A 0). La recomendación debe proporcionar una mejora mínima del 5% (-m 5). dta debe incluir índices y vistas indizadas en su recomendación final (-fa IDX_IV).

dta –S MyServer –E -D tpcd1G -if tpcd_22.sql -F –of script.sql –A 0 -m 5 -fa IDX_IV

B. Limitar la utilización del disco

Este ejemplo limita el tamaño total de la base de datos, que incluye los datos sin procesar y los índices adicionales, hasta 3 gigabytes (GB) (-B 3000) y dirige la salida a d:\result_dir\script1.sql. Se ejecuta durante 1 hora como máximo (-A 60).

dta –D tpcd1G –if tpcd_22.sql -B 3000 –of "d:\result_dir\script1.sql" –A 60

C. Limitar el número de consultas optimizadas

Este ejemplo limita el número de consultas leídas desde el archivo orders_wkld.sql hasta un máximo de 10 (-n 10) y se ejecuta durante 15 minutos (-A 15), lo que se dé primero. Para asegurarse de que se optimizan las 10 consultas, especifique un tiempo de optimización ilimitado con -A 0. Si el tiempo es importante, especifique un límite de tiempo adecuado estableciendo el número de minutos que está disponible para optimizar con el argumento -A como se muestra en este ejemplo.

dta –D orders –if orders_wkld.sql –of script.sql –A 15 -n 10

D. Optimizar tablas específicas enumeradas en un archivo

Este ejemplo muestra el uso de table_list_file (el argumento -Tf). El contenido del archivo table_list.txt es el siguiente:

Adventureworks2008R2.dbo.customer  100000
adventureworks2008R2.dbo.store
adventureworks2008R2.dbo.product  2000000

El contenido de table_list.txt especifica que:

  • Sólo deben optimizarse las tablas customer, store y product de la base de datos.

  • Se asume que el número de filas de las tablas customer y product es 100.000 y 2.000.000, respectivamente.

  • Se supone que el número de filas de store es igual al número actual de filas de la tabla.

Tenga en cuenta que puede haber uno o más espacios entre el número de filas y el nombre de tabla que lo precede en table_list_file.

El tiempo de optimización es de 2 horas (-A 120) y la salida se escribe en un archivo XML (-ox XMLTune.xml).

dta –D pubs –if pubs_wkld.sql –ox XMLTune.xml –A 120 –Tf table_list.txt
¿Te ha resultado útil?
(Caracteres restantes: 1500)
Gracias por sus comentarios

Adiciones de comunidad

AGREGAR
Mostrar:
© 2014 Microsoft