New in Snowflake: Marketplace Monetization — Self service access to Premium datasets
Snowflake customers can now instantly access premium datasets, while providers choose how to charge for them (like monthly or per query). Meanwhile Snowflake takes care of making the magic happen in the backend. Let’s explore this new feature, now available for Snowflake customers in 33 countries.
The new “Paid” datasets
Let’s start with an example: IPinfo has datasets ready to help you translate IPv4 and IPv6 addresses into real-world data like a country, a mobile carrier, or a company. IPinfo already has these datasets in the Snowflake Marketplace, and you can find them with a quick search:
What’s new here is that some of these datasets are tagged as “Paid”. Previously you could only find free datasets and “Personalized,” with the latter meaning you had to contact IPinfo to agree on terms. Now with “Paid” datasets, Snowflake makes this process way easier.
Digging into IPinfo
Let’s click on the “IP to Country” dataset:
The terms listed here are easy to understand:
- There’s a trial dataset that you can play with for free.
- If you want access to this data, the price is $200 per month, and other details can be seen once you go forward.
- The pricing model is usage based and each provider can choose per month, per query, or both (and optionally how many free queries).
If we click on “Get” it bring launches the process to agree on these terms:
- You get 1,000 queries included.
- For each additional query, the price is $0.05/query.
- IPinfo also chose a “max monthly price” for this dataset of $2,000 (meaning it’s unlimited use per month after that amount).
To finish this process you will need to accept terms, set up a payment method with Stripe, and a Snowflake account with the right permissions to set this up. Check the docs for more details.
An important detail highlighted in the docs: “Snowflake bills your account for paid data only if users query paid data in the listing. If no user in your account queries paid data, Snowflake does not invoice you.”
IPinfo in action
To test the sample IPinfo dataset we need to get lucky with an IP address contained in the sample dataset (which is not static).
With this query I learned that this random ip address is located in Great Britain:
WITH ips AS (
SELECT '31.53.165.132' as ip
)
SELECT *
FROM ips a -- Replace with your own table of IPs
JOIN ip_country_sample b
ON TO_JOIN_KEY(a.ip) = b.join_key
WHERE TO_INT(a.ip) BETWEEN b.start_ip_int AND b.end_ip_int
By the way, note the TO_JOIN_KEY()
function in this query — this is a UDF also shared by IPinfo, that massively improves the performance of this join.
Dig deeper
The features described here are in GA—but still, the screenshots and terms described in this post are subject to change (some are already different than the ones on the video). Right now it’s available to Snowflake customers with pre-purchased capacity contract in place in 33 countries (US, IE, JP, IN, CA, GB, AU, FR, DE, AE, AT, BE, BM, CH, CO, CZ, DK, ES, FI, ID, IL, IT, KR, KY, LU, MX, NL, NO, NZ, PL, PT, SE, SG).
Check the docs to go deeper as a data consumer and as a data provider:
- Snowflake Marketplace Pricing Model
- Marketplace Monetization for Data Providers
- Marketplace Monetization for Data Consumers
Want more?
- Try this out with a Snowflake free trial account — you only need an email address to get started.
I’m Felipe Hoffa, Data Cloud Advocate for Snowflake. Thanks for joining me on this adventure. You can follow me on Twitter and LinkedIn. Check reddit.com/r/snowflake for the most interesting Snowflake news.