Análise executada pelo provedor

A configuração padrão da clean room permite que apenas o consumidor execute uma análise na clean room. No entanto, o provedor pode solicitar a permissão do consumidor para executar modelos usando dados do consumidor em uma clean room específica. A análise executada pelo provedor pode ser ativada e executada usando a UI ou o código de clean rooms.

Nota

O provedor tem duas maneiras disponíveis de executar uma análise na sala limpa: como um modelo padrão, que retorna resultados a cada consulta, e como uma ativação, que salva os resultados em um arquivo na conta do provedor. Se você precisa persistir os dados para si mesmo ou para exportar a terceiros, ou refinar os resultados para um grande conjunto de dados, geralmente é melhor ativar os resultados em sua conta. Se você quer executar novamente um modelo com novos parâmetros ou dados, sem a necessidade de persistir os resultados, o uso das consultas padrão executadas pelo provedor descritas aqui é o caminho certo.

Modelos compatíveis

A análise de execução do provedor é ativada no nível do modelo em uma determinada clean room. Os modelos a seguir oferecem suporte a análises executadas pelo provedor:

  • Sobreposição e análise de segmentação

  • Consulta SQL (somente na UI)

  • Modelos personalizados (somente na API)

Detalhes de faturamento

As análises executadas pelo provedor são feitas na conta do consumidor, e os consumidores são cobrados por uma análise executada pelo provedor. Para parar de gerar custos adicionais das análises de provedor, o consumidor deve desinstalar a sala limpa.

Um consumidor pode estimar o número de créditos consumidos pelo provedor nos últimos N dias executando a seguinte consulta, especificando o número de dias anteriores como um número negativo:

-- Estimate the number of credits consumed in the past 5 days.
SELECT * FROM TABLE(SAMOOHA_BY_SNOWFLAKE_LOCAL_DB.LIBRARY.PRA_CONSUMPTION_UDTF(-5));
Copy

Escolha do tamanho de um warehouse

As clean rooms usam a lógica de dimensionamento automático com base no tamanho do conjunto de dados para escolher um warehouse para sua análise. No entanto, o provedor pode escolher explicitamente um tamanho de warehouse de uma lista de tamanhos e tipos permitidos pelo consumidor. O provedor escolhe o tamanho do warehouse da seguinte forma:

  1. O consumidor chama consumer.set_provider_run_configuration especificando os tamanhos e tipos de warehouse que podem ser usados para um determinado modelo quando executado pelo provedor.

  2. O provedor chama provider.view_warehouse_sizes_for_template para ver quais tamanhos e tipos de warehouse são permitidos para análises executadas pelo provedor.

  3. O provedor especifica a combinação de tamanho e tipo a ser usada em sua solicitação de análise (provider.submit_analysis_request).

Um provedor pode solicitar apenas os tamanhos e tipos de warehouse listados explicitamente pelo consumidor.

Consumidor

CALL samooha_by_snowflake_local_db.CONSUMER.enable_templates_for_provider_run(
  $cleanroom_name,
  [$template1, $template2],
  TRUE,
  {
    $template1: {'warehouse_type': 'STANDARD', 'warehouse_size': ['MEDIUM', 'LARGE']},
    $template1: {'warehouse_type': 'SNOWPARK-OPTIMIZED', 'warehouse_size': ['MEDIUM', 'XLARGE']},
    $template2: {'warehouse_type': 'STANDARD', 'warehouse_size': ['MEDIUM', 'XLARGE']}
  });
Copy

Provedor

CALL samooha_by_snowflake_local_db.PROVIDER.VIEW_WAREHOUSE_SIZES_FOR_TEMPLATE($cleanroom_name, $template_name, $consumer_account_loc);
CALL samooha_by_snowflake_local_db.provider.submit_analysis_request(
  $cleanroom_name,
  $consumer_locator_id,
  $template1,
  ['SAMOOHA_SAMPLE_DATABASE.DEMO.CUSTOMERS'],
  ['SAMOOHA_SAMPLE_DATABASE.DEMO.CUSTOMERS'],
  object_construct(
    'dimensions', ['c.REGION_CODE'],
    'measure_type', ['AVG'],
    'measure_column', ['c.DAYS_ACTIVE'],
    'warehouse_type', 'STANDARD',        -- If this type and size pair were not listed by view_warehouse_sizes_for_template,
    'warehouse_size', 'LARGE'            -- the request will automatically fail.
  ));
Copy

Implementação de análises administradas pelo provedor

Importante

Se o consumidor e provedor estiverem em regiões de nuvem diferentes, você precisará ativar o preenchimento automático entre nuvens em ambas as contas e para ambas as clean rooms.

A permissão para executar consultas em uma clean room é gerenciada na UI de clean rooms usando a opção Enable run analysis & query no painel Share clean room no fluxo de configuração da clean room. Para ativar ou desativar as análises executadas pelo provedor, o provedor da clean room ativa o botão de alternância ao lado de sua própria conta nesse painel. Essa alternância não pode ser alterada depois que uma clean room é criada; se você quiser alterar a permissão de uma conta específica para executar consultas em uma clean room publicada, deverá excluir a clean room e criar uma nova.

Aqui estão as etapas para permitir a análise executada pelo provedor em uma nova clean room:

  1. O provedor cria e configura uma clean room, usando um dos modelos compatíveis.

  2. Na etapa Share Clean Room da configuração da clean room, ative Enable run analysis & query ao lado de sua conta para permitir que você execute modelos que ofereçam suporte à análise do provedor nessa clean room.

  3. Quando o consumidor entrar na clean room, ele será avisado antes de entrar que a análise executada pelo provedor está ativada para essa clean room.

  4. O consumidor configura a clean room normalmente para todos os modelos na clean room, incluindo quaisquer modelos que suportem a análise do provedor. Se o consumidor não quiser permitir que um provedor execute um modelo específico, ele poderá omitir os detalhes necessários para esse modelo. Observe que os modelos que oferecem suporte à análise do provedor também oferecem suporte à análise do consumidor.

  5. Depois que o consumidor tiver ingressado na clean room e realizado sua configuração, tanto o provedor quanto o consumidor poderão executar modelos na clean room por meio do fluxo de análise normal.

As permissões de análise executadas pelo provedor não podem ser revogadas após serem concedidas. A única maneira de interromper as análises executadas pelo provedor é o provedor ou o consumidor excluir a clean room.