草庐IT

hadoop - 如何读取 Spark 中的多行元素?

当您使用sc.textfile在Spark中读取文件时,它会为您提供元素,其中每个元素都是单独的一行。但是,我希望每个元素都包含N行。我也不能使用定界符,因为该文件中没有定界符。那么,如何让spark为我提供多行元素?我对使用NLineInputFormat类这样做很感兴趣。在Spark中可以这样做吗?我可以看到MapReduce的例子,但我不知道这将如何转化为Spark。 最佳答案 是的,如果您从hadoop获取文件。你应该可以这样做:valrecords=sc.newAPIHadoopRDD(hadoopConf,classOf

hadoop - Spark 工作负载是否需要 HDFS?

HDFS不是必需的,但建议出现在某些地方。为了帮助评估让HDFS运行所花费的努力:将HDFS用于Spark工作负载有哪些好处? 最佳答案 Spark是分布式处理引擎,HDFS是分布式存储系统。如果HDFS不是一个选项,那么Spark必须使用ApacheCassandra或AmazonS3形式的其他替代方案。看看这个comparisionS3–非紧急批处理作业。当数据局部性不重要时,S3适合非常具体的用例。Cassandra–非常适合流数据分析和批处理作业。HDFS–非常适合批处理作业,不会影响数据局部性。什么时候使用HDFS作为Sp

hadoop - 如何查看namenode状态?

作为开发人员,我如何检查给定Namenode的当前状态,如果它是事件的还是备用的?我已经尝试过getServiceState命令,但它仅适用于具有super用户访问权限的管理员。任何可以从边缘节点运行的命令来获取提供的namemnode的状态?? 最佳答案 最后,我得到了这个问题的答案。作为开发人员,由于限制,无法执行dfsadmin命令。为了检查名称节点的可用性,我在shellscript中使用了下面的if循环,它起到了作用。它不会准确地告诉您名称节点处于事件状态,但通过循环,您可以轻松地相应地执行所需的程序。ifhdfsdfs-

hadoop - 在 HDFS 中遇到大量文件时,实际理想的 NameNode 内存大小是多少

我的HDFS集群中将有2亿个文件,我们知道每个文件将在NameNode内存中占用150个字节,加上3个block,因此在NN中总共有600个字节。所以我将我的NN内存设置为250GB以很好地处理2亿个文件。我的问题是250GB这么大的内存,会不会对GC造成太大的压力?为NN创建250GB内存是否可行。Cansomeonejustsaysomething,whynobodyanswer?? 最佳答案 理想的名称节点内存大小约为数据元使用的总空间+操作系统+守护进程的大小以及处理相关数据的20-30%空间。您还应该考虑数据进入集群的速率

hadoop - 如何使用oozie检查文件是否存在于HDFS位置?

如何使用Oozie检查HDFS位置的文件是否存在?在我的HDFS位置,我会在每天晚上11点得到一个像这样的文件test_08_01_2016.csv。我想在晚上11点15分之后检查这个文件是否存在。我可以使用Oozie协调器作业安排批处理。但是我如何验证该文件是否存在于HDFS中? 最佳答案 您可以在oozie中使用EL表达式,例如:${fs:exists('/path/test_08_01_2016.csv')}您还可以使用简单的shell脚本使用捕获输出来构建文件的名称。 关于had

hadoop - 本地主机 : ERROR: Cannot set priority of datanode process 32156

我正在尝试在ubuntu16.04上安装hadoop但是在启动hadoop时它会给我以下错误localhost:ERROR:Cannotsetpriorityofdatanodeprocess32156.Startingsecondarynamenodes[it-OptiPlex-3020]2017-09-1821:13:48,343WARNutil.NativeCodeLoader:Unabletoloadnative-hadooplibraryforyourplatform...usingbuiltin-javaclasseswhereapplicableStartingresou

hadoop - hive 如何处理插入内部分区表?

我需要将记录流插入到Hive分区表中。表结构是这样的CREATETABLEstore_transation(item_namestring,item_countint,bill_numberint,)PARTITIONEDBY(yyyy_mm_ddstring);我想了解Hive如何处理内部表中的插入。是否所有记录都插入到单个文件中yyyy_mm_dd=2018_08_31目录?或者Hive在一个分区内拆分为多个文件,如果是什么时候?如果每天有100万条记录并且查询模式将在日期范围之间,那么以下哪一个表现良好?内表没有分区按日期划分,每个日期只有一个文件按日期划分,每个日期有多个文件

java - Jobtracker API 错误 - 调用 localhost/127.0.0.1 :50030 failed on local exception: java. io.EOFException

我正在尝试使用Java连接我的jobtracker。下面显示的是我正在尝试执行的程序publicstaticvoidmain(Stringargs[])throwsIOException{Configurationconf=newConfiguration();conf.addResource(newPath("/home/user/hadoop-1.0.3/conf/core-site.xml"));conf.addResource(newPath("/home/user/hadoop-1.0.3/conf/hdfs-site.xml"));conf.addResource(newP

java - HADOOP HTTPFS : giving error "User: ubuntu is not allowed to impersonate ubuntu" while accessing the application through Http

我在我的集​​群上安装了hadoop1.0.4,有1个主机和3个从机,现在我正在安装HTTPFS(hadoop-hdfs-httpfs-0.20.2-cdh3u5-SNAPSHOT)以使用http协议(protocol)访问HDFS内容,我可以通过它访问正常的页面curl-i"http://myhost:14000"它工作正常:)但是如果我尝试访问HDFS然后它给我错误(ubantu是我的用户):(curl-i"http://myhost:14000/webhdfs/v1?user.name=ubantu&op=OPEN"错误:{"RemoteException":{"message"

bash - 如果目录不存在,使用 bash 在 HDFS 中创建目录

我想测试一个目录是否存在于Hadoop分布式文件系统(HDFS)中。如果目录不存在,我想创建该目录,否则不执行任何操作。当我修改http://jugnu-life.blogspot.com/2012/10/hadoop-fs-test-example.html处的代码时:#!/bin/bashdirectory=/raw/tool/ifhadoopfs-test–d$directory;thenecho"Directoryexists"elsehadoopfs-mkdir$directoryecho"Creatingdirectory"fi我得到错误:-test:Toomanyargu