Gerenciamento de listagens com SQL como um provedor – Exemplos

A seguir estão exemplos de tarefas comuns que os provedores podem concluir programaticamente com comandos SQL:

Compartilhamento de dados com outra conta Snowflake

Crie uma listagem privada para MySHARE e publique imediatamente.

Descrição

Notas

Crie uma listagem de destino para outra conta.

Envie a listagem para aprovação imediata (REVIEW=TRUE por padrão, mas mostrado para maior clareza).

Publicar na aprovação (PUBLISH=TRUE por padrão, mas mostrado para maior clareza).

CREATE EXTERNAL LISTING SHARED_WITH_ANOTHER_ACCOUNT
SHARE MySHARE AS
$$
   title: "weather data"
   description: "Listing of weather data for all zipcodes in America"
   listing_terms:
     type: "OFFLINE"
   targets:
     accounts: ["targetorg.targetaccount"]
$$ PUBLISH=TRUE REVIEW=TRUE;
Copy

Compartilhamento e réplica de listagem privada

Crie uma listagem privada que será replicada automaticamente para outras regiões.

Descrição

Notas

Crie uma listagem privada replicada.

Replique a listagem e atualize a cada 10 minutos.

Envie a listagem para aprovação imediata (REVIEW=TRUE por padrão).

Publique na aprovação (PUBLISH=TRUE por padrão).

CREATE EXTERNAL LISTING SHARED_AND_REPLICATED
SHARE MySHARE AS
$$
   title: "weather data"
   description: "Listing containing weather data for all zipcodes in America"
   listing_terms:
     type: OFFLINE
   targets:
     accounts: [“targetorg.targetaccount”]
   auto_fulfillment:
     refresh_type: SUB_DATABASE
     refresh_schedule: '10 MINUTE'
$$;
Copy

Para obter mais informações sobre o preenchimento automático entre nuvens, consulte Preenchimento automático de listagens.

Compartilhamento público no Marketplace

Crie uma listagem pública no Snowflake Marketplace.

Descrição

Notas

Crie uma listagem pública replicada no Marketplace.

Replique a listagem em várias regiões.

Replique a listagem e atualize a cada 10 minutos.

Envie a listagem para aprovação imediata (REVIEW=TRUE por padrão, não mostrado).

Publicar na aprovação (PUBLISH=TRUE por padrão, não mostrado).

CREATE EXTERNAL LISTING PUB_SHARE_AND_REPLICATE
SHARE MySHARE AS
$$
 title: "Weather Data"
 subtitle: "Weather Data on Snowflake"
 description: "This listing contains weather data for all zipcodes in America"
 terms_of_service:
   type: "STANDARD"
 targets:
   regions: ["PUBLIC.US_WEST", "PUBLIC.AWS_US_EAST_1"]
 auto_fulfillment:
   refresh_schedule: "10 MINUTE"
   refresh_type: "SUB_DATABASE"
 profile: "VERY_STARK_INDUSTRIES_PUBLIC_PROFILE"
 categories: ["BUSINESS"]
 data_dictionary:
   featured:
     database: "DATABASE_NAME"
     objects:
       - schema: "SCHEMA_NAME"
         domain: TABLE
         name: "TABLE_NAME"
 business_needs:
   - name: "Data Quality and Cleansing"
     description: "Test listing for data cleansing"
 usage_examples:
   - title: "Aggregate Weather data for a location"
     description: "Calculate the minimum and maximum temperatures over a year"
     query: "SELECT 1"
 data_attributes:
   refresh_rate: "HOURLY"
   geography:
     geo_option: "NOT_APPLICABLE"
 resources:
   documentation: "https://snowflake.com/doc"
   media: "https://www.youtube.com/watch?v=AR88dZG-hwo"
 $$;
Copy

Criação de um rascunho de listagem privada pronto para ser compartilhado com outra conta

Crie um rascunho de listagem que será replicado automaticamente para outras regiões.

Este exemplo é idêntico ao Compartilhamento de dados com outra conta Snowflake, mas cria uma listagem de rascunho. Para uma descrição completa de todas as combinações das propriedades REVIEW e PUBLISH e seus significados, consulte CREATE LISTING.

Descrição

Notas

Crie uma listagem privada replicada.

Replique a listagem e atualize a cada 10 minutos.

Não envie a listagem para aprovação (REVIEW=FALSE).

Não publique (PUBLISH=FALSE).

CREATE EXTERNAL LISTING DRAFT_PRIVATE_REPLICATED
SHARE MySHARE AS
$$
   title: "weather data"
   description: "Listing containing weather data for all zipcodes in America"
   listing_terms:
     type: OFFLINE
   targets:
     accounts: [“targetorg.targetaccount”]
   auto_fulfillment:
     refresh_type: SUB_DATABASE
     refresh_schedule: '10 MINUTE'
$$ PUBLISH=FALSE REVIEW=FALSE;
Copy