2015-11-05 29 views
0

我正在使用talend open studio將salesforce數據推送到我的redshift數據庫。通過使用推送數據如下:錯誤:Talend S3 - AWS認證需要有效的Date或x-amz日期標題

1. tSalesforceInput 
2. tMap 
3. tFileOutputDelimited 
4. tRedshiftOutput 

我只獲得約2-5行/秒這不適合我在所有的工作。

通過將分隔文件推送到tS3Put,然後將數據推送到紅移,傳輸速度將快得多,大約500行/秒。我繼續面臨的問題是我收到錯誤:

AWS認證需要有效的Date或x-amz-date標頭(服務:Amazon S3;狀態碼:403;錯誤代碼:AccessDenied;請求標識:CC9C86CCC65625C0

而且我不知道如何解決。我一直在使用tLibraryLoad運行,然後運行後加載之前喬達時間2.8.2嘗試,但它仍然失敗。不勝感激任何意見。

+0

你是哪個版本?如果您想上傳大於5GB的文件,但默認的S3組件有一些限制,但除此之外它應該可以正常工作。 你確定組件參數是正確的嗎? –

+0

btw根據我的測量(使用客戶端加密的gzip壓縮數據文件),從S3到紅移的加載速度大約爲20 Mbit/s,這比您定位的500行/秒要好得多。 –

+0

我試圖上傳一個30MB的.csv文件。我嘗試使用tS3Connect簡單地測試連接,並且失敗。當我使用tLibraryLoad並加載AWS JAR文件時,它不會給我一個錯誤消息,但它不會真的做任何事情...... – Berra2k

回答

0

我也有這個問題,使用Talend 6.1這個問題與Java8,AWS SDK和Talend捆綁的joda-time 2.3庫不兼容。

我找到了解決辦法改編自:TalendForge

下載喬達時間2.8.2罐子從Joda Time

添加tLibraryLoad並將其指向你下載了新的喬達時間jar文件。

轉到您的項目運行選項卡/高級設置,並添加額外的JVM參數:

-Xbootclasspath/p:$ROOT_PATH/../lib/joda-time-2.8.2.jar 
+0

感謝Paul。我之前使用了以下joda時間,但它不起作用: 「-Xbootclasspath/a:C:\ Users \ xxxxx \ Documents \ xxxxxx \ joda time \ joda-time-2.8.2-dist.tar \ joda-time -2.8.2「 – Berra2k

+0

是的,那是因爲Talend在路徑中有一個joda-time 2.3 jar,並且您需要確保2.8之前被預先佔用,而不是追加到類路徑中。 –

+0

好吧,我把jodatime2.8.2放在我的java jdk 65 lib文件夾中,這就是我所說的,但仍然出現錯誤:-Xbootclasspath/p:C:\ ProgramFiles \ Java \ jdk1.8.0_65 \ lib \ joda-time- 2.8.2.jar – Berra2k