草庐IT

bytes_write

全部标签

hadoop - java IOException : Write end dead during a hadoop job 异常

我有一个map-onlyhadoop作业,它在工作期间抛出几个IO异常:1)java.io.IOException:写结束2)java.io.IOException:管道关闭它设法完成了它的工作,但有异常(exception)让我担心。我做错了什么吗?几乎相同的工作每天都在另一个小20倍的数据集上工作,并且没有抛出任何异常。作业由Googledataproc运行。我正在使用的配置文件:#!/bin/bashhadoopjar/usr/lib/hadoop-mapreduce/hadoop-streaming.jar\-Dmapreduce.output.fileoutputformat

java - 在 native Java map reduce 中将 Parquet FIXED_LEN_BYTE_ARRAY 转换为 DECIMAL

我的底层数据是使用HIVE输出格式(org.apache.hadoop.hive.ql.io.parquet.MapredParquetOutputFormat)编写的尝试使用nativeJavaMapreduce读取此数据byte[]b=value.getBinary(value.getType().getFieldIndex(field),0).getBytes();HiveDecimalhd=HiveDecimal.create(b,true);此处的值是org.apache.parquet.example.data.Group类型hd在这种情况下变为NULL。但下面对字符串/整

java - Hadoop:将 BytesWritable 转换为 byte[]

谁能帮我把BytesWritable转换成byte[]。如果我使用值是BytesWritable的value.getBytes(),我会得到额外的字节。谢谢 最佳答案 您遇到的问题是BytesWritable包含一个字节数组和一个长度。你必须结合使用这些。这是我写的一个小单元测试,向您展示发生了什么:@TestpublicvoidtestBytesWritable(){BytesWritablebw=newBytesWritable();Textt1=newText("ABCD");bw.set(t1.getBytes(),0,t1

Hadoop HDFS : Read/Write parallelism?

在网上找不到足够的信息所以在这里问:假设我正在将一个巨大的文件写入磁盘,数百TB,这是mapreduce(或spark或其他)的结果。mapreduce如何将这样的文件高效地(可能是并行的?)写入HDFS,以便稍后以并行方式读取?我的理解是HDFS只是基于block(例如128MB)。因此,为了写入第二个block,您必须已经写入了第一个block(或者至少确定哪些内容将进入block1)。假设它是一个CSV文件,文件中的一行很可能会跨越两个block——我们如何将这样的CSV读取到mapreduce中的不同映射器?它是否必须执行一些智能逻辑来读取两个block、连接它们并读取正确的行

hadoop - Hadoop 中的 VIRTUAL_MEMORY_BYTES 任务计数器是什么意思?

权威指南中的以下摘录提供了如下所示的高级详细信息,但是这个任务计数器中的虚拟内存到底指的是什么?如何解读?它与PHYSICAL_MEMORY_BYTES有什么关系?以下是其中一份工作的示例摘录。物理空间约为214GB。虚拟空间约为611GB。 最佳答案 1.这个任务计数器中的虚拟内存到底指的是什么?VirtualMemoryhereisusedtopreventOutofMemoryerrorsofatask,ifdatasizedoesn'tfitsinRAM(physicalmem).inRAM.Soaportionofmemo

hadoop - 权限被拒绝 : user=basi, access=WRITE, inode ="/":

我是hadoop和pig的新手。我在ubuntu和hadoop的本地用户中安装了pig作为hduser。Pig在小型数据集的本地模式下工作正常。在mapreduce模式下启动pig并尝试实现wordcount但权限被拒绝错误如下。引起:org.apache.hadoop.ipc.RemoteException(org.apache.hadoop.security.AccessControlException):权限被拒绝:user=basi,access=WRITE,inode="/":hduser:supergroup:drwxr-xr-x以psudomode启动hadoop在本地用

hadoop/HDFS : Is it possible to write from several processes to the same file?

f.e.创建文件20bytes.第一个进程将从0写入4第二个从5到9等等我需要它来使用我的MapReduce并行创建一个大文件。谢谢。附言也许它还没有实现,但总的来说是可能的——请指出我应该挖掘的地方。 最佳答案 您能否解释一下您计划在创建此文件后对其执行的操作。如果您需要将它从HDFS中取出然后使用它,那么您可以让HadoopM/R创建单独的文件,然后使用像hadoopfs-cat/path/to/output/part*>这样的命令localfile将各个部分组合成一个文件并保存到本地文件系统。否则,您无法让多个写入器打开同一个

java - 使用 Spring Data JPA 查找实体时如何启用 LockModeType.PESSIMISTIC_WRITE?

我怎样才能实现这个代码的等效:tx.begin();Widgetw=em.find(Widget.class,1L,LockModeType.PESSIMISTIC_WRITE);w.decrementBy(4);em.flush();tx.commit();...但是使用Spring和Spring-Data-JPA注释?我现有代码的基础是:@Service@Transactional(readOnly=true)publicclassWidgetServiceImplimplementsWidgetService{/**Thespring-datawidgetrepositorywh

java - 使用 Spring Data JPA 查找实体时如何启用 LockModeType.PESSIMISTIC_WRITE?

我怎样才能实现这个代码的等效:tx.begin();Widgetw=em.find(Widget.class,1L,LockModeType.PESSIMISTIC_WRITE);w.decrementBy(4);em.flush();tx.commit();...但是使用Spring和Spring-Data-JPA注释?我现有代码的基础是:@Service@Transactional(readOnly=true)publicclassWidgetServiceImplimplementsWidgetService{/**Thespring-datawidgetrepositorywh

java - HBase 映射减少 : write into HBase in Reducer

我正在学习HBase。我知道如何使用HadoopMapReduce编写Java程序并将输出写入HDFS;但现在我想将相同的输出写入HBase,而不是HDFS。它应该有一些类似的代码,就像我之前在HDFS中所做的那样:context.write(key,value);谁能给我一个例子来实现这个? 最佳答案 这是一种方法:publicstaticclassMyMapperextendsTableMapper{publicvoidmap(ImmutableBytesWritablerow,Resultvalue,Contextcontex