No time to read the full blog post? Listen to it instead. 👇
1. What is Data Sharing?
Briefly said data sharing is the ability to make data sets available for multiple users, applications, or even organisations. It involves the entire ecosystem required for sharing data, including the technologies, methodologies, legal parameters, and security measures needed to enable the effortless exchange of information.
Traditional Data Sharing
Before the rise of cloud services like Snowflake, data sharing was a more cumbersome process that often involved physical data transfer methods such as mailing hard drives, using FTP servers, or setting up dedicated network shares. These methods, while functional for their time, came with several challenges:
- Limited Scalability: Traditional methods were often not scalable and required significant efforts to increase capacity.
- Security Risks: Data in transit could be vulnerable to interception or corruption, and managing permissions was sometimes complex and cumbersome.
- Data Latency: Physical transfers and network limitations meant that data could be outdated by the time it reached the end user.
- Maintenance Overheads: The infrastructure required for traditional data sharing needed loads of maintenance and could be very costly.
I’m sure most of us can recall a situation where a colleague or customer was working on some shared data, only to figure out that the data was no longer up to date by the time their work was finished. I myself even recall the times when data had to be written to a CD before being sent to a customer.
Contrasting these older methods with modern, cloud-based solutions, it becomes clear how the landscape of data sharing has improved. With the cloud, data can be shared instantly without needing physical transfers, with improved security, real-time access, and reduced maintenance costs.
Data Sharing in the Cloud
The transition from traditional methods to modern, cloud-based solutions has revolutionised data sharing, making it more scalable, secure, and efficient. The cloud facilitates a level of flexibility and ease of use previously unreachable, launching data sharing into a new era.
Cloud data sharing also allows the same data resources to be accessible by various stakeholders, while still maintaining accuracy and consistency across all points of access.
Real-world applications and case studies, such as those outlined by Biztory, illustrate the immense potential of cloud-based data sharing.
2. How to Set Up Data Sharing in Snowflake
Snowflake provides a robust platform for secure and efficient data sharing. Setting up data sharing involves a few key steps, which are necessary to ensure that the right data reaches the right users.
The two main ways to share data in Snowflake are through direct shares and by using listings.
2.1 Direct Shares
Direct shares are Snowflake's fundamental data sharing method, where a data provider can share live, ready-to-query data with specific consumers. These consumers can be other Snowflake accounts, both within and outside the data provider's organisation. The beauty of direct shares is that the data does not need to be copied or transferred. It is accessed directly from the provider's Snowflake account, ensuring real-time data consistency and eliminating redundancy.
The data is of course accessed read-only. Consumers cannot delete or modify data provided through a share.
Setting up direct shares involves a few straightforward steps:
- Identify Data to Share: Determine which databases, schemas, tables, or views you want to share.
- Create a Share: Navigate to the shares area in your Snowflake account, create a new share, and specify the objects that you want to include in the share.
- Grant Privileges: For each object in the share, grant the necessary privileges that determine how the data can be accessed by the consumer.
- Add Consumer Accounts: Specify the consumer accounts that will have access to the share.
- Consumer Acceptance: The consumers will then need to accept the share on their end and create database objects in their own Snowflake environment to query the shared data.
2.2 Listings
Listings have the same provider and consumer model as direct shares but allow providers to catalog their data shares, making them available to a broader audience. Unlike direct shares, listings can be made available to all Snowflake customers, not just those who have been granted direct access.
In addition, listings also can:
- Charge consumers for access to the data in the share.
- Monitor interest and usage of the data.
- Provide metadata about the data.
Becoming a provider of a listing is a little bit less straightforward. You first must agree to provider Terms & Agreements, create a specific profile, and set up your account to make paid listings possible.
After this, listings can be created in Snowsight.
3. Snowflake Marketplace
The Snowflake Marketplace is a dynamic environment where providers can publish their data listings. Here, consumers can discover and access an extensive catalogue of data sets and services. Think of it as a "data bazaar" where you can browse a variety of commercial and public data listings. The marketplace is especially useful for organisations looking to enrich their data with external sources. A lot of organisations are also looking into the opportunity to expand their business models by monetizing their data assets and making them available to others through listings.
Choosing the Right Method
When deciding whether to use direct shares or the marketplace, consider the following:
- Direct Shares: Ideal for controlled, specific sharing with known partners, where real-time data access is crucial.
- Marketplace: Best for broadening your reach, either to monetize your data or to enhance your data with offerings from a diverse set of providers.
Both methods maintain Snowflake's hallmark features of security and simplicity, ensuring that data sharing, whether direct or through the marketplace, is safe, compliant, and effective.
4. Conclusion
The ability to share data effectively is a cornerstone of modern data culture, driving insights, innovation, and collaboration across industries. With the rise of cloud technology and platforms like Snowflake, organisations can now share data more easily and more securely than ever before. This empowers a wider user base to harness the power of data and makes it possible to grow a data-driven culture that thrives on collaboration and informed decisions.