Como preparar dados para uma listagem¶
Este tópico contém orientações para a preparação da criação de uma listagem, incluindo como preparar um produto de dados para diferentes tipos de listagens.
Neste tópico:
Preparação para criar uma listagem¶
Antes de criar uma listagem, faça o seguinte:
Decida como oferecer seu produto de dados. Consulte Opções de disponibilidade da listagem e Opções de acesso à listagem.
Configure as funções e privilégios para simplificar a criação de listagens. Consulte Configuração de funções e privilégios para listagens.
Identifique os objetos que você deseja compartilhar. Consulte Decisão sobre o que colocar em uma listagem.
Prepare os objetos para serem compartilhados com outras pessoas. Consulte Preparação dos compartilhamentos para sua listagem.
Determine como você deseja gerenciar o acesso ao seu produto de dados:
Forneça acesso gratuitamente, sem restrições.
Cobre pela sua listagem criando uma listagem paga. Consulte Como se preparar para oferecer uma listagem paga.
Ofereça acesso limitado ao seu produto de dados como uma avaliação gratuita e, em seguida, ofereça acesso ilimitado ao seu produto de dados mediante solicitação. Consulte Prepare-se para oferecer uma listagem de teste limitada.
Escolha em qual(is) região(ões) de nuvem você deseja oferecer sua listagem. Consulte Preparação de sua listagem para compartilhamento com outras regiões.
A listagem e o compartilhamento de dados devem estar em conformidade com as Políticas do provedor do Snowflake.
Configuração de funções e privilégios para listagens¶
Quando você cria uma listagem, você a cria a partir da conta que tem os dados ou pacote de aplicativo nela contidos. A função que anexa um produto de dados a uma listagem e publica a listagem deve ser a mesma que criou e, portanto, possui o pacote de aplicativo ou compartilhamento. Você não pode transferir o privilégio OWNERSHIP para um compartilhamento.
Se você usar uma função diferente para criar e gerenciar a listagem, conceda o privilégio MODIFY na listagem à função que possui o pacote de aplicativo ou compartilhamento. Por exemplo:
- Função de proprietário de compartilhamento ou pacote de aplicativo:
Privilégio OWNERSHIP no pacote de aplicativo ou compartilhamento. Privilégio MODIFY na listagem.
- Função de proprietário da listagem:
Privilégio OWNERSHIP na listagem.
Privilégio global CREATE DATA EXCHANGE LISTING.
Na conta do provedor, você pode usar um dos seguintes itens para criar e gerenciar listagens:
- ACCOUNTADMIN:
Se você usar a função ACCOUNTADMIN para criar e gerenciar listagens, a função ORGADMIN deverá primeiro delegar privilégios para configurar o preenchimento automático.
- Função personalizada:
Se você usar uma função personalizada, a função ORGADMIN deverá primeiro delegar privilégios para configurar o preenchimento automático à função ACCOUNTADMIN, que poderá então ser usada para conceder os privilégios relevantes à função personalizada.
Para obter mais informações sobre a concessão de privilégios de compartilhamento, consulte Concessão de privilégios a outras funções.
Decisão sobre o que colocar em uma listagem¶
Enquanto você se prepara para compartilhar dados de sua conta com uma listagem, decida o que colocar na listagem.
Primeiro, certifique-se de que os dados que você deseja compartilhar estejam no Snowflake, e que você tem os direitos legais e contratuais para compartilhar os dados. Se necessário, carregue os dados que você deseja compartilhar no Snowflake. Consulte Visão geral do carregamento de dados.
Nota
Na medida em que quaisquer dados em sua listagem ou conjunto de dados sejam regidos por quaisquer leis ou obrigações contratuais, você deve assegurar-se de que tem os direitos legais e contratuais de compartilhar tais dados. Por exemplo, você só pode compartilhar informações de saúde protegidas (PHI) através de uma listagem personalizada e, para isso, você precisa: (1) ter assinado um contrato de associação comercial (BAA) com a Snowflake e o Consumidor que recebe as PHI e; (2) garantir que o Consumidor também tenha assinado um BAA com a Snowflake. Além disso, embora você possa compartilhar dados pessoais pela listagem gratuita ou personalizada, para fazê-lo você deve ter os direitos legais e contratuais aplicáveis se os dados não estiverem disponíveis publicamente.
Em seguida, decida como oferecer os dados que você tem como uma listagem. Se você planeja oferecer listagens no Snowflake Marketplace ou apenas como listagens privadas diretamente a clientes específicos, você pode tomar decisões diferentes sobre o que colocar na listagem.
Considere a disponibilidade de seus dados.
Considere os consumidores que você espera que tenham acesso às suas listagens.
Considere os formatos dos dados que você seleciona para o compartilhamento, tais como tabela, exibição, exibição segura ou outro objeto de banco de dados.
Por exemplo, se você quiser fornecer listas sobre o tratamento de cães, você pode tomar decisões como as seguintes:
Ofereça uma listagem gratuita disponível ao público no Snowflake Marketplace com informações sobre raças de cães e comprimento do pelo.
Ofereça uma listagem de avaliação limitada no Snowflake Marketplace com um exemplo de produto de dados que contém dados sobre o tempo necessário para cuidar de um poodle padrão, com a opção para os consumidores solicitarem um produto de dados completo sobre insights de preparação para mais raças de cães.
Ofereça uma listagem de avaliação limitada no Snowflake Marketplace com um produto de dados que contém dados sobre o tempo necessário para cuidar de qualquer raça de cachorro, com a opção para os consumidores solicitarem acesso ilimitado ao seu produto de dados.
Ofereça uma listagem privada a uma organização parceira com informações sobre o tempo necessário para cuidar de vários cães, e a frequência típica de consultas para diferentes raças de cães.
Neste exemplo, você oferece dados valiosos no Snowflake Marketplace, mas oferece insights mais específicos a uma organização com a qual você já tem uma relação comercial de confiança.
Prepare-se para oferecer uma listagem de teste limitada¶
Uma listagem de avaliação limitada permite que você ofereça uma amostra do seu produto de dados como uma avaliação gratuita, dando aos consumidores informações sobre o que pode estar disponível em um produto de dados completo, ou acesso por tempo limitado ao seu produto de dados completo. Os provedores podem definir o período de disponibilidade para listagens de teste limitadas de 1 a 90 dias. Para obter mais informações sobre listagens de testes limitadas, consulte Listagens de avaliação limitada.
Se você optar por oferecer uma amostra do seu produto de dados completo, o produto de dados de amostra idealmente fornecerá um subconjunto dos dados reais incluídos no seu produto de dados completo e será representativo do produto de dados completo das seguintes maneiras:
Contém as mesmas colunas.
Contém intervalos e distribuições de valores iguais ou semelhantes nos dados.
As listagens de avaliação limitada incluem um dicionário de dados, portanto, a forma geral dos dados no produto de dados completo deve ficar clara no produto de dados de amostra que você oferece.
Por exemplo, se você for uma empresa de treinamento e cuidados com cães, considere oferecer um dos seguintes produtos de dados de amostra com uma listagem de avaliação limitada:
Amostra de recomendação de produto de dados |
Exemplo de produto de dados de amostra |
Exemplo do produto de dados completo |
---|---|---|
Contém um conjunto de dados completo para um atributo completo específico dos dados. |
Contém informações atualizadas sobre a preparação de um Poodle Padrão. |
Contém informações atualizadas sobre cuidados com todas as raças de cães. |
Contém o conjunto de dados completo para um período específico e desatualizado. |
Contém informações sobre cuidados e preços para todas as raças de cães a partir de maio de 2021. |
Contém informações atualizadas sobre cuidados e preços para todas as raças de cães. |
Contém dados sintéticos representativos do produto de dados completo. |
Contém informações e preços atualizados sobre o treinamento da raça fictícia de cães Acadian Hound. |
Contém informações e preços atualizados sobre o treinamento de todas as raças de cães. |
Oferecer um subconjunto relevante e completo de seu produto de dados completo como produto de dados de amostra para sua listagem de avaliação limitada ajuda os consumidores a compreender o valor de seu produto de dados completo e aumenta a probabilidade de eles solicitarem o produto de dados completo.
Limite a funcionalidade do Snowflake Native App para consumidores de avaliação¶
Se você oferecer seu Snowflake Native App no Snowflake Marketplace como uma listagem de avaliação limitada e quiser limitar a funcionalidade disponível para consumidores de avaliação, use a função de sistema SYSTEM$IS_LISTING_TRIAL ao criar exibições seguras, UDFs seguras ou aplicativos Streamlit inclusos em seu Snowflake Native App.
Usar a função do sistema para controlar a visibilidade dos dados e a saída da UDF significa que você não precisa manter um pacote de aplicativo separado para limitar a funcionalidade aos consumidores de avaliação.
Você pode limitar a funcionalidade do seguinte:
Exibição segura
Funções definidas pelo usuário (UDF) seguras
Lógica de aplicação, como o script de configuração ou um aplicativo Streamlit.
Para obter mais detalhes sobre como adicionar conteúdo de dados ou UDFs para seu pacote de aplicativo, consulte:
Como adicionar conteúdo de dados compartilhados a um pacote de aplicativo.
Como adicionar lógica de aplicativo a um pacote de aplicativo.
Exemplo 1: Retornar dados diferentes em uma exibição para consumidores em uma avaliação¶
Para definir uma exibição segura que retorne dados apenas aos consumidores com acesso à versão completa de seu Snowflake Native App, você pode usar o seguinte código de exemplo:
CREATE OR REPLACE SECURE VIEW limited_functionality_view
AS
SELECT *
FROM db_name.schema_name.table_name
WHERE SYSTEM$IS_LISTING_TRIAL() = false;
Se um consumidor que está testando seu Snowflake Native App tentar consultar a exibição, eles não visualizarão nenhum resultado.
Exemplo 2: Exibir a saída de um SQL UDF segura somente para consumidores que não estejam em período de avaliação¶
Para definir uma UDF SQL shared_function()
que retorne resultados apenas para consumidores com acesso à versão completa do Snowflake Native App, você pode usar o seguinte código de exemplo:
CREATE OR REPLACE SECURE FUNCTION schema_name.shared_function()
RETURNS VARCHAR
AS
$$
CASE
WHEN SYSTEM$IS_LISTING_TRIAL() = FALSE
THEN 'full product'
ELSE 'trial'
END
$$;
Neste exemplo, se um consumidor estiver testando seu Snowflake Native App, quando eles chamarem a UDF segura eles verão a saída trial
.
Exemplo 3: Exibir uma UI do Streamlit diferente para consumidores em período de avaliação¶
Você também pode chamar a função do sistema dentro de um aplicativo Streamlit para limitar a funcionalidade do aplicativo Streamlit em um Snowflake Native App. Por exemplo, você pode exibir um título na UI para consumidores que estão testando seu Snowflake Native App, e outro título para os consumidores com acesso total ao seu Snowflake Native App.
# Import python packages
import streamlit as st
from snowflake.snowpark.context import get_active_session
session = get_active_session()
# Here we assign result of our function to a variable
result = session.sql("SELECT SYSTEM$IS_LISTING__TRIAL()")
# Write directly to the app
if result:
st.title("Enjoy your limited trial of this application!")
else:
st.title("Welcome to the full version of this application!")
Como se preparar para oferecer uma listagem paga¶
Se você quiser cobrar por sua listagem, você deve fazer o seguinte:
Determine se você pode oferecer listagens pagas. Consulte Quem pode fornecer listagens pagas.
Prepare os dados para oferecer um período de teste dos dados. Consulte Como preparar ações para uma listagem paga.
Decida sobre o plano de preços que melhor se adequa à sua listagem. Consulte Modelos de preços de listagens pagas para rever os planos de preços disponíveis.
Onde você pode publicar listagens pagas¶
Somente provedores em determinadas regiões podem publicar listagens pagas. Consulte Quem pode fornecer listagens pagas.
Além disso, as listagens pagas só podem ser publicadas em determinadas regiões. Consulte Locais de consumidores compatíveis para ver em quais regiões você pode publicar listagens pagas.