hdfs相关内容
我试图使用以下指南在伪分布式配置中设置 Hadoop版本0.20.203.0 :
..
Hadoop分布式文件系统中的块是否存储多个小文件,或块是否只存储1个文件?文件不存储在一个单独的块中。顺便说一句,单个文件可以存储在多个块中。文件和block-id之间的映射在NameNode中保存。 根据 Hadoop:权威指南 $ b 与单个磁盘的文件系统不同, HDFS中小于单个块的文件不占用整块的底层存储。 HDFS旨在处理大文件。如果有太多的小文件,那么NameNo
..
我无法将数据追加到HDFS中的现有文件。我希望如果文件存在,然后附加一行,如果没有,创建一个新的文件名称给定。 这是我写入HDFS的方法。 if(!file.exists(path)){ file.createNewFile(path); } FSDataOutputStream fileOutputStream = file.append(path); Buffer
..
Hadoop中分割大小和块大小之间的关系是什么?正如我在这个中阅读的,分割大小必须是块大小的n倍(n是整数且n> 0),这是正确的吗?在拆分大小和块大小之间是否存在任何必须的关系? 解决方案 在HDFS体系结构中,存在块的概念。 HDFS使用的典型块大小为64 MB。当我们把一个大文件放到HDFS中时,它被分成64 MB块(根据块的默认配置),假设你有一个1GB的文件,并且你想把这个文件放
..
我建立了一个多节点Hadoop集群。 NameNode和Seconaday namenode在同一台机器上运行,并且群集只有一个Datanode。所有节点均在Amazon EC2机器上配置。 以下是主节点上的配置文件 从属 54.68.169.62(从节点的公共IP地址)$ b(主节点的公共IP地址) $ b 54.68.169.62 $ b core-site.xml
..
参数“mapred.min.split.size”更改之前写入文件的块的大小? 假设我在启动我的JOB时传递值为134217728(128MB)的参数“mapred.min.split.size”。 什么是正确的说什么发生? 1 - 每个MAP处理相当于2个HDFS块(假设每个块为64MB); 2 - 我的输入文件(之前包含HDFS)会有一个新的区域占用HDFS 128M中的块;
..
我想将一些视频/图片存储到Hadoop HDFS ,但我听说过HDFS只接受像文本一样的文件。 可以肯定的是,我们可以将视频/图像存储到HDFS吗?如果是的话,那么做什么的方式或步骤呢? 解决方案 绝对有可能不做任何额外的事情。 Hadoop为我们提供了读取/写入二进制文件的工具。所以,实际上任何可以转换为字节的东西都可以存储到HDFS(图像,视频等)中。为此,Hadoop提供了一种称为
..
在设置hadoop集群时,我读取了50070上的namenode,并据此进行了设置,运行正常。 但是在我遇到的一些书中名称节点地址: hdfs:// localhost:9000 / 或 hdfs:// localhost:8020 准确设置namenode的端口号码是什么? 解决方案 namenode Web UI的默认地址是
..
这是一种天真的问题,但我是NoSQL范式的新手,对其不太了解。所以如果有人能够帮助我清楚地理解HBase和Hadoop之间的差异,或者给出一些可能帮助我理解差异的指针。 $ b $ p到目前为止,我做了一些研究和ACC。根据我的理解,Hadoop提供的框架可以在HDFS中使用原始数据块(文件),而HBase则是Hadoop之上的数据库引擎,它基本上可以与结构化数据而不是原始数据块一起工作。与SQ
..
我试图理解在YARN集群/客户端上如何运行spark。在我看来,我有以下问题。 是否有必要在纱线群中的所有节点上安装spark?我认为它应该是因为集群中的工作节点执行任务,并且应该能够解码驱动程序发送到集群的spark应用程序中的代码(spark API)? p>它在文档“确保 HADOOP_CONF_DIR 或 YARN_CONF_DIR 指向包含(客户端) Hadoop集群的配置文件“。
..
这是一个涉及Hadoop / HDFS的概念性问题。假设你有一个包含10亿行文件的文件。为了简单起见,我们考虑每一行的格式为 其中k是从开始行的偏移量,值是线的内容。 现在,当我们说要运行N个map任务时,框架是否将输入文件拆分为N个split并在该split上运行每个map任务?或者我们是否必须编写一个分区函数来分割并运行分割生成的每个映射任务? 所有我想知道的是,拆分是
..
这里是我的问题:我有一个HDFS文件,它可能很大(=不足以容纳所有内存) 我想要做什么是避免必须缓存这个文件在内存中,并且只能像处理常规文件一样逐行处理它: for line in open(“myfile”,“r”): #做一些处理 我正在查看是否有一种简单的方法可以在不使用外部库的情况下正确完成此操作。我可以使它与 libpyhdfs 或 python-hdfs
..
我在伪分布式模式下使用Hadoop,一切正常。但之后因为某种原因必须重新启动计算机。现在,当我尝试启动Namenode和Datanode时,我只能找到Datanode正在运行。有谁能告诉我这个问题的可能原因吗?或者我做错了什么? 我试过 bin / start-all.sh 和 bin / start-dfs.sh 。 解决方案 开始。我找到了一个解决方案,使用以下内容: 首先
..
某人如何修复损坏的HDFS?我查看了Apache / Hadoop网站,并说它的 fsck 命令,它不能解决它。希望之前遇到这个问题的人可以告诉我如何解决这个问题。 $ b 与传统的fsck工具不同,命令不会纠正它检测到的错误。通常情况下,NameNode会自动纠正大部分可恢复失败。 当我运行 bin / hadoop fsck / -delete ,它列出了损坏或丢失块的文件。我如
..
我是hadoop分布式文件系统的新手,我已经在我的机器上完成了hadoop单节点的完整安装,但是之后当我要将数据上传到hdfs时,它会给出错误消息 Permission Denied 。 来自终端的消息: hduser @ ubuntu:/ usr / local / hadoop $ hadoop fs -put / usr / local / input-data / / inp
..
在Map Reduce编程中,reduce阶段将其作为其子部分进行混洗,排序和减少。排序是一件昂贵的事情。 Map Reduce Programming中Reducer的混洗和排序阶段的目的是什么? 解决方案首先, shuffling 是将数据从映射器传输到reducer的过程,所以我认为很明显,减速器是必要的,否则,他们将不能够有任何输入(或来自每个映射器的输入)。即使在地图阶段结束
..
Hadoop定义指南说 - $ b 每个Namenode运行轻量级故障转移控制器进程,其 作业是监视其Namenode失败(使用简单的 心跳机制),并在namenode 失败时触发故障转移。 blockquote> 一个namenode怎么能运行某些东西来检测它自己的失败? 谁向谁发送心跳? 这个过程在哪里运行? 它如何检测namenode失败? or
..
我想在HDFS中创建一个文件并在其中写入数据。我使用这段代码: Configuration config = new Configuration(); FileSystem fs = FileSystem.get(config); 路径filenamePath = new Path(“input.txt”); if(fs.exists(filenamePath)){ fs.de
..
我想在spark中读取一个CSV并将其转换为DataFrame并使用 df.registerTempTable(“table_name”) $ b将其存储在HDFS中 $ b 我试过了: scala> val df = sqlContext.load(“hdfs:///csv/file/dir/file.csv”) 我得到的错误: java.lang.Runt
..
根据 Hadoop - 权威指南 逻辑记录FileInputFormats定义通常不适合HDFS块。例如,TextInputFormat的逻辑记录是行,它们会经常与HDFS边界交叉。这对程序的功能没有任何影响 - 例如,线没有被遗漏或损坏 - 但值得了解,因为它确实意味着数据本地地图(即与它们在同一主机上运行的地图输入数据)将执行一些远程读取。这种情况造成的轻微开销通常不是很重要。假设一条记
..