我是像Crunch / Cascading这样的hadoop管道框架的新手。我想知道在这些框架的底部,它们是否像原始MapReduce程序那样生成原始的mapper和reducer类?在Crunch源代码中,我没有找到将管道转换为原始MapReduce类的代码。 解决方案如下: 您可以使用代码中的以下几行来可视化已创建的MapReduce计划紧缩。将在pipeline.dot中创建的DOT代码复制到graphviz中以查看计划。 String dot = pipeline.getConfiguration().ge…

2020年11月15日 0条评论 41点热度 阅读全文

我试图放置一个断点,并在监视窗口中执行以下操作:检查.getSize(),该返回的大小以字节为单位。和.materialize()看看我是否可以查看java对象。 .getSize()确实显示了一个大于0的数字,但是我怀疑这是否应该是具有元素的PTable的指示符。 .materialize()没有显示任何内容来指示元素的存在。 提前致谢。 解决方案如下: 而不是依靠PCollection.size()方法来检查您的集合是否为空,您应该使用PCollection.length(),它正是您所需要的。

2020年10月17日 0条评论 26点热度 阅读全文

我有一个运行关键任务的应用程序。我正在尝试将Oozie配置为使用Java操作运行此作业。我的 Action 如下 <workflow-app name="Wworkflow" xmlns="uri:oozie:workflow:0.4"> <start to="TestWw"/> <action name="TestWw"> <java> <job-tracker>${jobTracker}</job-tracker> <name-nod…

2020年8月18日 0条评论 46点热度 阅读全文

目前,我正在评估Apache Crunch。我遵循一个简单的WordCount MapReduce job example:之后,我尝试将结果保存到独立的HBase中。 HBase正在运行(已通过jps和HBase shell检查),如下所述:http://hbase.apache.org/book/quickstart.html 现在,我采用编写HBase的示例: Pipeline pipeline = new MRPipeline(WordCount.class,getConf()); PCollection&…

2020年6月24日 0条评论 42点热度 阅读全文

我的hadoop作业需要知道每条记录所源自的输入路径。 例如,假设我在一个S3对象集合上运行作业: s3://bucket/file1 s3://bucket/file2 s3://bucket/file3 我想减少键值对,例如 s3://bucket/file1 record1 s3://bucket/file1 record2 s3://bucket/file2 record1 ... 是否有 org.apache.hadoop.mapreduce.InputFormat扩展名可以完成此任务?还是有比使用自定义…

2020年6月15日 0条评论 41点热度 阅读全文

*在运行apache crunch mapreduce pipleline时,应为小异常提供哪些凭证来解决此异常?通过kinit命令登录后没有差异。 * 日志如下: WARN [main] org.apache.hadoop.security.UserGroupInformation: PriviledgedActionException as:{user_id} (auth:SIMPLE) cause:javax.security.sasl.SaslException: GSS initiate failed […

2020年4月7日 0条评论 39点热度 阅读全文

我正在使用Apache Crunch编写一些map-reduce代码。我有一个以下类,其中包含一些在map-reduce代码中传递的数据,但是我遇到了一个异常-不知道为什么。 这是类接口(interface) package com.ca.analytics.pa.datamodel; import java.io.Serializable; import java.util.List; public interface MilestoneDatum extends Comparable<MilestoneD…

2020年3月22日 0条评论 27点热度 阅读全文

我听说Apache Crunch是一个外观,它可以在没有Hadoop的情况下运行应用程序。这是真的? 如果是,那该怎么做? 在Apache Crunch Getting Started中,第一个示例包括hadoop命令: $ hadoop jar target/crunch-demo-1.0-SNAPSHOT-job.jar <in> <out> 可以省略 hadoop吗? 解决方案如下: 也许您误会了您不需要Hadoop 集群。 Hive,Pig,Spark都可以在本地运行,也可以在HDF…

2020年3月7日 0条评论 44点热度 阅读全文

我有一个要求,我想将5GB的ORC文件拆分为5个文件,每个文件的大小为1GB。ORC文件是可拆分的。这是否意味着我们只能按 strip 分割文件 strip ?但是我有要求我要根据大小分割orc文件。将ex.split 5GB ORC文件分成5个文件,每个文件大小为1GB。如果可能,请分享示例。 解决方案如下: 一种常见的方法,并考虑到文件大小可以是5GB,100GB,1TB,100TB等。您可能想挂载指向该文件的Hive表并定义另一个指向不同目录的表,然后从一个目录运行插入使用Hive提供的insert语句将其与…

2020年2月29日 0条评论 39点热度 阅读全文

我正在使用com.cloudera.crunch版本:“0.3.0-3-cdh-5.2.1”。 我有一个小程序,可以读取一些AVRO并根据某些条件过滤掉无效数据。我正在使用pipeline.write(PCollection,AvroFileTarget)写入无效的数据输出。在生产运行中运行良好。 对于这段代码的单元测试,我使用MemPipeline实例。但是,在这种情况下,在写入输出时会失败。 我收到错误消息: java.lang.UnsatisfiedLinkError: org.apache.hadoop.u…

2019年11月8日 0条评论 34点热度 阅读全文