2017-04-27 97 views

回答

1

我建議遵循Cloudera的教程Accessing Data Stored in Amazon S3 through Spark

要訪問的Spark應用程序存儲在Amazon S3的數據,你可以 使用的Hadoop文件的API(SparkContext.hadoopFileJavaHadoopRDD.saveAsHadoopFileSparkContext.newAPIHadoopRDDJavaHadoopRDD.saveAsNewAPIHadoopFile)進行讀取和編寫RDD, 提供表格s3a://bucket_name/path/to/file.txt的URL。

您可以使用Data Source API讀寫Spark SQL DataFrame。

關於文件擴展名,有幾個解決方案。 您可以簡單地使用擴展名(即file.txt)。

如果您的擴展程序被存儲在S3存儲桶中的文件刪除,您仍然可以知道爲每個S3資源添加的元數據的內容類型。

http://docs.aws.amazon.com/AmazonS3/latest/API/RESTObjectHEAD.html

+0

謝謝你的回答。 還有一個問題是,我如何知道像(json,csv,txt)這樣的文件擴展名,我從S3獲取哪種類型的文件。 –

+0

@Vpn_talent只需編寫答案的其餘部分... – freedev

+0

爲什麼你要尋找擴展?你的s3文件末尾沒有擴展名嗎? – freedev