Metadados OData de Análise
Serviços do Azure DevOps | Azure DevOps Server 2022 - Azure DevOps Server 2019
Compreender os metadados associados ao modelo de entidade para Análise é um pré-requisito para consultar programaticamente o modelo de Dados para Análise. Os metadados OData são uma descrição legível pelo computador do modelo de entidade concebido para permitir o consumo do cliente.
Nota
"O Open Data Protocol (OData) é um protocolo de acesso a dados criado em protocolos principais como HTTP e metodologias geralmente aceites, como REST para a Web. Existem vários tipos de bibliotecas e ferramentas que podem ser utilizadas para consumir serviços OData." - Tutorial Básico da Organização OData.
Neste artigo, irá aprender a:
- Consultar os metadados num projeto específico
- Consultar os metadados numa organização
- Identificar as chaves, propriedades e propriedades de navegação associadas a uma Entidade
- Identificar as capacidades do ponto final OData da Análise
Para obter descrições detalhadas para todos os elementos OData, veja Modelo OData. Para obter informações sobre como consultar os metadados, veja Construir consultas OData para Análise.
Nota
O serviço Analytics é ativado e suportado automaticamente em produção para todos os Serviços do Azure DevOps. A integração e o acesso do Power BI ao feed OData do Serviço de Análise estão geralmente disponíveis. Encorajamo-lo a utilizá-lo e a dar-nos feedback.
Os dados disponíveis dependem da versão. A versão suportada mais recente é v2.0
, e a versão de pré-visualização mais recente é v4.0-preview
. Para obter mais informações, veja Controlo de versões da API OData.
Nota
O serviço Analytics é instalado e suportado automaticamente em produção para todas as novas coleções de projetos para Azure DevOps Server 2020 e versões posteriores. A integração e o acesso do Power BI ao feed OData do Serviço de Análise estão geralmente disponíveis. Encorajamo-lo a utilizá-lo e a dar-nos feedback. Se atualizou a partir do Azure DevOps Server 2019, pode instalar o serviço Analytics durante a atualização.
Os dados disponíveis dependem da versão. A versão suportada mais recente é v2.0
, e a versão de pré-visualização mais recente é v4.0-preview
. Para obter mais informações, veja Controlo de versões da API OData.
Nota
O serviço Analytics está em pré-visualização para Azure DevOps Server 2019. Pode ativá-la ou instalá-la para uma coleção de projetos. A integração e o acesso do Power BI ao feed OData do Serviço de Análise estão em Pré-visualização. Encorajamo-lo a utilizá-lo e a dar-nos feedback.
Os dados disponíveis dependem da versão. A versão suportada mais recente é v2.0
, e a versão de pré-visualização mais recente é v4.0-preview
. Para obter mais informações, veja Controlo de versões da API OData.
Conjuntos de entidades e tipos de entidade
As entidades são os principais tipos de identidade num modelo de dados. Os conjuntos de entidades são coleções nomeadas de entidades. Por exemplo, Projects
é um conjunto de entidades que Project
contém entidades. Uma entidade pode ser membro de, no máximo, um conjunto de entidades.
EntitySets
e EntityTypes
defina cada uma das entidades no modelo Análise, incluindo propriedades e relações. Os tipos de entidade definem as propriedades e relações nomeadas de uma entidade. Os tipos de entidade podem derivar por herança única de outros tipos de entidade. A chave de um tipo de entidade é formada a partir de um subconjunto das respetivas propriedades primitivas.
O exemplo seguinte mostra os metadados associados ao Project
tipo de entidade.
<EntityType Name="Project">
<Key>
<PropertyRef Name="ProjectSK"/>
</Key>
<Property Name="ProjectSK" Type="Edm.Guid" Nullable="false"/>
<Property Name="ProjectId" Type="Edm.Guid" Nullable="false">
<Annotation Term="Display.DisplayName" String="Project Id"/>
</Property>
<Property Name="ProjectName" Type="Edm.String" Nullable="false">
<Annotation Term="Display.DisplayName" String="Project Name"/>
</Property>
<Property Name="AnalyticsUpdatedDate" Type="Edm.DateTimeOffset"/>
<Property Name="ProjectVisibility" Type="Microsoft.VisualStudio.Services.Analytics.Model.ProjectVisibility">
<Annotation Term="Display.DisplayName" String="Project Visibility"/>
</Property>
<NavigationProperty Name="Areas" Type="Collection(Microsoft.VisualStudio.Services.Analytics.Model.Area)"/>
<NavigationProperty Name="Iterations" Type="Collection(Microsoft.VisualStudio.Services.Analytics.Model.Iteration)"/>
<NavigationProperty Name="Teams" Type="Collection(Microsoft.VisualStudio.Services.Analytics.Model.Team)"/>
</EntityType>
Chaves
Keys
defina as propriedades entidade disponíveis para utilização como Propriedade de Navegação.
<Key>
<PropertyRef Name="ProjectSK"/>
</Key>
Propriedades
O conjunto de "Propriedades da entidade disponíveis para consulta. As anotações representam outros detalhes sobre uma determinada propriedade.
Qualquer propriedade do Analytics que deve ser visível para os utilizadores finais é anotada com um DisplayName
.
<Property Name="ProjectSK" Nullable="false" Type="Edm.Guid"/>
<Property Name="ProjectId" Nullable="false" Type="Edm.Guid">
<Annotation String="Project Id" Term="Display.DisplayName"/>
</Property>
<Property Name="ProjectName" Nullable="false" Type="Edm.String">
<Annotation String="Project Name" Term="Display.DisplayName"/>
</Property>
ReferenceName é outra anotação comum utilizada para definir o identificador de sistema para uma propriedade específica.
<Property Name="State" Type="Edm.String">
<Annotation String="State" Term="Display.DisplayName"/>
<Annotation String="System.State" Term="Ref.ReferenceName"/>
</Property>
Propriedades de navegação
Consultar uma Entidade individual é útil. Eventualmente, é provável que queira filtrar ou expandir os detalhes de outra Entidade. Para tal, tem de compreender como utilizar as Propriedades de Navegação do modelo entidade.
Um NavigationaProperty
com um tipo de coleção representa uma relação muitos-para-muitos no modelo.
<NavigationProperty Name="Teams" Type="Collection(Microsoft.VisualStudio.Services.Analytics.Model.Team)"/>
ReferentialConstraints
associar propriedades de navegação a uma chave específica de uma entidade, representando uma relação muitos-para-um no modelo.
<NavigationProperty Name="Project" Type="Microsoft.VisualStudio.Services.Analytics.Model.Project">
<ReferentialConstraint ReferencedProperty="ProjectSK" Property="ProjectSK"/>
</NavigationProperty>
Contentores (capacidades OData)
Conjuntos de Entidades
As entidades são os principais tipos de identidade num modelo de dados. Os conjuntos de entidades são coleções nomeadas de entidades. Por exemplo, WorkItems
e WorkItemRevisions
estão EntitySets
dentro do EntityContainer
nome Container
. Uma entidade pode ser membro de, no máximo, um conjunto de entidades. Os conjuntos de entidades fornecem os pontos de entrada principais no modelo de dados e representam uma coleção de entidades e enlaces e anotações de propriedades de Navegação associados.
A seguinte sintaxe indica o modelo de dados do Projects
conjunto de entidades. Para obter uma descrição de cada conjunto de entidades, veja Modelo de dados para Análise.
<EntitySet Name="Projects" EntityType="Microsoft.VisualStudio.Services.Analytics.Model.Project">
<NavigationPropertyBinding Path="Areas" Target="Areas"/>
<NavigationPropertyBinding Path="Iterations" Target="Iterations"/>
<NavigationPropertyBinding Path="Teams" Target="Teams"/>
<Annotation Term="Org.OData.Display.V1.DisplayName" String="Projects"/>
</EntitySet>
Capacidades
As capacidades definem o conjunto de funções compreendidas pelo ponto final OData da Análise.
<Annotation Term="Org.OData.Capabilities.V1.FilterFunctions">
<Collection>
<String>contains</String>
<String>endswith</String>
<String>startswith</String>
<String>length</String>
<String>indexof</String>
<String>substring</String>
<String>tolower</String>
<String>toupper</String>
<String>trim</String>
<String>concat</String>
<String>year</String>
<String>month</String>
<String>day</String>
<String>hour</String>
<String>minute</String>
<String>second</String>
<String>fractionalseconds</String>
<String>round</String>
<String>floor</String>
<String>ceiling</String>
<String>date</String>
<String>time</String>
<String>isof</String>
<String>cast</String>
</Collection>
</Annotation>
Agregações
As anotações de agregação definem o conjunto de transformações compreendidas pelo ponto final OData da Análise.
<Annotation Term="Org.OData.Aggregation.V1.ApplySupported">
<Record>
<PropertyValue Property="Transformations">
<Collection>
<String>aggregate</String>
<String>filter</String>
<String>groupby</String>
<String>compute</String>
<String>expand</String>
</Collection>
</PropertyValue>
<PropertyValue Property="CustomAggregationMethods ">
<Collection>
<String>ax.ApproxCountDistinct</String>
<String>ax.StandardDeviation</String>
<String>ax.StandardDeviationP</String>
<String>ax.Variance</String>
<String>ax.VarianceP</String>
</Collection>
</PropertyValue>
</Record>
</Annotation>
<Annotation Term="Org.OData.Capabilities.V1.BatchSupportType" Bool="true"/>
<Annotation Term="Org.OData.Capabilities.V1.BatchSupportType">
<Record>
<PropertyValue Property="Supported" Bool="true"/>
<PropertyValue Property="ContinueOnErrorSupported" Bool="false"/>
<PropertyValue Property="ReferencesInRequestBodiesSupported" Bool="false"/>
<PropertyValue Property="ReferencesAcrossChangeSetsSupported" Bool="false"/>
<PropertyValue Property="EtagReferencesSupported" Bool="false"/>
</Record>
</Annotation>
Passos seguintes
Artigos relacionados
- Modelo de dados para Análise
- Consultas no âmbito da organização e do projeto.
- Dados disponíveis no Analytics
- Consultar dados de controlo de trabalho com a Análise
- Referência de entidades e propriedades para Quadros do Azure