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

Nota

Auto-fulfillment isn’t available on trial accounts. Auto-fulfillment is configured on listings, and to offer listings, you must use a full account.

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.

When your data product is auto-fulfilled to a new region for the first time, it’s transferred to an SSA in that region Auto-fulfillment can be configured with SUB_DATABASE or SUB_DATABASE_WITH_REFERENCE_USAGE settings.

  • SUB_DATABASE allows selected objects to be available on-demand.

  • SUB_DATABASE_WITH_REFERENCE_USAGE provides account-level scheduling for application packages.

Nota

Specifying FULL_DATABASE for the auto-fulfillment refresh type is deprecated.

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 que o pacote de aplicativos seja atualizado toda vez 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:

  • O Snowflake permite a existência de vários bancos de dados com o mesmo nome. O preenchimento automático cria uma única conta de área de compartilhamento seguro (SSA) na região de destino, e a SSA não pode ter dois bancos de dados com o mesmo nome. Como resultado, se você tiver dois ou mais bancos de dados com o mesmo nome na conta de origem, o preenchimento automático acrescentará um prefixo exclusivo ao nome do banco de dados para evitar conflitos na conta de SSA. Por exemplo, imagine o seguinte cenário:

    • Uma organização tem duas contas, produção e desenvolvimento.

    • A produção e o desenvolvimento têm um banco de dados chamado AnyCompanyData.

    Como o destino sempre terá uma conta de SSA com dois bancos de dados, o preenchimento automático acrescentará um prefixo ao nome do banco de dados duplicado, resultando em dois bancos de dados: AnyCompanyData e PrefixXXXXX_AnyCompanyData.

  • Se você se inscreveu no Snowflake usando o AWS Marketplace, Google Cloud 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 (SUB_DATABASE) é usado por padrão.

  • (Deprecated) If a listing uses objects that are located in a database that’s already in full database mode (FULL_DATABASE), a warning displays in Snowsight and the database remains in full database mode.

  • O Snowflake compila o histórico de atualizações de preenchimento automático de listagens e envia e-mails diariamente sobre falhas nessas atualizações. Essas mensagens são enviadas para o endereço de e-mail especificado na listagem.

  • If the provider has a tag that includes a masking policy at the account level, auto-fulfillment doesn’t take that masking policy into account when auto-fulfilling the data product. For auto-fulfillment, the scope of sharing is at the database, schema, and table level, but not at the account level.

  • Auto-fulfillment enforces a 10TB limit on the size of the data product. For more information, refer to the O banco de dados tem mais de 10 terabytes troubleshooting topic. After assessing the cost implications, you can contact Snowflake Support to increase the size limit.

  • 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.