草庐IT

unix - 用于创建 HDFS 目录和配额设置的自动化 shell 脚本

我在具有ambari2.1和HDP2.3的hortonworks中设置了一个集群。我必须创建一个自动脚本来创建HDFS目录和配额设置。任何人有与此相关的任何类型的脚本或任何类型的建议,请在此处发布。 最佳答案 下面是我的脚本:#!/bin/bashread-p"EnterUserName:"usernameecho"Welcome$username!"read-s-p"EnterPassword:"pswdecho$pswdhdfsdfs-mkdir/$1hdfsdfs-mkdir/$2hdfsdfs-mkdir/$3hdfsdfs

hadoop - 在 HDFS 中创建输入文件

我正在尝试使用此命令在hdfs中创建一个输入文件:hduser@salma-SATELLITE-C855-1EQ:/usr/local/hadoop$./bin/hadoopfs-mkdir/in但它给我一个连接失败的错误:SLF4J:ClasspathcontainsmultipleSLF4Jbindings.SLF4J:Foundbindingin[jar:file:/usr/local/hadoop/share/hadoop/common/lib/slf4j-log4j12-1.7.5.jar!/org/slf4j/impl/StaticLoggerBinder.class]SL

hadoop - 启动 hdfs namenode -format 时出错

我在启动时在远程服务器上安装hadoophdfs名称节点格式出现错误java.net.UnknownHostException:Web:Web:unknownerror我已经配置了所有需要的文件16/10/1414:28:38INFOnamenode.NameNode:STARTUP_MSG:/************************************************************STARTUP_MSG:StartingNameNodeSTARTUP_MSG:host=java.net.UnknownHostException:Web:Web:unkno

hadoop - HDFS 中的 Avro 架构生成

我有一个场景,我在HDFS中有一些avro文件。我需要为HDFS中的那些AVRO数据文件生成Avro架构文件。我尝试使用Spark(https://github.com/databricks/spark-avro/blob/master/src/main/scala/com/databricks/spark/avro/SchemaConverters.scala)进行研究。除了把AVRO数据文件带到本地,做HDFSPUT还有没有其他的。欢迎任何建议。谢谢! 最佳答案 每个avro文件都包含它编写时使用的avro模式。您可以使用avr

hadoop - 除了SQOOP之外,还有什么方法可以从RDBMS传输到HDFS吗?

除了使用sqoop将RDBMS传输到HDFS之外,我想要其他方法请给我线索请任何人给我解释一下,hive和sqoop之间的关系是什么? 最佳答案 添加到devツ的答案中,您还有一个名为streamsets数据收集器的工具,它可以帮助您通过创建JDBC连接从mysql获取数据到HDFS。 关于hadoop-除了SQOOP之外,还有什么方法可以从RDBMS传输到HDFS吗?,我们在StackOverflow上找到一个类似的问题: https://stackover

hadoop - CDH HDFS节点退役永无止境

我们有一个12台服务器的hadoop集群(CDH),最近,我们想停用其中的三台,但是这个进程已经在那里运行了2天多了。但它永远不会结束,特别是在过去的24小时内,我看到三个数据节点上只有94G数据可用,但在过去的24小时内大小似乎没有变化。即使通过复制不足的block数也已经为零。hdfs中的所有数据的复制因子都是3。以下是hadoopfsck命令的结果:总大小:5789534135468B(打开文件总大小:94222879072B)目录总数:42458文件总数:5494378符号链接(symboliclink)总数:0(当前正在写入的文件:133)block总数(已验证):55065

hadoop - 使用 spark sql 加载到配置单元后无法看到 hdfs 文件

我正在尝试使用以下查询使用sparksql将文件从hdfs加载到配置单元中。hiveContext.sql("CREATEEXTERNALTABLEIFNOTEXISTSsrc(valueSTRING)")hiveContext.sql("LOADDATAINPATH'/data/spark_test/kv1.txt'INTOTABLEsrc")hiveContext.sql("FROMsrcSELECT*").collect().foreach(println)我发现,在第二条语句即加载文件之后,我在/apps/hive/warehouse/src/中看到该文件,但在/data/中找

hadoop - 在另一个盒子中移动 hadoop 主节点 : how to handle HDFS

我有一个带有一个主节点和一个从节点的小型hadoop集群,由于某种原因,必须将主节点移动到另一台机器上。虽然我可以很容易地重新配置节点,并且我有迁移配置单元元数据和其他内容的策略,但我担心的是HDFS。我是否必须在目标机器上移动hadoop_tmp(我的hdfs所在的位置)的文件?或者集群将通过从服务器复制文件来重建?我害怕登陆不一致的hdfs,什么是最好的? 最佳答案 DistCP将是最好的方法。DistCP 关于hadoop-在另一个盒子中移动hadoop主节点:howtohandl

hadoop - HDFS 中的默认 block 大小不是最小文件大小吗?

HDFS的默认block大小为60MB。那么,这是否意味着HDFS中的文件的最小大小为60MB?即如果我们创建/复制一个大小小于60MB(比如5字节)的文件,那么我的假设是HDFS中的文件的实际大小是1个block,即60MB。但是,当我将一个5字节的文件复制到HDFS时,当我看到文件的大小时(通过ls命令)我仍然看到该文件的大小为5字节。不应该是60MB吗?或者ls命令显示文件中数据的大小而不是HDFS上文件的block大小? 最佳答案 hdfsblock的默认大小并不意味着它将使用我们指定的所有空间,即60MB。如果数据大于60

python - Snakebite HDFS touchz 不工作

我想使用snakebite来检查hdfs目录中是否存在文件,如果不存在则创建。我正在关注touchzhere上的文档并像这样使用它:defcreateFile(client):ifclient.test("/user/test/sample.txt",exists=True):print"fileexists"else:print"filenotexist,createfile"printclient.touchz(["/user/test/sample.txt"])client=Client(remote_host,8020,use_trash=False)createFile(cl