Ativação de resultados de consulta¶
Visão geral da ativação¶
Um colaborador pode enviar resultados de modelo para fora da sala limpa em um processo chamado ativação. O modelo deve oferecer suporte à ativação, e cada provedor de dados deve aprovar a ativação no nível da coluna na especificação da oferta de dados.
A ativação é implementada usando um modelo de ativação dedicado. Um modelo de ativação não retorna resultados para o executor de consultas, mas os grava em uma tabela de resultados na conta do usuário de destino.
Nota
A ativação de resultados para outra conta Snowflake requer o Snowflake Enterprise Edition ou superior.
Implementando a ativação¶
Aqui estão os passos para implementar a ativação:
Você deve usar uma função que tenha o privilégio REGISTER DATA OFFERING para ingressar em qualquer colaboração em que você seja um executor de análises e a especificação da colaboração inclua um campo
activation_destinations.Certifique-se de que todas as especificações estejam configuradas corretamente:
A especificação da oferta de dados para a tabela com a coluna ativada deve definir
activation_allowed: TRUEpara essa coluna:A especificação da colaboração deve fornecer valores de
activation_destinationspara o executor de análise. A especificação da oferta de dados limita ainda mais a ativação dos executores de análise e modelos designados.A especificação de análise deve incluir uma seção
activationcom valoressnowflake_collaboratoresegment_namee chamar um modelo de ativação. Não é possível ativar resultados executando um modelo de análise padrão.Você deve usar um modelo de ativação. Esse modelo salva os resultados em uma tabela interna. Todas as colunas projetadas desse modelo são ativadas.
Qualquer coluna no modelo com o filtro
activation_policyaplicado deve teractivation_allowed: TRUEna especificação da oferta de dados.Nota
Se um modelo não aplicar o filtro
activation_policya uma coluna, ela poderá ser ativada independentemente deactivation_allowed: TRUEestar definido para essa coluna na especificação da oferta de dados.O exemplo a seguir mostra um modelo com a política de ativação aplicada a duas colunas fornecidas pelo executor de análise:
O executor de análise chama RUN para executar a análise e ativar os resultados.
Se a ativação for feita para você mesmo, os resultados ficarão disponíveis imediatamente na conta do autor da chamada.
Se a ativação for feita para outro colaborador:
O colaborador chama VIEW_ACTIVATIONS até retornar o status SHARED.
A ativação em outra conta pode levar um tempo considerável para grandes conjuntos de resultados, pois os dados precisam ser compartilhados com a conta do colaborador. Colaboradores em nuvens diferentes também sofrerão atrasos adicionais devido às configurações de frequência de replicação.
Quando o status da ativação é SHARED, o colaborador chama PROCESS_ACTIVATION para enviar os resultados à conta dele.
A resposta a PROCESS_ACTIVATION inclui os nomes de tabelas e segmentos. Isso define o status da ativação como PROCESSED.
O executor de análise pode ler os resultados conforme descrito na próxima seção.
Lendo os resultados da ativação¶
Quando a ativação for concluída, conforme descrito na seção anterior, os resultados serão armazenados na tabela collaboration_name.activation.segment_records em sua conta.
A tabela tem o seguinte esquema:
Coluna |
Descrição |
|---|---|
BATCH_ID |
UID para o trabalho em lote que foi processado. |
SEGMENT_NAME |
Nome da carga útil de ativação. |
TEMPLATE_ID |
ID do modelo utilizado para ativação. |
SHARED_BY |
Nome do colaborador que ativou os dados. |
UPDATED_ON |
Carimbo de data/hora de quando o lote foi processado com sucesso. |
RECORDS |
Carga útil dos IDs ativados e atributos do modelo de ativação. |
Nota
Se um colaborador sair da sala limpa, ele perderá o acesso ao aplicativo, incluindo a tabela que contém os resultados ativados.
Para recuperar os resultados da ativação, execute o seguinte comando SQL, filtrando opcionalmente pelo nome do segmento: