穀歌雲存儲
本文描述了如何使用磚讀寫表和數據存儲在穀歌雲存儲(GCS)。
讀或寫的GCS鬥,你必須創建一個附加服務帳戶,你必須把桶與服務帳戶。你連接到桶直接與一個密鑰生成的服務帳戶。
訪問一個gc桶直接與穀歌雲服務帳戶的關鍵
直接讀取和寫入一桶,你配置中定義的一個關鍵火花配置。
步驟1:設置穀歌雲服務帳戶使用Google雲控製台
您必須創建一個服務帳戶的磚集群。磚推薦給這個服務帳戶所需的最小特權來執行其任務。
點擊我和管理在左側導航窗格。
點擊服務帳戶。
點擊+創建服務帳戶。
輸入服務帳戶名稱和描述。
點擊創建。
點擊繼續。
點擊完成。
步驟2:創建直接訪問GCS桶的關鍵
警告
你生成的JSON關鍵服務帳戶是一個私有密鑰,隻能共享其控製與授權用戶訪問數據集和資源雲在你的穀歌賬戶。
在穀歌雲控製台中,在服務帳戶列表中,單擊新創建的帳戶。
在鍵部分中,點擊添加鍵>創建新的鍵。
接受JSON密鑰類型。
點擊創建。關鍵文件被下載到你的電腦。
步驟4:把服務帳戶磚秘密的關鍵
磚建議使用秘密的範圍來存儲所有的憑證。你可以把關鍵的私有密鑰和私有密鑰id JSON文件成磚秘密的範圍。能給予用戶、服務主體和組織您的工作區中獲得閱讀的秘密範圍。這保護服務帳戶關鍵,同時允許用戶訪問gc。創建一個秘密範圍,明白了秘密。
第五步:配置一個磚集群
在磚的運行時版本的下拉,選擇7.3 LTS或以上。
在火花配置選項卡中,使用以下代碼片段設置密鑰存儲在秘密範圍作為環境變量:
GSA_PRIVATE_KEY={{秘密/範圍/ gsa_private_key}}GSA_PRIVATE_KEY_ID={{秘密/範圍/ gsa_private_key_id}}spark.hadoop.google.cloud.auth.service.account。實現真正的spark.hadoop.fs.gs.auth.service.account。電子郵件< client-email >spark.hadoop.fs.gs.project。id <項目id >spark.hadoop.fs.gs.auth.service.account.private。關鍵GSA_PRIVATE_KEYspark.hadoop.fs.gs.auth.service.account.private.key。id GSA_PRIVATE_KEY_ID
取代
< client-email >
,<項目id >
與這些確切的值字段名稱從你關鍵的JSON文件。
步驟6:從GCS讀取
閱讀的GCS桶,用火花在任何受支持的格式讀取命令,例如:
df=火花。讀。格式(“鋪”)。負載(“gs: / / < bucket名> / <路徑>”)
寫GCS桶,使用一個火花寫命令在任何受支持的格式,例如:
df。寫。格式(“鋪”)。模式(“<模式>”)。保存(“gs: / / < bucket名> / <路徑>”)
取代< bucket名>
鬥中創建的名稱步驟3:配置GCS桶。