Rendimiento

Este tema le ayudará a maximizar el rendimiento al usar el proveedor de datos.

Configuración del rendimiento

Para mejorar el rendimiento, configure los proveedores de las maneras siguientes.

Agrupación de recursos OLE DB para reducir el tiempo de inicio de la conexión

La agrupación de recursos OLE DB y la agrupación de conexiones de proveedor pueden aumentar el rendimiento al reducir el tiempo de inicio de la conexión. La agrupación de recursos está habilitada a través de los componentes del servicio OLE DB que forman parte del sistema operativo Windows. Puede habilitar la agrupación de recursos OLE DB estableciendo las propiedades de inicialización de OLE DB y la configuración del Registro. Para obtener más información, consulte Agrupación de recursos de OLE DB (https://go.microsoft.com/fwlink/?LinkID=180446).

Agrupar los recursos del proveedor para reducir el tiempo de inicio de la conexión

La agrupación de conexiones es una optimización del lado cliente que reduce el tiempo de inicio de la conexión, al tiempo que reduce el uso de memoria en el equipo cliente. El proveedor de datos admite la agrupación de conexiones. Puede especificar la agrupación mediante la cadena de inicialización del origen de datos OLE DB (Connection Pooling=True). Además, puede configurar la agrupación mediante el cuadro de diálogo Avanzado del Asistente para orígenes de datos y el cuadro de diálogo All de Data Links.

El proveedor mantiene una memoria caché de conexiones, basada en una propiedad Max Pool Size. El tamaño predeterminado del grupo es 100 conexiones (Tamaño máximo del grupo=100 ), que puede ajustar mediante el cuadro de diálogo Todo del Asistente para orígenes de datos o vínculos de datos. No hay ningún límite superior para la propiedad Max Pool Size. Si configura un valor menor que 0 para la propiedad Tamaño máximo del grupo, se usa el valor predeterminado de 100. Opcionalmente, puede especificar un número de segundos para indicar al proveedor de datos que espere antes de establecer conexiones mediante la agrupación de conexiones del lado del cliente. Cuando todas las conexiones de un grupo están en uso y el período de tiempo de espera expira, el proveedor de datos devolverá un error al consumidor de datos ("la conexión no está disponible"). El valor predeterminado es 15 segundos (Tiempo de espera de conexión=15 ), que puede ajustar mediante el cuadro de diálogo Todo del Asistente para orígenes de datos o vínculos de datos. No hay ningún límite superior para la propiedad Tiempo de espera de conexión. Especifique -1 para indicar al proveedor de datos que espere indefinidamente una conexión abierta en el grupo de conexiones del lado cliente.

Optimización de la memoria caché del conjunto de filas al obtener datos

La propiedad RowsetCacheSize indica al proveedor de datos que capture previamente las filas de DB2 mientras procesa y devuelve filas al consumidor de datos simultáneamente. Esta característica puede mejorar el rendimiento en operaciones masivas de solo lectura en equipos de varios procesadores o de varios núcleos. El valor predeterminado de esta propiedad es 0 (RowsetCacheSize=0 ), que indica que la característica de captura previa opcional es "off". Se recomienda establecer un valor entre 10 y 100, con un valor recomendado inicial de 10, que puede ajustar mediante el cuadro de diálogo Todo del Asistente para orígenes de datos o vínculos de datos. Esta propiedad indica al proveedor de datos que recupere previamente el número especificado de lotes de filas, que se almacenan en la memoria caché del conjunto de filas del proveedor de datos. El tamaño de los lotes de filas se determina automáticamente en función del valor de cRows en la interfaz IRowset::GetNextRows de OLE DB especificada por el consumidor.

Aplazar la preparación de comandos con parámetros hasta la ejecución

Aplazar Prepare indica al proveedor de datos que optimice el procesamiento de comandos INSERT, UPDATE, DELETE y SELECT parametrizados. Puede especificar esta opción mediante la cadena de conexión ADO.NET o la cadena de inicialización del origen de datos OLE DB (Defer Prepare=True ). Además, puede configurar la agrupación mediante el cuadro de diálogo Avanzado del Asistente para orígenes de datos y el cuadro de diálogo All de Data Links. Para los comandos INSERT, UPDATE y DELETE, el proveedor de datos combina comandos de preparación, ejecución y confirmación en un flujo de red a la base de datos remota. Para el comando SELECT, el proveedor de datos combina comandos de preparación y ejecución en un flujo de red. Esto minimiza el tráfico de red y mejora con frecuencia el rendimiento general.

Recuperación de información de esquema del catálogo de sombras de DB2

La propiedad Shadow Catalog indica al proveedor de datos que recupere información de esquema de un catálogo de sombras de DB2. El administrador de DB2 puede definir un catálogo de sombras para contener la información de esquema de tablas, columnas, claves principales e índices. Todos los consumidores de datos usan esta información de esquema en tiempo de diseño. Algunos consumidores de datos usan esta información en tiempo de ejecución. El catálogo de esquemas de DB2 puede ser inaccesible debido a bloqueos durante las escrituras (creación y modificación de la ejecución de instrucciones). Además, el esquema DB2 predeterminado puede ser grande y agregar latencia a las operaciones de consumidor de datos en tiempo de diseño y en tiempo de ejecución. Un catálogo de sombras puede reducir la contención y mejorar el rendimiento al realizar operaciones de obtención de esquema.

Envío de varias filas en una sola unidad de trabajo

El proveedor de datos admite la interfaz IRowsetFastLoad de OLE DB para permitir que los consumidores, como Integration Services, ejecuten varias instrucciones INSERT en lotes optimizados. Esto usa mejor los paquetes de red TCP/IP y aumenta el rendimiento general. Seleccione RowsetFastLoad al configurar destinos OLE DB en flujos de datos en paquetes de Integration Services mediante el diseñador de paquetes de Business Intelligence Developer Studio. La interfaz IRowsetFastLoad es compatible al insertar en DB2. Para obtener más información, vea Modo de acceso para propiedades personalizadas de destino OLE DB de Integration Services (https://go.microsoft.com/fwlink/?LinkId=241518).

Tiempo de espera del comando para finalizar las consultas de ejecución prolongada

El proveedor de datos ofrece una propiedad de tiempo de espera de comandos para permitirle finalizar automáticamente las consultas de larga duración que pueden afectar negativamente al rendimiento. El valor predeterminado del conjunto de filas OLE DB DBPROP_COMMANDTIMEOUT es 0, lo que significa que no se ha agotado el tiempo de espera.

Puede especificar el valor del tiempo de espera del comando entre varias opciones disponibles para consumidores. El proveedor de datos ofrece la propiedad DBPROP_COMMANDTIMEOUT del conjunto de filas OLE DB, para permitir que los desarrolladores finalicen automáticamente las consultas de larga duración que pueden afectar negativamente al rendimiento. Integration Services y Analysis Services exponen esta propiedad a través de la opción Data Source Query Timeout en Business Intelligence Development Studio. Reporting Services expone esta propiedad a través de la opción del tiempo de espera para las propiedades del conjunto de datos en Business Intelligence Development Studio. Replicación y procesador de consultas exponen esta propiedad a través del tiempo de espera sp_serveroption @optname=query .

Medición del rendimiento

Para medir el rendimiento, el proveedor de datos ofrece contadores de rendimiento. De forma predeterminada, los contadores de rendimiento están desactivados. Se pueden activar cambiando el valor de la siguiente clave del Registro a 1:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Host Integration Server\Data Integration\UpdateCounters = 1

Los contadores de rendimiento del proveedor de datos capturan información sobre las conexiones abiertas, las instrucciones abiertas, los paquetes y los bytes enviados o recibidos, el tiempo medio de procesamiento del host (servidor DB2), las ejecuciones de comandos, las capturas de datos y las confirmaciones o reversiones de transacciones. Para obtener más información, consulte Contadores de rendimiento (https://go.microsoft.com/fwlink/?LinkID=119211).