Snowflake Sharing

Why Share Data with Snowflake

當你使用Snowflake作為數(shù)據(jù)提供商分享數(shù)據(jù)時,你可以管理誰可以訪問你的數(shù)據(jù),并避免在不同的人員和團隊之間同步數(shù)據(jù)的挑戰(zhàn)。
作為數(shù)據(jù)消費者,你可以減少需要執(zhí)行的data transformations,因為數(shù)據(jù)保留在Snowflake中,這使得與你分享的數(shù)據(jù)集和你自己的數(shù)據(jù)進行連接變得容易。
如果你使用Listing共享數(shù)據(jù),你可以在數(shù)據(jù)共享中包含元數(shù)據(jù),例如標題和描述,以及使用示例,以幫助消費者快速使用數(shù)據(jù)。
除了提供給數(shù)據(jù)消費者的好處,作為提供商,你可以獲得使用數(shù)據(jù)的權限,自動將數(shù)據(jù)復制到其他地區(qū),并且甚至可以決定對訪問你的數(shù)據(jù)收費,或者在Snowflake Marketplace上公開提供某些數(shù)據(jù)集。

Options for Sharing

你可以使用以下選項之一在Snowflake中共享數(shù)據(jù):

  1. 列表(Listing):通過列表,你可以將share和附加的元數(shù)據(jù)作為數(shù)據(jù)產品提供給一個或多個賬戶。
  2. 直接共享(Direct Share):通過直接共享,你可以將特定數(shù)據(jù)庫對象(一個share)直接共享給你所在地區(qū)的另一個賬戶。
  3. 數(shù)據(jù)交換(Data Exchange):通過數(shù)據(jù)交換,你可以設置和管理一組賬戶,并向該組提供一個share。


    image.png

Secure Data Sharing

安全數(shù)據(jù)共享(Secure Data Sharing)允許你將你賬戶中數(shù)據(jù)庫中的選定對象與其他Snowflake賬戶共享。你可以分享以下Snowflake數(shù)據(jù)庫對象:

  • Tables
  • External tables
  • Secure views
  • Secure materialized views
  • Secure UDFs

Snowflake通過共享(shares)來實現(xiàn)數(shù)據(jù)庫的共享,共享由數(shù)據(jù)提供者創(chuàng)建,并由數(shù)據(jù)消費者進行“導入”。
所有在賬戶之間共享的數(shù)據(jù)庫對象都是read-only的(即這些對象無法被修改或刪除,包括添加或修改表數(shù)據(jù))。

通過安全數(shù)據(jù)共享(Secure Data Sharing),不會在賬戶之間復制或傳輸實際數(shù)據(jù)。所有的共享都使用Snowflake的service layer和metadata store。
共享的數(shù)據(jù)不占據(jù)消費者賬戶中的存儲空間,因此不會增加消費者的每月數(shù)據(jù)存儲費用。對于消費者而言,唯一需要付費的是用于查詢共享數(shù)據(jù)的計算資源(即virtual warehouse)。

由于沒有數(shù)據(jù)被復制或交換,安全數(shù)據(jù)共享的設置對于數(shù)據(jù)提供者來說是快速且簡單的,而對于消費者來說,訪問共享數(shù)據(jù)幾乎是即時的:

  • 數(shù)據(jù)提供者在其賬戶中創(chuàng)建數(shù)據(jù)庫的共享,并授予對數(shù)據(jù)庫中特定對象的訪問權限。數(shù)據(jù)提供者還可以分享來自多個數(shù)據(jù)庫的數(shù)據(jù),只要這些數(shù)據(jù)庫屬于同一個賬戶。然后將一個或多個賬戶添加到共享中,其中可以包括你自己的賬戶(如果你擁有多個Snowflake賬戶)。
  • 在消費者方面,從共享中創(chuàng)建一個只讀數(shù)據(jù)庫。對該數(shù)據(jù)庫的訪問可使用與Snowflake為系統(tǒng)中的所有對象提供的標準基于角色的訪問控制進行配置。

通過這種架構,Snowflake實現(xiàn)了一個提供者網絡,可以與多個消費者(包括在其自己的組織內)共享數(shù)據(jù),并且消費者可以從多個提供者訪問共享數(shù)據(jù)。


image.png

What is a Share?

共享(Shares)是Snowflake中的命名對象,它封裝了共享數(shù)據(jù)庫所需的所有信息。
數(shù)據(jù)提供者可以通過以下兩種選項之一或兩種選項同時使用,將Snowflake object(databases, schemas, tables, secure views等)添加到share中:
選項1:通過數(shù)據(jù)庫角色向共享授予對象的權限。
選項2:直接向共享授予對象的權限。

Share是安全的,可配置的,并且完全由提供者賬戶控制:

  • 向Share添加的新對象立即對所有消費者可用,提供實時訪問共享數(shù)據(jù)的能力。
  • 可以隨時撤銷對Share(或Share中的任何對象)的訪問權限。


    image.png

Reader Accounts for Third-party Access

數(shù)據(jù)共享僅支持在Snowflake賬戶之間進行。作為數(shù)據(jù)提供者,你可能希望與尚未擁有Snowflake賬戶或尚未準備成為Snowflake授權客戶的消費者共享數(shù)據(jù)。
為了方便與這些消費者共享數(shù)據(jù),你可以創(chuàng)建Reader Account。Reader Account(以前稱為“只讀賬戶”)提供了一種快速、簡便和經濟高效的方式,可以共享數(shù)據(jù),而不需要消費者成為Snowflake客戶。
每個Reader Account屬于創(chuàng)建它的提供者賬戶。作為提供者,你使用共享將數(shù)據(jù)庫共享給Reader Account;但是,Reader Account只能從創(chuàng)建它的提供者賬戶中獲取數(shù)據(jù)。請參考下面的圖示:

Reader Account中的用戶可以查詢與該Reader Account共享的數(shù)據(jù),但不能執(zhí)行完整賬戶中允許的任何DML任務,例如數(shù)據(jù)加載、插入、更新和類似的數(shù)據(jù)操作。

Types of Listings

  • Marketplace Listings
  • Private Listings
  • Free Listings
  • Paid Listings
  • Personalized Listings
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

友情鏈接更多精彩內容