草庐IT

Java/Scala 远程 HDFS 使用

我正在尝试连接到远程HDFS集群。我已经阅读了一些文档并开始使用,但没有找到如何做到这一点的最佳解决方案。情况:我在xxx-something.com上有HDFS。我可以通过SSH连接到它,一切正常。但我想做的是,将文件从它获取到我的本地机器。我做了什么:我已经在我的conf文件夹中创建了core-site.xml(我正在创建Play!应用程序)。我已经将fs.default.name配置更改为hdfs://xxx-something.com:8020(不确定端口)。然后我尝试启动一个简单的测试:valconf=newConfiguration()conf.addResource(ne

hadoop - 将数据从网站加载到 hdfs

我需要上传存在于网络链接中的数据,例如“博客”到hdfs。现在我正在寻找完成这个的选项可以找到下面的链接:http://blog.cloudera.com/blog/2012/09/analyzing-twitter-data-with-hadoop/但是通过阅读flume文档,我不清楚如何设置flume源指向博客内容所在的网站。根据我对fluem文档的理解,需要有一个网络服务器,我需要在其中部署一个应用程序,然后将生成网络日志,这些日志将由flume传输到hdfs。但我不想要Web服务器日志,实际上我正在寻找博客内容(即所有数据+博客上的评论,如果有的话)这是一种非结构化数据,然后我

hadoop - 将 HDFS 数据写入外部磁盘/磁带

我在HDFS上有1TB的数据。我的本地磁盘上没有那么多空间来将数据传输到本地。有什么方法可以将HDFS数据直接写入外接硬盘吗? 最佳答案 如果磁盘映射到你的机器上,你应该可以使用-get命令来完成它 关于hadoop-将HDFS数据写入外部磁盘/磁带,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/16185610/

hadoop - 如何检查hdfs上的分布式数据

我们知道,Hadoop将数据复制到hdfs中的多个数据节点上,有没有命令可以查看分布在不同节点上的数据。 最佳答案 我想你可能正在寻找这个命令hdfsfsck/hdfs/path/to/data-files-blocks-locations您会收到如下所示的报告。它报告所有block的列表、它们的复制因子以及block所在的主机集。/hdfs/path/to/data/file.txt4771082824bytes,36block(s):OK0.BP-22525430-10.14.103.78-1355873316066:blk_-

hadoop - 在 hdfs 文件系统中创建文件的标准方法是什么?

我了解到我必须在hdfs-site.xml中配置NameNode和DataNode目录。这就是我在NameNode上的hdfs-site.xml配置:dfs.replication3dfs.namenode.name.dirfile://usr/local/hadoop-2.6.0/hadoop_data/hdfs/namenodedfs.block.size134217728我在我的DataNode上做了几乎相同的事情,并将dfs.namenode更改为dfs.datanode。然后我通过格式化文件系统hadoopnamenode-format一切似乎都没有错误地完成了。然后我想使用

R 没有连接到 HDFS

为什么R没有连接到Hadoop?我正在使用R通过“rhdfs”包连接到HDFS。安装“rJava”包并加载rhdfs包。HADOOP_CMD环境变量在R中使用:Sys.setenv(HADOOP_CMD='/usr/local/hadoop/bin')但是当给出hdfs.init()函数时,会产生如下错误信息:sh:1:/usr/local/hadoop/bin:PermissiondeniedErrorin.jnew("org/apache/hadoop/conf/Configuration"):java.lang.ClassNotFoundExceptionInaddition:W

java - YARN 上 Spark 提交和 Flink 的 HDFS 路径

我使用clouderalivevm,我有一个hadoop和spral独立集群。现在我想用sparksubmit和flinkrun脚本提交我的工作。这也有效。但我的应用程序可以在hdfs中找到输入和输出文件的路径。我设置的路径如下:hdfs://127.0.0.1:50010/user/cloudera/outputs我从这个端口得到的信息:如何在java中设置hdfs的路径??最好的问候,保罗 最佳答案 您不必设置DataNode主机的路径。在“概述”页面上,您将看到NameNode的连接信息,这也是您必须连接到的地方。

python - PySpark 和访问 HDFS

我正在尝试获取已复制到HDFS的文件,但我似乎无法弄清楚如何实际连接。例如,我使用以下命令将文件放在HDFS中:hdfsdfs-put~/spark-1.4.0/XXX/YYYinput哪个工作正常,但现在是从PySpark定位它们的问题。spark的文档指向:https://spark.apache.org/docs/latest/hadoop-third-party-distributions.html我使用的是与hadoop2.6匹配的spark版本,但在上述链接指向的目录中没有看到任何conf文件。我可以直接访问输入文件吗?还是需要使用PySpark进行更多配置?

java - 读取 HDFS 文件拆分

使用HDFS的JavaAPI,可以直接读取一个文件,一次按顺序读取每个block。这是一个simpleexample.我希望能够使用类似HDFS的FileSplits的方式一次block读取文件.最终目标是用多台机器并行读取一个文件,每台机器读取一个block区域。给定HDFS路径,我如何获得FileSplits或block?Map-Reduce和其他处理器不涉及。这是严格的文件系统级操作。 最佳答案 这就是你如何在HDFS中获取文件的block位置Pathdataset=newPath(fs.getHomeDirectory(),

hadoop - hdfs 如何删除过度复制的 block

例如,我使用复制因子2将文件写入HDFS。我正在写入的节点现在拥有文件的所有block。文件所有block的其他副本分散在集群中所有剩余的节点周围。这是默认的HDFS策略。如果我将文件的复制因子降低到1,到底会发生什么?HDFS如何决定从哪些节点删除哪些block?我希望它尝试从文件block数最多的节点中删除block?为什么我要问-如果是这样,那将是有道理的-它会减轻文件的处理。因为如果所有block只有一个副本,并且所有block都位于同一节点上,那么由于数据传输到集群中的其他节点,使用map-reduce处理文件会更加困难。 最佳答案