Compartilhar via


Esquema de base de dados de persistência

Este tópico descreve as visualizações públicas suportadas por instância Store de fluxo de trabalho SQL.

O modo de instâncias

A exibição de Instâncias contém informações gerais sobre todas as Instâncias do fluxo de trabalho no Banco de dados.

Nome da coluna Tipo de coluna Descrição
InstanceId UniqueIdentifier A identificação de uma instância de fluxo de trabalho.
PendingTimer Datetime Indica que o fluxo de trabalho está bloqueado em uma atividade do atraso e continuado será depois que o timer expirar. Esse valor pode ser zero se o fluxo de trabalho não é espera com barreira na um timer expirar.
CreationTime Datetime Indica quando o fluxo de trabalho foi criado.
LastUpdatedTime Datetime Indica a última vez que o fluxo de trabalho foi persistente a base de dados.
ServiceDeploymentId BigInt Atua como uma chave estrangeira para modo de ServiceDeployments []. Se a instância atual de fluxo de trabalho é uma instância de um serviço web hospedado, então essa coluna tem um valor, se não estiver definida PARA ANULAR.
SuspensionExceptionName Nvarchar (450) Indica o tipo de exceção (por exemplo, InvalidOperationException) que causou a suspensão do fluxo de trabalho.
SuspensionReason Nvarchar(max) Indica como a instância de fluxo de trabalho foi suspendida. Se uma exceção causou a instância suspende, então essa coluna contém a mensagem associada com a exceção.

Se a instância foi suspendida manualmente, então essa coluna contém a razão especificada pelo usuário para suspender a instância.
ActiveBookmarks Nvarchar(max) Se a instância de fluxo de trabalho estiver ocioso, essa propriedade indica que indicadores a instância é bloqueada sobre. Se a instância não estiver ocioso, então essa coluna é NULA.
CurrentMachine Nvarchar (128) Indica que o nome do computador atualmente tem a instância de fluxo de trabalho carregado na memória.
LastMachine Nvarchar (450) Indica o computador o último que carregou a instância de fluxo de trabalho.
ExecutionStatus Nvarchar (450) Indica o estado atual de execução de fluxo de trabalho. Os estados possíveis incluem Executando, Ocioso, Fechado.
IsInitialized bit Indica se a instância de fluxo de trabalho foi inicializada. Uma instância inicializada de fluxo de trabalho é uma instância de fluxo de trabalho que é mantido pelo menos uma vez.
IsSuspended bit Indica se a instância de fluxo de trabalho foi suspendida.
IsCompleted bit Indica se a instância de fluxo de trabalho terminou de executar. Observação: se, e apenas se, a propriedade InstanceCompletionAction for definida como DeleteAll, as instâncias serão removidas da exibição após a conclusão.
EncodingOption TinyInt Descreve a codificação usada para serializar as propriedades de dados.

- 0 – Sem codificação
- 1 – GzipStream
ReadWritePrimitiveDataProperties Varbinary (máximo) Contém serializou as propriedades de dados de instância que serão fornecidos de volta para o runtime de fluxo de trabalho que a instância é carregada.

Cada propriedade primitiva é um tipo nativo de CLR, o que significa que qualquer conjunto especial é necessário para desserializar a operação.
WriteOnlyPrimitiveDataProperties Varbinary (máximo) Contém serializou as propriedades de dados de instância que não são fornecidas de volta para o runtime de fluxo de trabalho que a instância é carregada.

Cada propriedade primitiva é um tipo nativo de CLR, o que significa que qualquer conjunto especial é necessário para desserializar a operação.
ReadWriteComplexDataProperties Varbinary (máximo) Contém serializou as propriedades de dados de instância que serão fornecidos de volta para o runtime de fluxo de trabalho que a instância é carregada.

Desserialização um exigiria conhecimento de todos os tipos de objeto armazenados nesta operação.
WriteOnlyComplexDataProperties Varbinary (máximo) Contém serializou as propriedades de dados de instância que não são fornecidas de volta para o runtime de fluxo de trabalho que a instância é carregada.

Desserialização um exigiria conhecimento de todos os tipos de objeto armazenados nesta operação.
IdentityName Nvarchar(max) O nome da definição de fluxo de trabalho.
IdentityPackage Nvarchar(max) Informações de pacote fornecida quando o fluxo de trabalho foi criado (como o nome assembly).
Build BigInt O número de compilação de versão de fluxo de trabalho.
Principal BigInt O número de versão principal de fluxo de trabalho.
Secundária BigInt O menor número de versão de fluxo de trabalho.
Revisão BigInt O número de revisão de versão de fluxo de trabalho.

Cuidado

A exibição de Instâncias também contém um gatilho de exclusão. Os usuários com as permissões apropriadas podem executar instruções de exclusão nesta exibição que removerá vigorosa as instâncias de fluxo de trabalho de base de dados. Recomendamos excluir diretamente de exibição somente como um recurso o último como excluir uma instância sob o runtime de fluxo de trabalho pode levar a consequências não intencionais. Em vez disso, use o ponto final de gerenciamento de instância de fluxo de trabalho para que o runtime de fluxo de trabalho finalizar a instância. Se você deseja excluir um grande número de instâncias de exibição, certifique-se de que não há nenhum runtime ativa que pode operar nessas instâncias.

O modo de ServiceDeployments

A exibição de ServiceDeployments contém informações de implantação para qualquer Web (IIS/WAS) hospedou serviços de fluxo de trabalho. Cada instância de fluxo de trabalho hospedada na Web conterá um ServiceDeploymentId que se refere a uma linha nessa exibição.

Nome da coluna Tipo de coluna Descrição
ServiceDeploymentId BigInt A chave primária para esta exibição.
SiteName Nvarchar(max) Representa o nome do site que contém o serviço de fluxo de trabalho (por exemplo, Default Web Site).
RelativeServicePath Nvarchar(max) Representa o caminho virtual relativo ao site da web que aponta para o serviço de fluxo de trabalho. (por exemplo, /app1/PurchaseOrderService.svc).
RelativeApplicationPath Nvarchar(max) Representa o caminho virtual relativo ao site da web que aponta para um aplicativo que contém o serviço de fluxo de trabalho. (por exemplo, /app1).
ServiceName Nvarchar(max) Representa o nome do serviço de fluxo de trabalho. (por exemplo, PurchaseOrderService).
ServiceNamespace Nvarchar(max) Representa o namespace do serviço de fluxo de trabalho. (por exemplo, MyCompany).

O modo de ServiceDeployments também contém um disparador de exclusão. Os usuários com as permissões apropriadas podem executar instruções de exclusão nesta exibição para remover entradas de ServiceDeployment de base de dados. Observe que:

  1. Excluir entradas desta exibição é grande desde que o base de dados inteiro deve ser bloqueado antes de executar esta operação. Isso é necessário para evitar o cenário onde uma instância de fluxo de trabalho pode referir-se a uma entrada inexistente de ServiceDeployment. Excluir desta exibição somente durante o tempo de inatividade/janelas de aplicativos.

  2. Qualquer tentativa para excluir uma linha de ServiceDeployment que é referenciada pelas entradas na exibição de Instâncias não resultará em uma operação. Você só pode excluir linhas de ServiceDeployment com referências zero.

O modo de InstancePromotedProperties

A exibição de InstancePromotedProperties contém informações para todas as propriedades promovidas especificadas pelo usuário. Uma propriedade promovida funciona como uma propriedade de primeira classe, que um usuário possa usar em consultas para recuperar instâncias. Por exemplo, um usuário pode adicionar uma promoção de PurchaseOrder que sempre armazena o custo de uma ordem na coluna de Value1. Isso deve permitir um usuário para consultar todos os pedidos de compra cujos custo exceder qualquer valor.

Tipo de coluna Tipo de coluna Descrição
InstanceId UniqueIdentifier A identificação de instância de fluxo de trabalho
EncodingOption TinyInt Descreve a codificação usada para serializar as propriedades binários elevadas.

- 0 – Sem codificação
- 1 – GZipStream
PromotionName Nvarchar (400) O nome da promoção associada com essa instância. O PromotionName é necessário para adicionar contexto para colunas genéricos nesta linha.

Por exemplo, um PromotionName de PurchaseOrder pode indicar que o valor1 contém os custos de ordem, valor2 contém o nome do cliente que fez o pedido, valor 3 contém o endereço de cliente, e assim por diante.
Valor [1-32] SqlVariant O valor [] 1-32 contém os valores que podem ser armazenados em uma coluna de SqlVariant. Uma única promoção não pode conter mais de 32 SqlVariants.
Valor [33-64] Varbinary (máximo) O valor [] 33-64 contém valores serializados. Por exemplo, Value33 pode conter JPEG de um item que está sendo comprado. Uma única promoção não pode conter mais de 32 propriedades binários

O modo de InstancePromotedProperties é limite do esquema, o que significa que os usuários podem adicionar índices em uma ou mais colunas para otimizar consultas nesta exibição.

Observação

Uma exibição indexada requer mais armazenamento e adicione a sobrecarga adicional de processamento. Consulte Melhorando o desempenho com exibições indexadas do SQL Server 2008 para obter mais informações.