草庐IT

s3DistCp

全部标签

amazon-s3 - 将单个 Hadoop map reduce 输出写入多个 S3 对象

我正在实现需要在多个S3对象中创建输出的HadoopMapreduce作业。Hadoop本身只创建一个输出文件(一个S3对象),但我需要将输出分成多个文件。我如何实现这一目标? 最佳答案 我通过使用S3工具包将我的reducer方法的输出直接写入S3来做到这一点。因为我在EC2上运行,所以这是快速且免费的。一般来说,您希望Hadoop尽可能多地处理您的输入和输出,以获得更清晰的映射器和缩减器;当然,您希望在管道的最后写入S3,让Hadoop的代码移动在HDFS上完成它的工作。无论如何,我建议进行所有数据分区,并在最终归约任务中将整个

amazon-web-services - 无法使用 StreamExecutionEnvironment 使用 S3 接收器写入 S3 - Apache Flink 1.1.4

我创建了一个简单的ApacheFlink项目,它将从Kafka主题读取数据并将该数据写入S3存储桶。运行该项目时我没有收到任何错误,它成功地从Kafka主题读取每条消息,但没有任何内容写入我的S3存储桶。没有错误,因此很难尝试调试正在发生的事情。下面是我的项目和我的配置。这仅在我使用StreamExecutionEnviornment时发生。如果我尝试使用常规批处理ExecutionEnviornment生成到S3,它就可以工作。S3测试Java程序publicclassS3Test{publicstaticvoidmain(String[]args)throwsException{/

hadoop - AWS 上的 hive : convert S3 JSON to Columnar preserving partitions

我在S3中有包含多行JSON(以换行符分隔)的文件。我想将这些文件转换为柱状格式以供AWSAthena使用我正在关注ConvertingtoColumnarFormatsguide要做到这一点,但是当转换为ORC时,S3中的分区约定将丢失。在这个例子中,如何在转换为parquets3的文件夹结构中保留dt分区?当我运行示例时,它只输出s3://myBucket/pq/000000_0而不是s3://myBucket/pq/dt=2009-04-14-04-05/000000_0这是设置接口(interface)以将JSON导入Hive表的HQL:CREATEEXTERNALTABLEi

amazon-web-services - 无法使用 Hadoop 访问 S3 存储桶

我正在尝试使用Hadoop(2.7.3)访问我的S3存储桶,我得到以下信息ubuntu@AWS:~/Prototype/hadoop$ubuntu@AWS:~/Prototype/hadoop$bin/hadoopfs-lss3://[bucket]/17/03/2415:33:31WARNutil.NativeCodeLoader:Unabletoloadnative-hadooplibraryforyourplatform...usingbuiltin-javaclasseswhereapplicable-ls:Fatalinternalerrorcom.amazonaws.ser

java - 如何从 EMR 中的 s3 读取文件?

我想在我的EMRHadoop作业中从S3读取一个文件。我正在使用自定义JAR选项。我尝试了两种解决方案:org.apache.hadoop.fs.S3FileSystem:抛出一个NullPointerException。com.amazonaws.services.s3.AmazonS3Client:抛出异常,提示“拒绝访问”。我没能理解的是我是从控制台开始工作的,所以显然我应该有必要的权限。但是,映射器可用的环境变量(System.getenv())中缺少AWS_*_KEY键。我确定我做错了什么,只是不确定是什么。 最佳答案 可

hadoop - nameservice1 和 nameservice2 之间的 distcp

我们有CDH5.2和ClouderaManager5。我们要将数据从nameservice2复制到nameservice1两个集群都在相同的CDH版本上当我尝试hadoopdistcphdfs://nameservice2/foo/barhdfs://nameservice1/bar/foo我遇到了错误java.lang.IllegalArgumentException:java.net.UnknownHostException:nameservice2所以我从Nameservice2添加了以下配置到Nameservice1Cloudera管理器(网关默认组)中hdfs-site.xm

hadoop - 在 s3 中的多个 Parquet 文件之上创建 Hive 表

我们在s3(parquet文件)中有以下格式的数据集,数据根据行号分为多个parquet文件。data1_1000000.parquetdata1000001_2000000.parquetdata2000001_3000000.parquet...我们有超过2000个这样的文件,每个文件都有数百万条记录。所有这些文件都具有相同的列数和结构。如果我们需要在配置单元中对数据集进行分区,其中一列中有时间戳。我们如何指向数据集并在其之上创建单个Hive外部表以供我们分析,或者可以使用Spark对其进行分析?谢谢。 最佳答案 您可以简单地指

hadoop - Oozie s3 作为作业文件夹

当从s3提供workflow.xml时,Oozie失败并出现以下错误,但从HDFS提供workflow.xml时同样有效。同样适用于早期版本的oozie,与4.3版本的oozie相比有什么变化吗?环境:HDP3.1.0Oozie4.3.1oozie.service.HadoopAccessorService.supported.filesystems=*Job.propertiesnameNode=hdfs://ambari-master-1a.xdata.com:8020jobTracker=ambari-master-2a.xdata.com:8050queue=default#O

hadoop - 写入 1 亿个文件到 s3

我的主要目标是根据每条记录的id将记录拆分成文件,现在有超过150亿条记录,而且肯定会增加。我需要一个使用AmazonEMR的可扩展解决方案。我已经为一个拥有大约9亿条记录的较小数据集完成了这项工作。输入文件为csv格式,其中一个字段需要作为输出中的文件名。假设有如下输入记录:awesomeId1,somedetail1,somedetail2awesomeID1,somedetail3,somedetail4awesomeID2,somedetail5,somedetail6所以现在应该有2个文件作为输出,一个名为awesomeID1.dat和其他awesomeID2.dat,每个都

hadoop - 如何指定 S3 存储桶作为我对 EMR 的输入

不是复制到HDFS,是否可以只获取S3中存储桶中的对象数组以在EMR中处理?我已经尝试过了,但我不断收到没有凭据的安全警告(即使在我将它们添加到配置中之后)(这是因为只是执行newPath("s3n://..."))或运行jar告诉我,当我尝试使用AWSsdk访问我的存储桶时,我缺少AWSsdk。 最佳答案 你可以在参数部分添加它将其添加为步骤时选择CustomJARJAR包位置:s3://inbsightshadoop/jar/loganalysis.jar主类:无参数:s3://inbsightshadoop/insights-