延長三角洲分享穀歌雲存儲
這篇文章已經通過確認的三角洲。io的博客。
我們是興奮的釋放δ開源數據共享0.4.0三角洲湖湖項目。最新版本引入了幾個關鍵的增強和bug修複,包括以下功能:
- δ共享是目前穀歌雲存儲——你現在可以分享三角洲表在穀歌的雲計算平台(Beplay体育安卓版本# 81,# 105)
- 三角洲的新的API獲取元數據共享——添加了一個新的GetShare REST API查詢股票的名稱(# 95,# 97)
- 三角洲共享協議和REST API增強——三角洲共享協議已經擴展到包括共享表Id, Id和改進的響應代碼和錯誤代碼(# 85,# 89,# 93,# 98)
- 定製一個收件人共享配置文件在Apache火花™連接器——添加了一個新三角洲分享資料提供者的火花連接器,使更容易訪問共享配置文件(# 99,# 107)
在這篇文章中,我們將經曆的每一個進步。
δ在穀歌雲存儲共享
這個版本新,您現在可以分享三角洲表在穀歌雲存儲使用的參考實現三角洲共享服務器。
三角洲在穀歌雲存儲共享的例子
分享三角洲表在穀歌雲存儲是比以往更容易!例如,分享一個增量表稱為“時間”,你可以簡單地更新三角洲與三角洲的位置共享服務器配置表穀歌雲存儲:
版本:1股票:——名稱:“vaccineshare”模式:——名稱:“samplecoviddata”表:——名稱:“時間”位置:“gs: / / deltasharingexample COVID /時間”
三角洲共享服務器配置文件包含到三角洲表在穀歌雲存儲位置。
三角洲共享服務器將自動處理數據在穀歌雲存儲為三角洲共享查詢。
驗證與穀歌雲存儲
δ共享服務器充當看門人在三角洲底層數據共享。當接收方查詢一個表在一個δ,δ共享服務器首先檢查權限,以確保數據接收方可以訪問數據。接下來,是否允許訪問,三角洲共享服務器將看看文件對象構成三角洲表和瀟灑地過濾下來的文件如果查詢中包含一個謂詞,例如。最後,三角洲共享服務器將生成短暫,pre-signed允許數據接收方的url來訪問文件,或文件子集,從三角洲共享客戶端直接從雲存儲,而不是流數據通過三角洲共享服務器。
為了生成的文件的url,三角洲共享服務器使用服務帳戶閱讀三角洲表從穀歌雲存儲。配置服務帳戶的憑證,您可以設置環境變量GOOGLE_APPLICATION_CREDENTIALS
開始前三角洲共享服務器。
< em > < / em > #三角洲共享服務器環境變量出口GOOGLE_APPLICATION_CREDENTIALS =“/ config / keyfile.json”
新的API獲得三角洲份額
有時,它可能有利於接受檢查,如果他們仍然可以訪問δ份額。此版本增加了一個新的REST API,GetShare,
這樣用戶可以快速測試如果δ份額已經超過它的過期時間。
例如,檢查如果你還有訪問三角洲分享您可以簡單地發送一個GET請求/股票/ {share_name}
端點在共享服務器上:
進口請求進口json
響應= requests.get (“http://localhost: 8080 / delta-sharing /股票/機場”,頭= {“授權”:“不記名令牌”})打印(json.dumps (response.json(),縮進=2))
示例GET請求發送到共享服務器,使接受者來檢查他們是否仍有訪問三角洲份額。
{“共享”:{“名稱”:“機場”}}
響應收到GetShare REST API示例新三角洲共享0.4.0釋放。
如果δ份額已經超過其過期,共享服務器將響應HTTP 403錯誤代碼。
三角洲共享協議增強
包含在這個版本中改進的錯誤代碼和錯誤消息三角洲共享協議定義。例如,如果一個分享不是位於δ共享服務器,一個錯誤代碼和錯誤消息包含錯誤的細節現在包含在這個版本。
進口請求進口json
響應= requests.get (“http://localhost: 8080 / delta-sharing /股票/ yellowcab”,頭= {“授權”:“不記名令牌”})打印(json.dumps (response.json(),縮進=2))
示例GET請求的共享三角洲共享服務器上不存在。
{“錯誤代碼”:“RESOURCE_DOES_NOT_EXIST”,“消息”:“分享”yellowcab“找不到”}
示例響應包含一個改進的錯誤代碼和錯誤的細節,是新三角洲共享0.4.0釋放。
此外,這個版本擴展了與獨特的共享協議應對δ分享和表id。獨特的id幫助數據接收者消除歧義的名字數據隨著時間的流逝。這是特別有用,當數據接收方是一個大的組織,想要共享數據集上的應用訪問控製在他們的組織
定製一個收件人共享配置文件
三角洲概要文件共享是一個JSON配置文件,其中包含的信息接受者三角洲共享服務器上訪問共享數據。在這個版本中添加了一個新的提供者,使更容易進入三角洲接受者共享配置文件數據。
/ * **一個提供者,它提供了一個三角洲共享配置文件數據*接受訪問共享數據。* /特征DeltaSharingProfileProvider{def getProfile: DeltaSharingProfile}
三角洲概要文件共享是一個JSON配置文件,其中包含的信息接受者三角洲共享服務器上訪問共享數據。
接下來是什麼
我們已經準備下一版本的三角洲的許多新功能共享。你可以跟蹤所有的即將推出,計劃特性GitHub的裏程碑。
學分
我們想擴展貢獻這個版本的特別感謝丹尼·李,周,朱Shixiong,威廉洲,太陽,Toshimitsu浩平表示。