作者热门文章
- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
我试图在减少部分输出一些特定的记录,这取决于键值记录的值。在hadoop mapreduce中可以使用类似的代码
public void setup(Context context) throws IOException, InterruptedException {
super.setup(context);
Configuration conf = context.getConfiguration ();
FileSystem fs = FileSystem.get (conf);
int taskID = context.getTaskAttemptID().getTaskID().getId();
hdfsOutWriter = fs.create (new Path (fileName + taskID), true); // FSDataOutputStream
}
public void reduce(Text key, Iterable<Text> value, Context context) throws IOException, InterruptedException {
boolean isSpecificRecord = false;
ArrayList <String> valueList = new ArrayList <String> ();
for (Text val : value) {
String element = val.toString ();
if (filterFunction (element)) return;
if (specificFunction (element)) isSpecificRecord = true;
valueList.add (element);
}
String returnValue = anyFunction (valueList);
String specificInfo = anyFunction2 (valueList);
if (isSpecificRecord) hdfsOutWriter.writeBytes (key.toString () + "\t" + specificInfo);
context.write (key, new Text (returnValue));
}
我想在 spark 集群上运行这个过程,spark java api 可以像上面的代码那样做吗?
最佳答案
只是一个如何模拟的想法:
yoursRDD.mapPartitions(iter => {
val fs = FileSystem.get(new Configuration())
val ds = fs.create(new Path("outfileName_" + TaskContext.get.partitionId))
ds.writeBytes("Put yours results")
ds.close()
iter
})
关于java - spark java api 有像 hadoop MultipleOutputs/FSDataOutputStream 这样的类吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43654407/
我在 hadoop 上写入小文件时遇到一个奇怪的问题。下面是示例程序 public void writeFile(Configuration conf, String message, String
我正在尝试的是将 hdfs 上具有 xml 数据的序列文件转换为 hdfs 上的 .xml 文件。 在 Google 上搜索并找到以下代码。我根据自己的需要做了修改,下面是代码.. public cl
我试图在减少部分输出一些特定的记录,这取决于键值记录的值。在hadoop mapreduce中可以使用类似的代码 public void setup(Context context) throws I
我们构建了一个 java REST-API 来接收事件数据(比如点击购买按钮)并将该数据写入 HDFS。本质上,我们为每个发送数据(JSON 格式)或使用现有数据的主机打开流,使用时间戳、事件名称和主
我是一名优秀的程序员,十分优秀!