草庐IT

hdfs_clusters

全部标签

hadoop - hdfs fsck 显示错误的复制因子

我刚开始使用Hadoop并且一直在尝试使用它。我用谷歌搜索了一下,发现我必须更改hdfs-site.xml中的属性更改默认复制因子...这就是我所做的,老实说奇迹般有效。当我添加新文件时,它们将自动与新的复制因子。但是当我做类似的事情时:hdfsfsck/然后输出显示默认复制为1。我可能只是对它迂腐。但我宁愿把它修好……或者我应该说。我一直依赖于那个输出,因此我花了很长时间才意识到没有错......或者也许有有什么问题吗?有人可以帮助解释该fsck输出。..Status:HEALTHYTotalsize:1375000000BTotaldirs:1Totalfiles:2Totalsy

hadoop - 不正确的 HDFS 文件 URL

我试图访问HDFS中存在的文件(位置:/user/input/UsageSummary.txt)。我不确定该文件的URL是什么。我试过这个网址,但没有用:hdfs://127.0.0.1:9000/user/input/UsageSummary.txt即使我尝试了这些,但都没有用:hdfs://localhost:9000/user/input/UsageSummary.txthdfs://localhost/user/input/UsageSummary.txt请告诉我如何找到正确的URL。编辑这是core-site.xml文件的内容:fs.default.namehdfs://lo

hadoop - HDFS 中的压缩文件提取

我在HDFS中上传了一个.gz文件,我正在尝试提取该文件的内容并将其放入HDFS的同一目录中。这是我试过的代码:finalStringuri="hdfs://localhost:8020/user/input1/output.gz";Pathpt=newPath(uri);FileSystemfs=FileSystem.get(newConfiguration());Configurationconf=newConfiguration();CompressionCodecFactoryfactory=newCompressionCodecFactory(conf);Compressio

hadoop - 通过 Hue 更新 HDFS 中的文件

我知道HDFS是一次写入多次读取类型。据我所知,不可能在HDFS中(随机地)更新文件,因为文件存储在分布式环境中(作为block),每个block都复制在其他节点上,这对于数据节点来说很难更新,即使是这些复制的block.但是,我的问题是可以使用hue工具更新HDFS中的文件吗?因为,我已经使用hue工具更新了许多文件(存储在HDFS中)并在其上运行了map-reduce作业。那么,hue怎么可能更新HDFS中的文件呢。hue是否在后台执行某些操作?通过hue进行的更新是否真的更新到同一个文件?或者hue删除文件并重新写入整个文件(包括我们要更新的新数据)?

python - 使用带有子进程、管道、Popen 的 python 从 hdfs 读取/写入文件给出错误

我正在尝试在python脚本中读取(打开)和写入hdfs中的文件。但是有错误。谁能告诉我这里出了什么问题。代码(完整):sample.py#!/usr/bin/pythonfromsubprocessimportPopen,PIPEprint"BeforeLoop"cat=Popen(["hadoop","fs","-cat","./sample.txt"],stdout=PIPE)print"AfterLoop1"put=Popen(["hadoop","fs","-put","-","./modifiedfile.txt"],stdin=PIPE)print"AfterLoop2"

hadoop - 如何将子目录中的文件复制到 HDFS 中的单个目录

我在Impala中有一个由两列分区的外部表,因此在您访问实际数据文件之前,HDFS目录有两级目录。该表在元存储中已损坏,无法查询。我只想将单个(~10k)文件复制到一个目录中,这样我就可以删除损坏的表,删除现有目录,然后使用Impala中的LOADDATAINTO表查询将数据运行回表中。问题是我找不到只复制文件的方法,因为加载数据不支持子目录加载,所以它们最终都在一个目录中。结构如下:我的根我的sub1a我的sub2a文件1.txt文件2.txt在mysub1和mysub2级别有数百个目录我已经能够获得正确的文件列表:hadoopfs-lsr/我的根/|grep.parq但我不知道如何

Hadoop hdfs namenode 启动命令失败。也没有格式化?

很像我运行命令sudoservicehadoop-hdfs-namenodestart时的状态,命令失败并显示以下消息。2015-02-0116:51:22,032INFOorg.apache.hadoop.hdfs.server.namenode.NameNode:registeredUNIXsignalhandlersfor[TERM,HUP,INT]2015-02-0116:51:22,379WARNorg.apache.hadoop.metrics2.impl.MetricsConfig:Cannotlocateconfiguration:triedhadoop-metrics

python - 如何使用 Python 获取 hdfs 文件的创建日期

我正在使用CDH5。如何使用Python获取目录下所有hdfs文件的创建日期?我不喜欢使用subprocess.Popen()并解析结果。代码看起来不是很优雅。 最佳答案 Snakebite是一个Pythonhdfs客户端。它有一个list()方法,该方法将返回包括修改时间在内的文件信息,并在此处的文档中列出了一个示例:http://spotify.github.io/snakebite/client.html#client.Client.ls您可以使用pip安装它。snakebite的Python包信息在这里:https://py

java - 是否可以读取正在写入 HDFS 的数据

我有一个简单的java程序,它可以连续写入hdfs。我的理解是,一旦将特定的特定block写入HDFS,其他客户端就可以访问它,但就我而言,我无法这样做。我正在写一个大小为39Kb的文件,每次写入都在100毫秒后开始。我在hue中检查文件的状态,但在写入操作进行之前它显示0字节,写入完成后它显示完整的文件。我希望至少能够读取文件中写入的数据4Kbblock。我正在使用默认配置。我的假设正确吗?如果是这样,我做错了什么?我使用带有CDH4.4的虚拟机。 最佳答案 Hadoop权威指南中的一致性模型说“创建文件后,它在文件系统命名空间中

hadoop - 在 HDFS 的联邦中将数据从本地磁盘复制到 HDFS

我使用两台主机(hadoop-coc-1和hadoop-coc-2)尝试在其中配置HDFS联合。因此,我在两个主机(hadoop-coc-1和hadoop-coc-2)中配置了$catetc/hadoop/hdfs-site.xml。两个HDFS都与WebHDFS一起正常运行。但是,使用此配置,defaultFS服务未运行。也许这是我无法将数据从本地磁盘复制到HDFS的原因。我尝试使用以下命令复制数据:$hdfsdfs-copyFromLocal~/input1webhdfs://hadoop-coc-1/JavaHotSpot(TM)ClientVMwarning:Youhavelo