Partilhar via


Transações (Master Data Services)

Aplica-se a:SQL Server no Windows Azure SQL Managed Instance

Importante

Os Serviços de Dados Mestres (MDS) foram removidos no SQL Server 2025 (17.x). Continuamos a oferecer suporte ao MDS no SQL Server 2022 (16.x) e em versões anteriores.


No Master Data Services, uma transação é registrada cada vez que uma ação é executada em um membro. As transações podem ser visualizadas por todos os usuários e revertidas pelos administradores. As transações mostram a data, a hora e o usuário que executou a ação, além de outros detalhes. Os usuários podem adicionar uma anotação a uma transação, para indicar por que uma transação ocorreu.

Quando as transações são registadas

As transações são registadas quando os membros:

  • São criados, excluídos ou reativados.

  • Ter valores de atributo alterados.

  • São movidos dentro de uma hierarquia.

As transações não são registadas quando as regras de negócio alteram os valores dos atributos.

Visualizar e gerenciar transações

Na área funcional do Explorer , você pode visualizar e anotar (adicionar comentários a) as transações que você mesmo fez.

Na área funcional Gerenciamento de Versões , os administradores podem exibir todas as transações de todos os usuários para os modelos aos quais têm acesso e reverter qualquer uma dessas transações.

Observação

Os administradores podem exibir todas as transações de todos os usuários, desde que não tenham o nível de permissão somente leitura aplicado na área funcional Gerenciamento de Versões . Por exemplo, se a permissão somente leitura e o nível de permissão de atualização estiverem definidos para o administrador, o administrador não poderá ver outras transações de usuário porque a permissão somente leitura terá precedência sobre a permissão de atualização.

Você pode configurar por quanto tempo os dados do log de transações são retidos definindo a propriedade Retenção de log em Dias nas configurações do sistema para o banco de dados do Master Data Services e definindo Dias de retenção de log ao criar ou editar um modelo. Para obter mais informações, consulte Configurações do Sistema (Master Data Services) e Criar um modelo (Master Data Services).

O trabalho do SQL Server Agent, MDS_MDM_Sample_Log_maintenance, dispara a limpeza dos logs de transações e é executado todas as noites. Você pode usar o SQL Server Agent para modificar o agendamento desse trabalho.

Você também pode chamar os seguintes procedimentos armazenados para limpar os logs de transações.

Procedimento Armazenado Descrição
mdm.udpTransactionsCleanup Limpa o histórico de transações
mdm.udpValidaçõesLimpeza Limpa o histórico de validação
mdm.udpEntityStagingBatchTableCleanup Limpa a mesa de preparo

Exemplo

DECLARE @CleanupOlderThanDate date = '2014-11-11',  
@ModelID INT = 7  
--Clean up Transaction Logs  
EXEC mdm.udpTransactionsCleanup @ModelID, @CleanupOlderThanDate;  
  
--Clean up Validation History  
EXEC mdm.udpValidationsCleanup @ModelID, @CleanupOlderThanDate;  
  
--Clean up EBS tables  
EXEC mdm.udpEntityStagingBatchTableCleanup @ModelID, @CleanupOlderThanDate;  
  

Configurações do sistema

Há uma configuração no Gerenciador de Configuração do Master Data Services que afeta se as transações são ou não registradas quando os registros são preparados. Você pode ajustar essa configuração no Gerenciador de Configuração do Master Data Services ou diretamente na tabela Configurações do Sistema no banco de dados do Master Data Services. Para obter mais informações, consulte Configurações do sistema (Master Data Services).

Ao importar dados nesta versão do SQL Server, você pode especificar se deseja ou não registrar transações ao iniciar o procedimento armazenado. Para obter mais informações, consulte Procedimento Armazenado de Staging (Master Data Services).

Concorrência

Se um determinado valor de entidade for mostrado simultaneamente em mais de uma sessão do Explorer, edições simultâneas para o mesmo valor serão possíveis. As edições simultâneas não serão detetadas automaticamente pelo MDS. Isso pode ocorrer quando vários usuários usam o MDS Explorer no navegador da Web a partir de várias sessões, por exemplo, de vários computadores, várias guias ou janelas do navegador ou várias contas de usuário.

Mais de um usuário pode atualizar os mesmos valores de entidade sem erros, apesar das transações estarem habilitadas. Normalmente, a última edição do valor em uma sequência de tempo terá precedência. O conflito de edição duplicado pode ser observado manualmente no histórico de transações e pode ser revertido manualmente pelo administrador. O histórico de transações mostrará as transações individuais para o valor Anterior e Novo valor para o atributo em questão de cada sessão, mas não resolverá automaticamente o conflito quando existirem vários Novos Valores para o mesmo valor antigo.

Descrição da Tarefa Tópico
Desfaça uma ação revertendo uma transação (somente administradores). Reverter uma transação (Master Data Services)

Recursos Externos

Postagem de blog, Transações, Problema de validação e limpeza da tabela de preparo, no msdn.com.