Gerenciando o preenchimento automático entre nuvens em Snowflake Data Clean Rooms

Sobre o preenchimento automático entre nuvens

No ambiente de clean room padrão, uma clean room pode ser compartilhada apenas com contas na mesma região de nuvem. Ou seja, o provedor e o consumidor devem estar na mesma região de nuvem.

Se quiser colaborar com um colaborador cuja conta esteja em uma região diferente da sua conta, você deve ativar o preenchimento automático entre nuvens para seu ambiente de clean room e para sua clean room, conforme mostrado nesta página.

Você pode determinar sua própria região de nuvem executando SELECT CURRENT_REGION();

Nota

O preenchimento automático entre nuvens às vezes é chamado de LAF, que é o acrônimo em inglês para preenchimento automático de listagens.

Como habilitar o preenchimento automático entre nuvens

Você pode habilitar o preenchimento automático entre nuvens usando a API ou a UI. Entretanto, observe as limitações para colaboração entre regiões.

Pré-requisitos

Para habilitar o preenchimento automático entre nuvens em uma conta, o administrador da organização deve primeiro habilitá-lo na conta chamando SYSTEM$ENABLE_GLOBAL_DATA_SHARING_FOR_ACCOUNT. Isso é válido para provedores e consumidores.

Saiba mais sobre preenchimento automático e gerenciamento dos privilégios de preenchimento automático.

Habilitação do preenchimento automático entre nuvens na UI

Um administrador de salas limpas habilita o preenchimento automático entre nuvens no nível da conta para todas as salas limpas novas e existentes seguindo estas etapas:

  1. Faça login na UI de salas limpas com sua conta de administrador.

  2. Navegue até Admin > Snowflake Admin.

  3. Ative Cross-Cloud Auto-Fulfillment.

  4. Nenhuma etapa adicional é exigida do provedor ou do consumidor para criar ou ingressar em uma sala limpa na UI. Entretanto, se mais tarde você criar ou ingressar em uma sala limpa na API, deverá seguir as instruções da API para provedores e consumidores.

Habilitação do preenchimento automático entre nuvens na API

Siga estas instruções para criar ou instalar uma sala limpa na API, mesmo que você já tenha habilitado o preenchimento automático entre nuvens na UI.

Administradores de conta

Para habilitar o preenchimento automático entre nuvens em uma conta usando a API, os administradores das contas do provedor e do consumidor devem executar o código de exemplo a seguir usando a função ACCOUNTADMIN. Você precisa executá-lo apenas uma vez por conta.

USE ROLE ACCOUNTADMIN;
-- Optionally check first to see if cross-cloud is enabled on the account.
CALL samooha_by_snowflake_local_db.library.is_laf_enabled_on_account();

-- If not, enable it.
CALL samooha_by_snowflake_local_db.library.enable_laf_on_account();
Copy

Provedores e consumidores

Depois que o preenchimento automático entre nuvens for habilitado em uma conta, veja como habilitá-lo ao criar ou instalar uma sala limpa:

  1. O provedor publica a sala limpa como de costume chamando provider.create_or_update_cleanroom_listing.

  2. O consumidor instala a sala limpa chamando consumer.install_cleanroom. Se o consumidor estiver em uma região de nuvem diferente do provedor, haverá falha em consumer.install_cleanroom com uma mensagem informando que a replicação do preenchimento automático entre nuvens está sendo instalada.

  3. O consumidor continua chamando consumer.install_cleanroom até que seja bem-sucedido. A instalação leva vários minutos.

Neste ponto, o consumidor tem a funcionalidade básica de sala limpa. Se o consumidor quiser suporte para solicitações de modelo de cliente, análises executadas pelo provedor e ativação do provedor, siga estas etapas adicionais:

  1. O provedor chama provider.mount_request_logs_for_all_consumers para permitir a comunicação do consumidor com o provedor.

Exemplo de código da configuração completa:

  1. Provedor: o provedor cria, compartilha e publica uma clean room da maneira padrão.

    USE WAREHOUSE APP_WH;
    USE ROLE SAMOOHA_APP_ROLE;
    
    SET cleanroom_name = 'LAF example';
    SET consumer_locator = '<CONSUMER_LOCATOR>';
    SET consumer_account_name = '<CONSUMER_DATA_SHARING_ACCOUNT_ID>';
    
    CALL SAMOOHA_BY_SNOWFLAKE_LOCAL_DB.provider.cleanroom_init($cleanroom_name);
    
    CALL SAMOOHA_BY_SNOWFLAKE_LOCAL_DB.provider.set_default_release_directive(
      $cleanroom_name,
      'V1_0', '0');
    
    CALL SAMOOHA_BY_SNOWFLAKE_LOCAL_DB.provider.add_consumers(
      $cleanroom_name,
      $consumer_locator,
      $consumer_account_name);
    
    CALL SAMOOHA_BY_SNOWFLAKE_LOCAL_DB.provider.create_or_update_cleanroom_listing($cleanroom_name);
    
    Copy
  2. Consumidor: o consumidor instala a sala limpa.

    USE WAREHOUSE APP_WH;
    USE ROLE samooha_app_role;
    
    SET cleanroom_name = 'LAF example';
    SET provider_locator = '<PROVIDER_LOCATOR>';
    
    -- Initial call starts the process and returns a cross-cloud/region replication failure.
    -- Continue to call this procedure until it returns a success message.
    CALL SAMOOHA_BY_SNOWFLAKE_LOCAL_DB.consumer.install_cleanroom(
      $cleanroom_name,
      $provider_locator);
    
    -- Continue with standard clean room configuration and use.
    -- Consumer can run analyses, but requests to submit a template aren't
    -- supported until the provider calls ``provider.mount_request_logs_for_all_consumers``.
    ...
    
    Copy
  3. Provedor: depois que o consumidor instalar a sala limpa, o provedor deverá montar o compartilhamento de solicitações se quiser habilitar ações baseadas em solicitações entre o provedor e o consumidor. As ações baseadas em solicitações incluem as solicitações do provedor, para executar uma análise, e as solicitações do consumidor, para adicionar um modelo à sala limpa.

    -- Call mount_request_logs_for_all_consumers until it reports success.
    provider.mount_request_logs_for_all_consumers($cleanroom_name);
    
    Copy

    A funcionalidade completa do provedor/consumidor agora está disponível.

Frequência de atualização para contas entre regiões

As solicitações e os dados entre o provedor e o consumidor, quando estão em regiões de nuvem diferentes, estão sujeitos a configurações de frequência de replicação.

Solicitações e dados do provedor ao consumidor

Todos os dados e as solicitações do provedor para o consumidor são atualizados conforme a taxa de atualização da conta (por padrão, a cada 24 horas). Isso inclui criar ou atualizar uma sala limpa, alterar dados do provedor, solicitações de permissão (como análises executadas pelo provedor) e aprovações de solicitações (como modelos do consumidor).

A frequência de solicitação do provedor ao consumidor é controlada pelo cronograma de atualização de replicação da conta.

Solicitações e dados do consumidor ao provedor

A seguinte tabela mostra a frequência de atualização de dados e solicitações do consumidor ao provedor:

Dados

Taxa de atualização

Solicitações, aprovações e alterações, como estas:

  • Solicitações para o provedor (como solicitação para adicionar um modelo)

  • Aprovações para o provedor (como aprovação para análises executadas pelo provedor)

  • Alterações nos dados vinculados do consumidor.

  • Salas limpas criadas após 24 de julho de 2025: 10 minutos

  • Salas limpas mais antigas: 1 hora

Dados de ativação do provedor:

  • Salas limpas criadas após 24 de julho de 2025: 10 minutos

  • Salas limpas mais antigas: 15 minutos

Dados da sala limpa do provedor, como estes:

  • Conjuntos de dados do provedor

  • Solicitações executadas pelo provedor

  • Políticas de sala limpa

  • Metadados de sala limpa do provedor

Você pode alterar a frequência de atualização para solicitações e dados do consumidor para o provedor.

Custos associados à colaboração entre regiões

Há custos adicionais associados a colaboradores em uma região diferente. Para obter mais informações sobre como esses custos são incorridos, consulte Custos de autoatendimento.

Limitações na colaboração entre regiões

Existem as seguintes limitações na colaboração entre regiões:

  • Ao usar a UI de salas limpas, os colaboradores devem compartilhar a mesma região de hospedagem da UI. Por exemplo, se a região de hospedagem da UI de uma conta é «Amazon Web Services: US East (N. Virginia)», e a região de hospedagem da UI da outra conta é «Amazon Web Services: Asia Pacific (Mumbai)», as duas contas não podem colaborar na UI. No entanto, elas podem colaborar usando a API, se ambas as contas e a sala limpa estiverem configuradas para preenchimento automático entre nuvens, conforme descrito nesta página.

  • Um provedor não pode usar privacidade diferencial na sala limpa.

  • Os colaboradores não podem vincular tabelas externas e tabelas iceberg em salas limpas.

  • Um consumidor não pode executar uma análise de vários provedores.

  • Os colaboradores não podem usar políticas de mascaramento ou políticas de acesso a linhas.