Componentes del almacenamiento de datos para Azure DevOps Server

Azure DevOps Server 2020 | Azure DevOps Server 2019 | TFS 2018 - TFS 2013
Azure DevOps Server anteriormente se denominaba Visual Studio Team Foundation Server.

El Azure DevOps Server de informes de Azure DevOps Server o Team Foundation es un almacenamiento de datos tradicional que consta de una base de datos relacional organizada en un esquema de estrella aproximado y un cubo SQL Server Analysis Services basado en la base de datos relacional. En el diagrama siguiente se muestra la arquitectura de alto nivel del almacenamiento de datos de Team Foundation y las relaciones entre los almacenes operativos, el almacenamiento de datos y los informes de equipo.

Arquitectura del almacén de datos

Para obtener información adicional sobre las bases de datos y la conectividad, vea SQL Server bases dedatos para Azure DevOps Server .

Almacenes operativos

Cada herramienta o complemento de Team Foundation usa una base de datos relacional en SQL Server almacenar los datos utilizados por la herramienta en sus operaciones diarias. Esta base de datos relacional se denomina a menudo almacén operativo. Las tiendas operativas de Team Foundation incluyen:

  • Bases de datos de estructuras comunes (Tfs_Configuration)

  • Bases de datos de colecciones de proyectos de equipo (Tfs_Collection)

    También se pueden tener almacenes operativos creados para herramientas de terceros.

    Al igual que la mayoría de almacenes operativos, el esquema de la base de datos relacional está diseñado y optimizado para el procesamiento transaccional en línea de datos. Cuando la herramienta o el complemento realizan una actividad, escriben la información más reciente en el almacén operativo. Por lo tanto, los datos del almacén operativo cambian constantemente y están todos actualizados.

Adaptadores de almacén

Dado que cada herramienta o complemento tiene sus propios requisitos de esquema y los datos se guardan en el almacén operativo para optimizar el procesamiento transaccional, el propósito del adaptador de almacén es conferir a los datos operativos un formato utilizable por el almacén de datos. El adaptador de almacén es un ensamblado administrado que extrae los datos del almacén operativo, los transforma en un formato estandarizado que sea compatible con el almacén, y escribe los datos transformados en la base de datos relacional del almacén. Hay un adaptador independiente para cada almacén operativo de datos.

El adaptador de almacén copia y transforma los campos de datos especificados en la configuración básica del almacén o en la plantilla de proceso que se usa en el momento en que se crea un nuevo proyecto de equipo. Si posteriormente cambia la plantilla de proceso para agregar o eliminar los campos de datos que se escriben en el almacén de datos, los cambios se detectan la próxima vez que se ejecuta el adaptador. El adaptador se ejecuta periódicamente con una frecuencia establecida por la propiedad RunIntervalSeconds. El valor predeterminado de la frecuencia de actualización es de dos horas (7.200 segundos), así que considere detenidamente la frecuencia de actualización adecuada para su instalación. Para obtener más información sobre cómo cambiar la frecuencia de actualización, vea Cambiar la frecuencia de actualización.

Es importante que los datos de la base de datos relacional no se escriban en el cubo de datos mientras la primera se esté actualizando desde el almacén operativo. Para evitar conflictos de lectura y escritura de datos, los adaptadores del almacén que insertan y extraen los datos se sincronizan. Una vez que los adaptadores han completado las llamadas, se vuelve a procesar el cubo.

Base de datos relacional o almacén de datos

Cada herramienta describe su contribución al almacén de datos en un esquema XML. El esquema especifica los campos que se escriben en la base de datos relacional como dimensiones, medidas y detalles. El esquema también se asigna directamente en el cubo.

Los datos del almacén se almacenan en un conjunto de tablas organizadas en un esquema de estrella. La tabla central del esquema de estrella se denomina tabla de hechos y las tablas relacionadas representan las dimensiones. Las dimensiones proporcionan los medios para desglosar los informes en partes más pequeñas. Normalmente, una fila de una tabla de hechos contiene el valor de una medida o una referencia de clave externa a una tabla de dimensiones. La fila representa el estado actual de cada elemento de la tabla de hechos. Por ejemplo, la tabla de hechos Elemento de trabajo tiene una fila para cada elemento de trabajo que está guardado en el almacén operativo Elemento de trabajo.
Toda la información de fecha y hora del almacenamiento se almacena en la zona horaria configurada. Esto es útil para los informes, ya que puede combinar los datos de varias bases de datos de recopilación sin preocuparse por las diferencias de zona horaria o la conversión desde UTC. La zona horaria se establece una vez cuando se crea la base de datos warehouse. Sin embargo, los usuarios pueden cambiar la zona horaria durante una recompilación completa del almacenamiento.

Una tabla de dimensiones almacena el conjunto de valores que existen para una determinada dimensión. Las dimensiones pueden compartirse entre cubos y tablas de hechos diferentes, y se les puede hacer referencia mediante una tabla de hechos o un cubo de datos. Con una dimensión Persona, por ejemplo, la referencia se hará mediante la tabla de hechos Elementos de trabajo para las propiedades Asignado a, Abierto por, Resuelto por y Cerrado por, y mediante la tabla de hechos Renovación de código para la propiedad Protegido por.

Las medidas son valores tomados de los datos operativos. Por ejemplo, Nº total de renovaciones es una medida que indica el número de cambios de código fuente que se produce en los conjuntos de cambios seleccionados. Recuento es una medida especial en el sentido de que puede ser implícita, a condición de que haya un registro para cada elemento que se cuenta. Las medidas definidas en una tabla de hechos forman un grupo de medidas en el cubo.

Para obtener más información sobre los hechos, las dimensiones y las medidas del almacenamiento de datos, vea Perspectivas y grupos de medida proporcionados en el cubo Analysis Services datos.

Cubo de Analysis Services

Las tablas de hechos son una buena fuente de información para los informes que muestran el estado actual de la situación. Sin embargo, para informar sobre las tendencias de los datos que cambian con el tiempo, se necesita duplicar los mismos datos para cada uno de los incrementos de tiempo sobre los que se desea informar. Por ejemplo, para informar sobre tendencias diarias de elementos de trabajo o resultados de pruebas, el almacén debe conservar el estado de cada elemento en cada día. Esto permite que el cubo de datos agregue las medidas por día. El cubo agrega en estructuras multidimensionales los datos del esquema de estrella subyacente y los datos de tiempo.

Cada vez que se procesa el cubo de datos, los datos almacenados en los esquemas de estrella de la base de datos relacional se incorporan al cubo, se agregan y se almacenan. Los datos del cubo se agregan de modo que los informes de alto nivel, que en caso contrario requerirían un procesamiento complejo con el esquema de estrella, son simples instrucciones select. El cubo proporciona un lugar central para obtener los datos de los informes sin tener que conocer el esquema de cada almacén operativo y sin necesidad de acceder a cada almacén por separado.

Informes del Diseñador de informes

Diseñador de informes es un componente de Visual Studio que permite definir el almacenamiento de datos de Team Foundation como origen de datos y, a continuación, diseñar un informe de forma interactiva. El Diseñador de informes incluye ventanas con fichas de datos, diseño y vista previa. Si lo desea, puede agregar conjuntos de datos para albergar un nuevo diseño de informe o ajustar el diseño de informe en función de la vista previa de los resultados. Además de las superficies de diseño de datos, diseño y vista previa, el Diseñador de informes proporciona generadores de consultas, un editor de expresiones y asistentes que le ayudarán a colocar imágenes o le guiarán en la creación de un informe sencillo. Para obtener más información sobre el Diseñador de informes, vea Crear un informe detallado mediante Diseñador de informes.

Informes de Excel

Team Foundation se integra con Microsoft Excel para permitirle usar Microsoft Excel para administrar el proyecto y generar informes. Microsoft Excel proporciona tablas dinámicas y gráficos para ver y analizar datos multidimensionales. Puede enlazar estas tablas dinámicas directamente al cubo de Team Foundation para que pueda interactuar con los datos del cubo. Para obtener más información sobre el uso de Microsoft Excel para informes, vea Crear informes Excel a partir de una consulta de elemento de trabajo.

Seguridad

La seguridad del almacenamiento de datos de Team Foundation se define en el nivel de base de datos, mientras que la seguridad de los informes de equipo se encuentra en el nivel de proyecto de equipo. El Team Foundation Server usuario determina quién tiene acceso a los datos en el almacenamiento de datos mediante la concesión o revocación de permisos en la cuenta del usuario. De manera predeterminada, el acceso de escritura al almacén está restringido a una cuenta de servicio en la que se ejecuta el servicio de almacén. Todos los adaptadores de herramientas tienen acceso de escritura al almacén de datos porque se ejecutan en este contexto de seguridad. El administrador concede acceso de solo lectura a usuarios individuales o grupos de usuarios. Un usuario con permiso para ver los datos del almacén, también tiene acceso completo a todos los datos de todos los proyectos de equipo de todas las colecciones de proyectos de equipo. Para obtener más información sobre cómo conceder o denegar el acceso de solo lectura al almacenamiento de datos, vea Conceder permisos para ver o crear informes en TFS.