草庐IT

hdfs_clusters

全部标签

java - 用于从 hdfs 提供输入并将输出写入 excel 文件的 Hadoop Mapreduce 示例

关闭。这个问题需要更多focused.它目前不接受答案。想改进这个问题吗?更新问题,使其只关注一个问题editingthispost.关闭8年前。Improvethisquestion我是Hadoop编程的新手,我在Haddop中找到了一些关于mapreduce的有用链接,我可以处理。这对我和初学者都非常有用。所有示例都显示为从eclipse提供输入,输出可以在eclipse的输出文件夹中看到。在这里我想知道如何从HDFS提供输入(我的意思是而不是从eclipse提供)。并将输出写入某个Excel文件。请多多指教。

hadoop - 如何使用 Pig 将数据存储在 HDFS 上的多个分区文件中

我有一个pig作业,它分析大量日志文件并生成一组属性和一组具有这些属性的ID之间的关系。我想将这种关系存储在HDFS上,但我希望以一种对其他Hive/Pig/MapReduce作业友好的方式来操作数据或数据子集,而无需摄取完整数据我的Pig作业的输出,因为这是大量数据。例如,如果我的关系模式是这样的:relation:{group:(attr1:long,attr2:chararray,attr3:chararray),ids:{(id:chararray)}}我真的很想能够对这些数据进行分区,将其存储在如下所示的文件结构中:/results/attr1/attr2/attr3/fil

hadoop - HDFS 是否提供异步写入?

通过查看API和文档,我的印象是hdfs不提供完全异步的写入操作。在写入操作返回之前,它必须等待block的最小复制(默认为1)完成。有什么方法可以使用HDFSAPI完全异步写入吗?谢谢。 最佳答案 不,HDFSAPI没有提供异步写入的任何功能,因为它应该提供持久性和阻塞写入。如果性能是目标,一个好主意是在写入HDFS之前尽可能将数据累积到最小块大小。但是,如果机器出现故障并且您还没有将数据写入HDFS,则数据将会丢失。 关于hadoop-HDFS是否提供异步写入?,我们在StackOv

java - 无法附加到 HDFS

我有一个类负责从数据源接收一些批处理数据并将该数据的序列化内容写入文件(始终是同一个文件)。为此,我在创建实例时做的第一件事是检查该文件是否存在,如果不存在则创建它。这似乎可以毫无问题地创建文件,但是当我尝试使用onOperationsBatchSynchronization方法将序列化对象附加到文件时,问题就来了。这是上述类的代码:publicclassHDFSSpaceSynchronizationEndpointextendsSpaceSynchronizationEndpoint{privatefinalstaticLoggerLOG=LoggerFactory.getLogg

java - 如何使用storm将数据持久化到HDFS

我有一个简单的bolt,它从kafkaspout读取数据,然后将数据写入HDFS目录。问题是在集群停止之前,bolt不会写入。我如何确保bolt从kafkaspout读取一个元组,然后立即将其写入HDFS,或者至少写入每个“n”条目。(我用的是CDH4.4,Hadoop2.0)bolt的java:publicclassPrinterBolt10extendsBaseRichBolt{privateOutputCollectorcollector;privateStringvalues;Configurationconfiguration=null;FileSystemhdfs=null

java - 使用java读取HDFS中的文件并通过regex匹配多行 block

我正在使用日志分析工具。我在Hadoop中使用YARN日志聚合功能。当我执行此操作时,Hadoop日志文件太大,以至于某些API方法无法将文件内容完全读入内存。我想匹配文件中的多行block,其中第一行包含字符串[map]而最后一行包含[\map]-我认为我可以基于正则表达式来做到这一点。常用的BufferedReader无法满足我的要求。我的问题是:是否有另一种方法可以逐行检查文件,检查那些与我的正则表达式匹配的内容?附言我真的不想将文件拆分成多个较小的文件来处理,因为我担心这会导致找不到某些匹配的内容,因为我可能会在匹配block的中间拆分文件。以下是日志文件的片段-我想要[MAP

hadoop - 为什么 HDFS 不适合需要低延迟的应用程序?

我是Hadoop和HDFS的新手,我很困惑为什么HDFS不是需要低延迟的应用程序的首选。在大数据场景中,我们会将数据分布在不同的社区硬件上,因此访问数据应该更快。 最佳答案 Hadoop完全是一个批处理系统,旨在存储和分析结构化、非结构化和半结构化数据。Hadoop的ma​​p/reduce框架相对较慢,因为它旨在支持不同的格式、结构和海量数据。我们不应该说HDFS较慢,因为HBaseno-sql数据库和基于MPP的数据源(如Impala、Hawq)位于HDFS上。这些数据源运行速度更快,因为它们不遵循mapreduce执行以进行数

hadoop - 通过独特的技术将数据摄取到 HDFS

我想将非半结构化数据(MSword/PDF/JSON)从远程计算机传输到hadoop(可以是批处理的,也可以是接近实时的,但不是流式传输)。我必须确保数据从远程位置快速移动到我的本地机器(在低带宽下工作)到HDFS或本地机器。例如,InternetDownloadManager具有这种惊人的技术,可以与FTP建立多个连接,并利用低带宽进行更多连接。Hadoop生态系统是否有可能提供这样的工具来将数据摄取到hadoop中。或者任何自制技术?哪种工具/技术可能更好。 最佳答案 您可以使用WebHDFSAPIhttp://hadoop.a

hadoop - 如何将 PySpark worker 中的 numpy 数组保存到 HDFS 或共享文件系统?

我想在PySpark中高效地将numpy数组从工作机器(函数)保存到HDFS或从工作机器(函数)读取numpy数组。我有两台机器A和B。A有master和worker。B有一名worker。例如我想实现如下目标:if__name__=="__main__":conf=SparkConf().setMaster("local").setAppName("Test")sc=SparkContext(conf=conf)sc.parallelize([0,1,2,3],2).foreachPartition(func)deffunc(iterator):P=>forxiniterator:P

java - MRUnit 测试在使用 MULTIPLEOUTPUTS 写入 HDFS 时给出 NULLPOINTER 异常

我目前有一个mapReduce程序,可以将数据发送到具有不同文件名的hdfs。所以在我的reducer中,我使用MultipleOutputs写入HDFS中的不同文件(下面的完整reducer代码)。我想使用mrunit测试我的代码,下面是我的测试方法。@TestpublicvoidreducerMRUnit()throwsIOException{Stringoutput="";ArrayListlist=newArrayList(0);list.add(newText(""));reduceDriver.withInput(newText(""),list);reduceDriver