列表清单引用

以编程方式创建 Snowflake 列表需要使用以 YAML (https://yaml.org/spec/ (https://yaml.org/spec/)) 编写的清单。 下面介绍清单的整体格式以及清单的每个部分,包括细节和示例。

另请参阅:

CREATE LISTINGALTER LISTINGDESCRIBE LISTINGSHOW LISTINGSDROP LISTING

备注

字段可以是以下任意一种:

  • 可选 – 对于 Marketplace 列表或私密列表为可选。

  • 必填 – 对于 Marketplace 列表或私密列表为必填。

  • 限定 – Marketplace 列表或私密列表的要求不同,并且由列表类型来限定是可选还是必填。例如,对于私密列表为 可选,但对于 Marketplace 列表为 必填

列表清单的一般格式是:

#
# Listing prefix
#
title: <listing title>
subtitle: <Optional listing subtitle>
description: <listing description>
profile : <Optional name of the provider profile>

listing_terms:
  - # Required listing terms that the consumer must sign
auto_fulfillment:
  - # Required when the target accounts are outside the provider's region, otherwise optional.
data_dictionary:
  - # Optional data dictionary
business_needs:
  - # Optional <List>BusinessNeed elements, maximum 6.
usage_examples:
  - # Optional <List>UsageExample elements, maximum 10.
targets:
  - # Required <List> Consumer accounts to target with this private listing
Copy

以下各部分将详细介绍每个列表清单字段、子字段,并提供关联的示例。

列表前缀

每个列表清单都以下列字段开头:

  • title (字符串,必填,最大长度 110):列表标题。

  • subtitle (字符串,对于私密列表为可选,对于 Marketplace 列表为必填,最大长度 110):列表子标题。

  • description (字符串,必填,最大长度 7500):列表描述。

  • custom_contact (字符串,可选):电子邮件地址。必须是有效、格式正确的电子邮件地址。

  • profile (字符串,对于私密列表为可选,对于 Marketplace 列表为必填):已批准的提供商简介的名称。

有关更多信息,请参阅:提供商基本信息

备注

要查找 profile 的值,请执行 show profiles in data exchange SNOWFLAKE_DATA_MARKETPLACE;

列表前缀示例

title: Weather information
subtitle: Historical weather by postcode.
description: This listing includes historical weather data by post code.
profile: My provider profile
Copy

listing_terms

必填listing_terms (必填)字段包含以下名称值对:

  • listing_terms.type (枚举,必填):必须是以下之一:

    • STANDARD – 指“标准 Marketplace 产品协议”。

    • OFFLINE – 表示条款由双方在线下协商。

    • CUSTOM – 指定时,必须指定 listing_terms.link 的值。

  • listing_terms.link (类型为 CUSTOM 时为必填):指向提供商列表条款的完全限定链接,必须以 httphttps 开头。

有关更多信息,请参阅 基本信息 中表格内的 服务条款

listing_terms 示例

. . .
listing_terms:
  type: "CUSTOM"
  link: "http://example.com/my/listing/terms"
. . .
Copy

targets

targets 字段对于 Marketplace 列表和私密列表均为必填。

包含一个列表,最多 100 个元素:

  • targets.regions (如果 targets.accounts 不存在,则为必填):

    与之共享列表的区域的列表。

    每个目标区域的形式都必须是“region_groups_type.snowflake_region”。此外,还支持“ALL”以包括所有区域。

    例如“PUBLIC.AWS_US_EAST_1”。

    有关区域组类型和 Snowflake 区域的完整列表,请执行:

    SHOW REGIONS IN DATA EXCHANGE SNOWFLAKE_DATA_MARKETPLACE;
    
    Copy

有关更多信息,请参阅 使用者账户(仅限私密列表)

targets 示例

为该列表定义一组目标账户。

. . .
targets:
   accounts: ["Org1.Account1", "Org2.Account2"]
. . .
Copy

为该列表定义一组目标区域。

. . .
targets:
   regions: ["PUBLIC.AWS_US_EAST_1", "PUBLIC.AZURE_WESTUS2"]
. . .
Copy

auto_fulfillment

Cross-Cloud Auto-Fulfillment 允许与列表相关联的数据产品自动履行到其他 Snowflake 区域。auto_fulfillment 字段定义了自动履行的发生方式。

有关 Cross-Cloud Auto-Fulfillment 的更多信息,请参阅 配置 Cross-Cloud Auto-Fulfillment

只有在与同一区域中的账户共享时才可选,否则为必填。

auto_fulfillment 字段:

  • 在数据产品是应用程序包时为必填。

  • 在目标账户位于提供商区域之外时,对于私密列表为必填。

  • 在数据产品是共享时为可选,但对于 Marketplace 列表则建议填写该字段。

包含以下名称值对:

  • auto_fulfillment.refresh_schedule

    • <num> MINUTE – 分钟数。最短 10 分钟,最长 8 天或 11520 分钟。

      如果将 refresh_type 指定为 SUB_DATABASE_WITH_REFERENCE_USAGE,不要包括此设置。应用程序包的刷新计划必须在账户级别定义,不能在列表级别指定。

    有关更多信息,请参阅 设置账户级别刷新频率

  • auto_fulfillment.refresh_type (使用 auto_fulfillment 时为必填):必须是以下类型之一 –

    • FULL_DATABASE – 完整数据库复制。

    • SUB_DATABASE_WITH_REFERENCE_USAGE – 应用程序包。

另请参阅 配置 Cross-Cloud Auto-Fulfillment

auto_fulfillment 示例

. . .
listing_terms: . . .
. . .
auto_fulfillment:
  refresh_schedule: 10 MINUTE
  refresh_type: FULL_DATABASE
. . .
Copy

Snowflake Native App auto_fulfillment 示例

请注意,SUB_DATABASE_WITH_REFERENCE_USAGE 只能与应用程序包一起使用,不能与 auto_fulfillment.refresh_schedule 结合使用。

. . .
listing_terms: . . .
. . .
auto_fulfillment:
  refresh_type: SUB_DATABASE_WITH_REFERENCE_USAGE
. . .
Copy

business_needs

列表按业务需求分组,以便发现。业务需求描述特定列表如何满足给定的业务需求。有关更多信息,请参阅 业务需求

STANDARD 业务需求

  • business_needs.name (使用 business_needs 时为必填):

    有效值包括:

    • “360-Degree Customer View”

    • “Supply Chain”

    • “Personalize Customer Experiences”

    • “Inventory Management”

    • “Accelerating Advertising Revenue”

    • “Attribution Analysis”

    • “Contact Data Enrichment”

    • “Foot Traffic Analytics”

    • “Audience Segmentation”

    • “Sentiment Analysis”

    • “ESG Investment Analysis”

    • “Fundamental Analysis”

    • “Quantitative Analysis”

    • “Risk Analysis”

    • “Fraud Remediation”

    • “Customer Onboarding”

    • “Identity Resolution”

    • “Asset Valuation”

    • “Economic Impact Analysis”

    • “Demand Forecasting”

    • “Population Health Management”

    • “Real World Data (RWD)”

    • “Location Planning”

    • “Regulatory Reporting”

    • “Subscriber Acquisition and Retention”

    • “Life Sciences Commercialization”

    • “Patient 360”

    • “Blockchain Analysis”

    • “Customer Acquisition”

    • “Data Quality and Cleansing”

    • “Location Data Enrichment”

    • “Location Geocoding”

    • “Machine Learning”

    • “Market Analysis”

    • “Pricing Analysis”

    • “Audience Activation”

business_needs[].description (使用 business_needs 时为必填):关联的 business_needs.name 的描述,最大长度 1000。

business_needs[].type:STANDARD(可选)。

CUSTOM 业务需求

自定义业务需求包括用户定义的 namedescription 和必填的 type 字段(值为 CUSTOM)。

business_needs.name (使用 business_needs 时为必填):用户定义的名称。

business_needs[].description (使用 business_needs 时为必填):关联的 business_needs.name 的描述,最大长度 1000。

business_needs[].type:CUSTOM(定义自定义业务需求时为必填)。

business_needs 示例

标准,无可选的 type

. . .
business_needs:
 - name: "Real World Data (RWD)"
   description: "Global weather data"
. . .
Copy

标准,有可选的 type

. . .
business_needs:
 - name: "Real World Data (RWD)"
   description: "Global weather data"
   type: STANDARD
. . .
Copy

自定义,有必填的 type

. . .
business_needs:
 - name: "Machinery Maintenance"
   description: "Repair and maintenance data for machinery"
   type: CUSTOM
. . .
Copy

categories

categories 字段指定列表所属的类别或区域。类别对于私密列表为可选,但对于 Marketplace 列表为必填。

在 Snowflake Marketplace 中,使用类别按区域浏览列表,并帮助使用者找到您的数据。

categories 字段是一个列表,但只能包含下面集合中的一个条目:

  • BUSINESS

  • CONNECTORS

  • DEMOGRAPHICS

  • ECONOMY

  • ENERGY

  • ENVIRONMENT

  • FINANCIAL

  • GOVERNMENT

  • HEALTH

  • IDENTITY

  • LEGAL

  • LOCAL

  • LOOKUP_TABLES

  • MARKETING

  • MEDIA

  • SECURITY

  • SPORTS

  • TRANSPORTATION

  • TRAVEL

  • WEATHER

categories 示例

. . .
categories:
 - ECONOMY
. . .
Copy

data_attributes

数据属性可让使用者深入了解有关列表的信息,如刷新率和其他特征。

data_attributes 字段对于私密列表为可选,但对于 Marketplace 列表为必填。

有关数据产品属性的更多信息,请参阅 数据产品 – 属性

包含以下名称值对:

  • data_attributes.refresh_rate (必填)

    指定数据产品在 Snowflake 中的更新频率。

    其中之一:

    • CONTINUOUSLY

    • HOURLY

    • DAILY

    • WEEKLY

    • MONTHLY

    • QUARTERLY

    • ANNUALLY

    • STATIC

  • data_attributes.geography (必填),包含:

    指定数据产品覆盖的地理区域。

    • granularity (字符串,必填)

      数据集的地理覆盖范围。

      其中之一:

      • LATITUDE_LONGITUDE

      • ADDRESS

      • POSTAL_CODE

      • CITY

      • COUNTY

      • STATE

      • COUNTRY

      • REGION_CONTINENT

    • geo_option (字符串,必填)

      其中之一:

      • NOT_APPLICABLE

      • GLOBAL

      • COUNTRIES

    • coverage (根据所选的 geo_option 来确定是否必填),包含:

      • states (字符串列表),包含有效美国州名的任意列表。

      • continents (字符串列表):

        以下任意一项:

        • ASIA

        • EUROPE

        • AFRICA

        • NORTH AMERICA

        • SOUTH AMERICA

        • OCEANIA

        • ANTARCTICA

    • time (必填),包含:

      指定数据产品覆盖的时间段。

      • granularity (必填)

      其中之一:

      • EVENT_BASED

      • HOURLY

      • DAILY

      • WEEKLY

      • MONTHLY

      • YEARLY

      • time_range (必填),包含以下名称/值对:

        • time_frame (必填)

          其中之一:

          • NEXT

          • LAST

          • BETWEEN

        • unit (必填)

          其中之一:

          • DAYS

          • WEEKS

          • MONTHS

          • YEARS

        • value (当 time_frame 为 NEXT/LAST 时为必填,整型),范围 1-100。

        • start_time (当 time_frame 为 BETWEEN 时为必填,字符串日期),格式为 MM-DD-YYYY。

        • end_time (当 time_frame 为 BETWEEN 时为必填,字符串日期),格式为 MM-DD-YYYY。

data_attributes 示例

. . .
data_attributes:
  refresh_rate: DAILY
  geography:
    granularity:
      - REGION_CONTINENT
    geo_option: COUNTRIES
    coverage:
      continents:
        ASIA:
          - INDIA
          - CHINA
        NORTH AMERICA:
          - UNITED STATES
          - CANADA
        EUROPE:
          - UNITED KINGDOM
  time:
    granularity: MONTHLY
    time_range:
      time_frame: LAST
      unit: MONTHS
      value: 6
Copy

data_dictionary

data_dictionary 字段可让使用者在将列表安装到自己的账户之前,深入了解列表的内容和结构。它对于私密列表为可选,但对于 Marketplace 列表为必填。

data_dictionary 字段包含由最多五个数据字典条目组成的列表:

  • data_dictionary.featured (使用 data_dictionary 时为必填):必须为“featured”。

  • data_dictionary.featured.database (使用 data_dictionary 时为必填):数据库名称。

  • data_dictionary.featured.objects (使用 data_dictionary 时为必填):名称值对的列表 –

    • name (字符串,必填):对象名称

    • schema (字符串,必填):架构

    • domain (必填):

      其中之一:

      • DATABASE

      • SCHEMA

      • TABLE

      • VIEW

      • EXTERNAL_TABLE

      • MATERIALIZED_VIEW

      • DIRECTORY_TABLE

      • FUNCTION

      • COLUMN

另请参阅 数据产品 – 数据字典

data_dictionary 示例

. . .
data_dictionary:
 featured:
    database: "WEATHERDATA"
    objects:
       - name: "GLOBAL_WEATHER"
         schema: "PUBLIC"
         domain: "TABLE"
       - name: "GLOBAL_WEATHER_REPORT"
         schema: "PUBLIC"
         domain: "TABLE"
. . .
Copy

usage_examples

usage_examples 字段对于私密列表为可选,但对于 Marketplace 列表为必填。

包含以下名称值对的列表:

  • usage.title (字符串,必填):使用情况示例标题,最长 110 个字符。

  • usage.description (字符串,可选):关联的描述,最长 300 个字符。

  • usage.query (字符串,必填):与使用情况示例关联的查询,最长 30000 个字符。

有关更多信息,请参阅 示例 SQL 查询

usage_examples 示例

. . .
usage_examples:
  - title: "Return all weather for the US"
    description: "Example of how to select weather information for the United States"
    query: "select * from weather where country_code='USA'";
. . .
Copy

resources

资源包含有关列表的信息,包括文档和视频的链接。

resources 字段对于私密列表为可选,但对于 Marketplace 列表为必填。

包含以下名称值对:

  • resources.documentation (字符串,必填):指向您网站上的页面的完全限定链接,其中包含有关列表的更详细文档。必须以 httphttps 开头。

  • resources.media (字符串,可选)指向列表的不公开或公开 YouTube 视频的完全限定链接。

有关更多信息,请参阅 列表详细信息

resources 示例

. . .
resources:
  documentation: https://www.example.com/documentation/
  media: https://www.youtube.com/watch?v=MEFlT3dc3uc
. . .
Copy

完整示例

title: "Covid data listing"
subtitle: "Listing about covid"
description: "Example covid manifest"
profile: "MyProfile"
listing_terms:
  type: "STANDARD"
targets:
  accounts: ["Org1.Account1", "Org2.Account2"]
auto_fulfillment:
  refresh_schedule: "120 MINUTE"
  refresh_type: "FULL_DATABASE"
business_needs:
  - name: "Life Sciences Commercialization"
    description: "COVID-19 Epidemiological Data"
usage_examples:
  - title: "Get total case count by country"
    description: "Calculates the total number of cases by country, aggregated over time."
    query: "SELECT  COUNTRY_REGION, SUM(CASES) AS Cases FROM ECDC_GLOBAL GROUP BY COUNTRY_REGION;"
data_attributes:
  refresh_rate: HOURLY
  geography:
    granularity:
      - ADDRESS
    geo_option: COUNTRIES
    coverage:
      continents:
        ASIA:
          - INDIA
          - CHINA
        NORTH AMERICA:
          - UNITED STATES
          - CANADA
        EUROPE:
          - UNITED KINGDOM
  time:
    granularity: MONTHLY
    time_range:
      time_frame: BETWEEN
      start_date: 12-24-2020
      end_date: 12-25-2021
  resources:
    documentation: https://www.example.com/documentation/
    media: https://www.youtube.com/watch?v=MEFlT3dc3uc
categories:
 - HEALTH
Copy
语言: 中文