What you will be able to do
- Find Marketplace listings whose data correlates with data you already hold, using Snowsight, data dictionaries and SQL
- Explain the terms and privileges an account needs before it can consume listings
- Get free, paid, trial and private listings, and say what each one costs
Key concept
Listing — A listing is a share packaged with extra metadata (descriptions, data dictionaries, sample queries, pricing) as a data product. When you get a listing, a database is created in your account, and you query it next to your own data.
1.Finding external data sets that correlate with yours
Data enrichment starts with a question your own tables can't answer. Sales figures by store and day only tell part of the story. Weather on those days, foot traffic, or demographic data for the postcode might explain the rest. The Snowflake Marketplace is where you look for that outside data. Snowflake describes it as the place to "discover and access third-party data and services". The documentation lists typical consumer uses: historical data for research, forecasting and machine learning; up-to-date streaming data such as current weather and traffic conditions; specialized identity data for understanding subscribers and audiences; and new insights from unexpected sources. The consumer benefit that matters most for this objective is plain: you can combine new datasets with your existing data in Snowflake to derive new business insights.
You can browse listings on the web, or in Snowsight under Marketplace » Snowflake Marketplace. To decide whether a listing actually correlates with your data, look past the description to its structure. The data dictionary lets you preview a listing's contents before you install it, and it shows the tables, views and functions inside the listing. There are two views of the dictionary. Featured objects are the most important objects, chosen by the provider. All objects lets you browse or search everything. Each object's Data Preview tab shows sample rows when the provider has enabled previews, so you can check whether the listing has a column you can join on, such as a date, a region or an identifier. If you'd rather work in SQL, SHOW AVAILABLE LISTINGS displays all listings available to you, and DESCRIBE AVAILABLE LISTING shows details of one. If nothing fits, you can request new data or providers on the Marketplace.
| Tool | What it shows you |
|---|---|
| Snowflake Marketplace on the web | Listings, browsable with or without a Snowflake account |
| Snowsight: Marketplace » Snowflake Marketplace | Listings you can search, filter (e.g. Pricing: Free to Try) and get |
| Data dictionary: Featured objects | The most important objects in the listing, selected by the provider |
| Data dictionary: View all objects | Every table, view and function in the listing, browsable and searchable |
| Data Preview tab | Up to 10 rows of data, if Data Preview is enabled for the listing |
| SHOW AVAILABLE LISTINGS / DESCRIBE AVAILABLE LISTING | All listings available to you / detailed information about a listing |
Checkpoint 1 of 6· Check yourself
You open the Data Preview tab of an object in a listing's data dictionary. If the provider has enabled Data Preview, what do you see?
Data Preview shows at most 10 rows, and only when the provider has enabled it. That's enough to check join columns without installing the listing.
“If Data Preview is enabled for the selected listing, then up to 10 rows of data are displayed.”Source: docs.snowflake.com
Checkpoint 2 of 6· Exam question
A data analyst role named `MKT_ANALYST` must be able to get free Snowflake Marketplace listings on its own, without escalating to ACCOUNTADMIN every time. Which account-level privileges should be granted to the role so it can create a database from a listing?
Correct answer: B — Grant IMPORT SHARE and CREATE DATABASE on the account to the role, so it can mount provider data as a database.
- A. CREATE SHARE and CREATE LISTING are provider-side privileges used to publish data, not to consume it, so they do not let a role mount a listing as a database.
- B. A role with IMPORT SHARE and CREATE DATABASE on the account can get a listing and create the database from it. ACCOUNTADMIN holds these by default, but they can be delegated to an analyst role.
- C. MANAGE GRANTS and warehouse USAGE do not include the right to create a database from a share. Without IMPORT SHARE the Get action on the listing is refused.
- D. A consumer cannot be granted USAGE on a provider's database directly, because the provider's database does not exist in the consumer account until it is created from the share. IMPORT SHARE is still missing.
2.Becoming a consumer: terms and privileges
Browsing is open to everyone, but getting a listing makes you a consumer, and that has requirements. Your organization must accept the legal terms. Your account needs the right privileges. For paid listings, you also need payment information set up. As a consumer you can access data shared from other cloud platforms and Snowflake regions, access private listings, pay for listings inside Snowflake instead of negotiating billing with each provider, and see extra information such as example SQL queries.
The terms are an organization-level, one-time step. An organization administrator (a user with the ORGADMIN role) accepts the Snowflake Provider and Consumer Terms in Snowsight under Admin » Terms. After that, anyone in the organization with a suitably privileged role can consume listings. One exception is easy to miss: if the organization will only use free listings, or the listing terms are offline, nobody needs to accept the Provider and Consumer Terms at all.
Checkpoint 3 of 6· Check yourself
Your organization will only ever use free Marketplace listings. Who must accept the Snowflake Provider and Consumer Terms?
The ORGADMIN step exists for paid listings. An organization that only uses free listings, or whose listing terms are offline, can skip it.
“You do not need to accept the Snowflake Provider and Consumer Terms if your organization intends to access only free listings”Source: docs.snowflake.com
Privileges come next. Getting a listing creates a database in your account from a share, so the role you use needs both halves of that action: ACCOUNTADMIN, or another role with CREATE DATABASE and IMPORT SHARE. To pay for a paid listing, the role also needs PURCHASE DATA EXCHANGE LISTING. If your role lacks these, Snowsight can send an access request to the account administrator automatically. The administrator then has three options: grant CREATE DATABASE and IMPORT SHARE to one of your roles; get the listing and grant IMPORTED PRIVILEGES on the resulting database to your role, which gives you the data without the right to get other listings; or install the listing for you.
Checkpoint 4 of 6· Check yourself
A data engineer's custom role must be able to get free and paid Marketplace listings without using ACCOUNTADMIN. Which set of privileges does it need?
CREATE DATABASE plus IMPORT SHARE covers getting any listing. Paying for a paid listing also needs PURCHASE DATA EXCHANGE LISTING.
“To pay for a paid listing, your role must also have the PURCHASE DATA EXCHANGE LISTING privilege.”Source: docs.snowflake.com
Sources3
3.Getting free, paid, trial and private listings
With privileges in place, getting a free listing takes a few clicks in Snowsight. Go to Marketplace » Snowflake Marketplace, find the listing and select Get. If the listing isn't yet available in your region, the button is Request instead, which asks for the listing to be replicated to your region. In the dialog you can optionally name the database that will hold the listing's data and add roles that should have access to it. After you confirm, you can open a worksheet with an example query or close the dialog.
Checkpoint 5 of 6· Put it in order
Put the steps for getting a free Marketplace listing in order.
- 1.Select Get, then Open for an example-query worksheet or Done
- 2.Optionally set a database name and add roles to grant access
- 3.Sign in to Snowsight and select Marketplace » Snowflake Marketplace
- 4.Search or browse to the listing you want
- 5.Select Get to open the listing details dialog
You find the listing, open it with Get, set the optional database name and roles, and confirm. The example-query worksheet is offered last.
“In the confirmation dialog that appears, select Open to open a Snowsight worksheet with an example query in a new tab, or select Done.”Source: docs.snowflake.com
Private listings are shared with your account directly instead of being published publicly. They appear in Snowsight under Data sharing » External sharing, on the Shared with you page under Privately shared listings, and you select Get there too.
Paid listings add a purchase step. You choose the Paid option and review the price. You can attach a purchase order number and pay with Marketplace Capacity Drawdown if you're eligible, or by another method such as credit card or invoice. If the ORGADMIN hasn't accepted the terms, a Setup incomplete dialog blocks access until they do.
Before you pay, you can trial a paid or limited trial listing to check whether its data really correlates with yours. A trial can give indefinite access to a limited set of data, or time-limited access to all or part of the data. You aren't charged for a paid listing when the trial ends unless you choose to buy it. A limited trial listing follows its own path: you trial the product, request unlimited access, the provider contacts you (possibly with extra commercial terms), and the full product then arrives as a private listing. If you decide against buying, an account administrator can drop the trial database.
Checkpoint 6 of 6· Check yourself
During a trial of a paid listing, analysts run heavy join queries against the trial database. What does your account pay for?
A trial is free from the provider's side, but your warehouses still run the queries, so you pay compute.
“Querying data while you trial a listing incurs compute charges in your Snowflake account, but you do not incur any charges for the listing.”Source: docs.snowflake.com
Exam traps
Each one states something that sounds right. Open it to see what is actually true.
1.Any role with CREATE DATABASE can get a Marketplace listing.Why is that wrong?
Getting a listing needs ACCOUNTADMIN, or a role with both CREATE DATABASE and IMPORT SHARE. Paying for a paid listing also needs PURCHASE DATA EXCHANGE LISTING.
Covered in Becoming a consumer: terms and privileges
2.Every account must accept the Provider and Consumer Terms before getting any listing.Why is that wrong?
An ORGADMIN accepts the terms once for the whole organization, and they aren't required at all if the organization only uses free listings.
Covered in Becoming a consumer: terms and privileges
3.Trialing a paid listing costs nothing at all.Why is that wrong?
There is no charge for the listing during a trial, but querying the trial data still uses your warehouses and incurs compute charges.
Sources
Every claim above is drawn from one of these pages, quoted as it was written on the date shown.
- 1.
“Combine new datasets with your existing data in Snowflake to derive new business insights.”
↩︎ Finding external data sets that correlate with yours - 2.
“A data dictionary displays the tables, views, and functions within a listing.”
↩︎ Finding external data sets that correlate with yours“If you are trialing a paid listing, you are not charged for the listing when your trial ends.”
↩︎ Getting free, paid, trial and private listings“Querying data while you trial a listing incurs compute charges in your Snowflake account”
↩︎ Exam trap 3“You can browse listings on the Snowflake Marketplace whether you have a Snowflake account or not.”
↩︎ Prediction“If Data Preview is enabled for the selected listing, then up to 10 rows of data are displayed.”
↩︎ Checkpoint“Querying data while you trial a listing incurs compute charges in your Snowflake account, but you do not incur any charges for the listing.”
↩︎ Checkpoint - 3.
“Pay for listings inside Snowflake instead of negotiating billing with each listing provider.”
↩︎ Becoming a consumer: terms and privileges“To access a listing, you must use the ACCOUNTADMIN role or another role with the CREATE DATABASE and IMPORT SHARE privileges.”
↩︎ Exam trap 1“The organization administrator only needs to accept the Snowflake Provider and Consumer Terms once for your organization.”
↩︎ Exam trap 2“You do not need to accept the Snowflake Provider and Consumer Terms if your organization intends to access only free listings”
↩︎ Checkpoint“To pay for a paid listing, your role must also have the PURCHASE DATA EXCHANGE LISTING privilege.”
↩︎ Checkpoint - 4.
“If you have to request the listing to be replicated to your region, select Request.”
↩︎ Getting free, paid, trial and private listings“In the confirmation dialog that appears, select Open to open a Snowsight worksheet with an example query in a new tab, or select Done.”
↩︎ Checkpoint
Also cited
“a Listing, in which you offer a share and additional metadata as a data product to one or more accounts”
↩︎ Key concept