Preenchimento automático de listagens

Se você for um provedor, poderá usar o preenchimento automático entre nuvens (preenchimento automático) para uma listagem para replicar automaticamente seu produto de dados para outras regiões do Snowflake sem precisar replicar os dados manualmente.

Quando o preenchimento automático está ativado para uma listagem, o Snowflake preenche automaticamente seu produto de dados para as regiões do consumidor, conforme necessário. Um produto de dados é qualquer pacote de aplicativos ou compartilhamento anexado à sua listagem.

Ao utilizar o preenchimento automático, você pode evitar replicar manualmente seus produtos de dados e aprovar pedidos para suas listagens, ajudando os consumidores a acessar suas listagens mais rapidamente.

Nota

O uso do Preenchimento automático entre nuvens em um Snowflake Native App with Snowpark Container Services só é compatível com o Amazon Web Services (AWS) e o Microsoft Azure. Consulte Compreensão das limitações do Snowflake Native App Framework para obter mais informações.

Compreensão do preenchimento automático

O preenchimento automático permite que você ofereça um produto de dados em qualquer região compatível do Snowflake, com base nas opções de disponibilidade e acesso selecionadas para sua listagem, sem precisar replicar os dados manualmente.

Você pode configurar e ativar o preenchimento automático quando uma listagem está em estado de rascunho ou publicada. Quando o preenchimento automático é ativado para uma listagem, o Snowflake preenche automaticamente seu produto da listagem para as regiões, conforme a necessidade.

A forma como você disponibiliza seu produto de dados em outras regiões depende de seu produto de dados e de como os consumidores acessam sua listagem:

  • Se seu produto de dados for um pacote de aplicativo, use o preenchimento automático para disponibilizar seu produto de dados em outras regiões.

  • Se seu produto de dados for um compartilhamento, use o preenchimento automático na maioria dos casos:

    • Para listagens gratuitas ou de avaliação limitada no Snowflake Marketplace, você pode usar o preenchimento automático entre nuvens ou replicar manualmente os dados.

    • Para listagens pagas, você usa o preenchimento automático.

    • Para todas as listagens compartilhadas com contas de consumidor específicas, a Snowsight detecta automaticamente se a conta de destino está ou não em uma região diferente e habilita o preenchimento automático. Você não pode replicar manualmente as listagens privadas para outras regiões.

Quando você disponibiliza um produto de dados em outras regiões, incorre em custos adicionais. Consulte Custos de autoatendimento.

Como funciona o preenchimento automático

Como provedor, quando você configura o Preenchimento automático entre nuvens para a sua listagem, o Snowflake gerencia o provisionamento para uma área de compartilhamento seguro (SSA) e o preenchimento automático do seu produto de dados para regiões remotas. A SSA é gerenciada pelo Snowflake. Se o seu produto de dados já existir na região remota, os consumidores dessa região poderão obtê-lo instantaneamente.

Cada listagem tem um produto de dados associado a ela, seja um compartilhamento ou um pacote de aplicativos. Esse produto de dados contém objetos de um ou mais bancos de dados, bem como a lógica do aplicativo para um pacote de aplicativos. O momento exato em que seu produto de dados é preenchido automaticamente em uma região remota depende de como você disponibiliza sua listagem:

  • As listagens privadas são preenchidas automaticamente depois que os consumidores especificados recebem sua listagem.

  • As listagens públicas compartilhadas em Snowflake Marketplace são preenchidas automaticamente depois que um consumidor na região específica recebe a listagem.

Quando seu produto de dados é preenchido automaticamente em uma nova região pela primeira vez, ele é transferido para uma SSA nessa região. Ao contrário da replicação, o preenchimento automático não mantém uma réplica sincronizada continuamente. O preenchimento automático pode ser configurado com FULL_DATABASE ou SUBDB. FULL_DATABASE disponibiliza todos os objetos em um banco de dados, mas sem sincronização contínua. SUBDB permite que objetos selecionados estejam disponíveis sob demanda. Na replicação, FULL_DATABASE garante uma cópia sincronizada periodicamente, enquanto SUB_DATABASE sincroniza componentes específicos.

Várias listagens podem usar o mesmo banco de dados, mas o banco de dados só é preenchido automaticamente uma vez para uma nova região.

Nota

Para o Business Critical Edition (BCE), o tratamento de dados compartilhados é diferente de implantações de alta segurança como VPS. Embora o BCE não exija a criação de uma SSA separada para a região, ele impõe segurança e conformidade rigorosas dos dados com recursos como a criptografia Tri-Secret Secure.

Para implantações como o Virtual Private Snowflake (VPS) e ambientes Snowflake específicos do governo, há uma área de compartilhamento seguro separada (SSA) para cada implantação. Isso garante que o preenchimento automático permaneça em conformidade com os rigorosos requisitos de segurança e isolamento de dados exclusivos desses ambientes.

Como o preenchimento automático atualiza os dados

Ao configurar o preenchimento automático para a sua listagem, você pode configurar um intervalo de atualização para o seu produto de dados.

Após o preenchimento automático inicial de seu produto de dados para a SSA em uma região, as alterações em seu produto de dados são sincronizadas a partir de sua conta com base na atualização de dados configurada:

Tipo de atualização de dados

Descrição

Atualização de dados baseada em acionador

Os provedores podem usar o site SYSTEM$TRIGGER_LISTING_REFRESH para acionar uma atualização de dados sob demanda, garantindo que os consumidores recebam as informações mais atualizadas.

O Snowflake recomenda o uso da atualização de dados baseada em acionador quando um processo de pipeline de extração-transformação-carregamento (ETL) é concluído e você deseja acionar uma replicação quando os dados estiverem prontos. Por exemplo, se você for um provedor de dados que fornece análise de ações para instituições financeiras, poderá acionar uma atualização para todos os analistas com novos conjuntos de dados assim que eles forem atualizados em seu pipeline de ETL upstream.

Observação: esse recurso só está disponível usando SQL.

Atualização baseada em acionador de um pacote de aplicativos

Se o produto de dados de uma listagem for um pacote de aplicativos, os provedores poderão definir SYSTEM$TRIGGER_LISTING_REFRESH para acionar uma atualização sob demanda do pacote de aplicativos. No entanto, os provedores devem executar essa função toda vez que o pacote de aplicativos precisar ser atualizado.

Para configurar o pacote de aplicativos para ser atualizado sempre que a diretiva de lançamento for modificada, use a cláusula LISTING_AUTO_REFRESH do comando ALTER APPLICATION PACKAGE.

Atualização de dados baseada em intervalos

Os provedores podem estabelecer uma atualização de dados baseada em intervalos para todos os consumidores de uma listagem, com períodos de tempo que variam de um minuto a oito dias. Cada listagem associada a um banco de dados opera no mesmo intervalo de atualização.

A configuração de atualização de dados baseada em intervalos é recomendada quando você precisa de atualizações em uma cadência predefinida. Por exemplo, os provedores que atualizam conjuntos de dados semanalmente podem usar a atualização baseada em intervalos para atualizar o banco de dados no mesmo cronograma. Cada atualização concluída aciona a próxima atualização de acordo com a cadência. Consulte Definir o intervalo de atualização no nível da conta para obter mais detalhes.

Observação: esse recurso está disponível usando SQL ou Provider Studio na Snowsight.

Atualização de dados com base em cronograma

Os provedores podem estabelecer um carimbo de data/hora e programar a atualização de dados para todos os consumidores de uma listagem. Todas as listagens que utilizam um banco de dados obedecerão ao mesmo cronograma de atualização.

A atualização de dados com base em cronograma é recomendada para casos de uso em que as atualizações de listagem precisam ocorrer em um carimbo de data/hora e cronograma específicos. Por exemplo, os provedores de dados que precisam oferecer um carimbo de data/hora previsível para quando as atualizações estiverem disponíveis para todos os consumidores.

As atualizações de dados baseadas em intervalos e cronogramas não podem ser usadas simultaneamente. Se ambas estiverem configuradas, uma substituirá a outra. Por exemplo, se uma expressão cron for configurada para uma atualização por cronograma que já tenha um intervalo de atualização, ela será substituída para dar suporte à atualização por cronograma. Consulte auto_fulfillment para obter mais detalhes.

Observação: esse recurso está disponível usando SQL ou Provider Studio na Snowsight.

Produtos de dados como compartilhamentos versus pacotes de aplicativos

Ao configurar o preenchimento automático para a sua listagem, o produto de dados que você oferece determina como configurar a atualização de dados.

  • Se o seu produto de dados for um compartilhamento, defina uma atualização de dados quando configurar o preenchimento automático para uma listagem. A atualização de dados se aplica ao banco de dados associado à listagem. Se várias listagens compartilham objetos desse banco de dados, elas compartilham o mesmo tipo de atualização de dados e cronograma/intervalo.

  • Se o seu produto de dados for um pacote de aplicativos, defina uma atualização de dados no nível da conta que se aplique a todos os pacotes de aplicativos disponíveis na sua conta.

Considerações do preenchimento automático

Ao usar o preenchimento automático para suas listagens, considere o seguinte:

  • Se você se inscreveu no Snowflake usando o AWS Marketplace, GCP Marketplace ou Azure Marketplace, você só poderá criar contas e SSAs nessas nuvens. O preenchimento de listagens para regiões fora de sua região atual de serviço de nuvem falhará.

  • Dependendo do tamanho do seu produto de dados, pode levar algum tempo para que o produto de dados esteja disponível para o consumidor. O tamanho do seu produto de dados também pode afetar o custo do preenchimento automático. Consulte Custos de autoatendimento para obter detalhes sobre o custo.

  • Modo de nível de objeto (SUBDB) é usado por padrão.

  • Se uma listagem usar objetos localizados em um banco de dados que já esteja no modo de banco de dados completo (FULL_DATABASE), um aviso será exibido no Snowsight e o banco de dados permanecerá no modo de banco de dados completo.

  • Se usar o Tri-Secret Secure, você deve entrar em contato com o suporte Snowflake para habilitar o Tri-Secret Secure para as áreas de compartilhamento seguras usadas para preenchimento automático.

  • Com o Tri-Secret Secure, os resultados da consulta são criptografados usando uma chave do provedor, uma do Snowflake e uma do consumidor. Cada chave controla o acesso de forma independente. Se uma chave for revogada, somente o respectivo proprietário perderá o acesso. Por exemplo, a revogação da chave do provedor não impede que o consumidor acesse os dados que já foram obtidos.

Nota

O preenchimento automático impõe um limite de 10TB no tamanho do produto de dados. Se você encontrar um erro de dimensionamento, consulte O banco de dados tem mais de 10 terabytes.

Após avaliar as implicações de custo, é possível entrar em contato com o suporte Snowflake para aumentar o limite de tamanho.