我是 AWS 的新手。我正在為以下用例設計解決方案。
我在 S3 中有一個關系資料庫的副本,一個存盤桶中有幾個檔案,每個檔案代表一個表,列用管道分隔。檔案的總大小約為 2 GB。我還有數十億條記錄分布在 redshift 的多個表中。
我需要根據 S3 中可用的記錄(通過連接多個檔案)從 redshift(通過連接多個表)中過濾記錄并將其寫入 DB/S3。
示例 - 假設 S3 具有包含產品詳細資訊的產品檔案和包含標準詳細資訊的標準檔案,當標準匹配時,產品應作為建議顯示給客戶。標準和產品表使用產品 ID 鏈接。例如,當客戶已經購買了 ipad(標準)時,顯示 ipad 配件(產品)作為建議
Redshift 有包含客戶串列的 Customer 表和包含他們購買的產品串列的 Product 表。產品和客戶都使用 customerid 鏈接。
對于基于標準的 S3 中可用的每個產品,我需要根據客戶已經購買的產品找到應該向其推薦產品的客戶串列。
有人可以幫助對如何在 AWS 中實作這一點有一個高層次的想法嗎?
uj5u.com熱心網友回復:
查看 Redshift Spectrum,它允許您定義 S3 中的外部表。外部表將允許您僅從 S3 中提取符合您條件的記錄,然后將此資訊加入您的客戶表。
這應該適用于 Spectrum,因為您的 S3 資料不是很大,并且在將結果正確傳遞給 Redshift 之前,您正在按照您的標準對其進行縮減。當您的 S3 資料通過簡單的 WHERE 子句減少并通過 GROUP BY 減少時,Spectrum 是最強大的。當傳遞回 RS 集群時,這可以使結果的網路流量保持較小。
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/374065.html
上一篇:我已將Firebase和GoogleApi密鑰存盤在env變數中,因此如何訪問反應應用程式的AmazonS3中的環境變數?
