比AWS數據管道更新,所以任何幫助將不勝感激。我已使用管道模板RDStoS3CopyActivity來提取RDS MySQL中的表的所有內容。似乎運作良好。但是還有90個其他表格被提取並轉儲到S3。我無法想象90管道或每個表的一個。將多個RDS MySQL表提取到S3
解決此任務的最佳方法是什麼?如何通過管道指令來遍歷表名的列表?
比AWS數據管道更新,所以任何幫助將不勝感激。我已使用管道模板RDStoS3CopyActivity來提取RDS MySQL中的表的所有內容。似乎運作良好。但是還有90個其他表格被提取並轉儲到S3。我無法想象90管道或每個表的一個。將多個RDS MySQL表提取到S3
解決此任務的最佳方法是什麼?如何通過管道指令來遍歷表名的列表?
我不確定這是否會得到迴應。但是,在這個探索的早期階段,我開發了一個似乎適合初步目的的流水線 - 從10個RDS MySQL表中提取數據,並將每個數據表複製到S3上各自的子存儲桶。
邏輯相當簡單。
默認情況下,提取並加載到S3存儲桶的數據將以逗號分隔。如果需要製表符分隔,則在最後一個目標S3目標中: - 添加可選字段..>選擇數據格式。 - 創建一個新的分頁標籤。這將出現在「其他」類別下。 - 給它一個名字。我稱之爲分隔標籤。 - 類型:TSV。將鼠標懸停在「類型」上可瞭解更多其他數據格式。 - 列分隔符: - 如果表是
我們可以在腳本字段中編寫一個mysqldump -uroot -p schema tablename> tablename.sql來代替「select * from table」嗎?這是你的意思嗎? – dat789
@ dat789哎呦。我認爲你的解決方案會最好。我把它看作'Redshift'而不是'RDS'直接向S3提供卸載和複製選項。您的答案可能效果最好,看起來像它在這裏做的一些東西 - http://docs.aws.amazon.com/datapipeline/latest/DeveloperGuide/dp-copymysql-cli.html – Fernando
雖然我發佈的解決方案可能工作,注意AWS Data Pipeline每個管道的缺省值爲100個對象也很有用。你放在畫布上的每個對象都是一個數字。對我來說,每個表都是唯一的(不能聯合),我必須有3個對象{rds mysql對象從表名中選擇;複製對象活動;輸出到S3 datanode}每個表。您可以要求AWS增加管道中允許的對象數量,但如果要執行超過100個對象,那將是一件痛苦的事情。我選擇了另一種解決方案。 – dat789