草庐IT

hadoop - 您可以使用 HDFS 作为主要存储吗?

将数据保存在Hadoop中并使用Spark/Hive等使用它是否可靠?使用HDFS作为主要存储有哪些优势? 最佳答案 HDFS仅与维护文件元数据的名称节点一样可靠。你最好设置NamenodeHA并经常拍摄它们的快照,并将它们从HDFS外部存储。如果所有Namenode都不可用,或者它们的元数据存储已损坏,您将无法读取HDFSdatanode数据,尽管这些文件本身很好,并且高度可用 关于hadoop-您可以使用HDFS作为主要存储吗?,我们在StackOverflow上找到一个类似的问题:

apache-spark - 在 Google dataproc HDFS 与谷歌云存储(谷歌桶)中存储源文件

我想处理~500GB的数据,分布在64个JSON文件中,每个文件包含500万条记录。基本上,Map(Pyspark)在每条300M记录上运行。为了测试我的PySparkmap功能,我设置了一个googleDataproc集群(1master5workers只测试一个JSON文件)。此处的最佳做法是什么?我应该复制主节点中的所有文件(以便在Dataproc中使用Hadoop分布式文件系统)还是将文件保存在我的GCS存储桶中并将文件位置指向我的Pyspark中是否同样有效?我的代码还导入了​​相当多的外部模块,我已将这些模块复制到我的master中,并且在master中导入工作正常。将它复

hadoop - Hadoop 3.2 HDFS 客户端能否用于与 Hadoop 2.x HDFS 节点一起工作?

我正在尝试使用Hadoop3.2客户端构建Java程序。它能与Hadoop2.x集群一起工作吗?或者,它不被支持吗?感谢您分享您的经验。 最佳答案 与Hadoop和大多数Apache许可项目的兼容性仅在次要版本号之间得到保证。因此,您不应期望3.2客户端与2.xHadoop集群一起工作。Cloudera的博客UpgradingyourclustersandworkloadsfromApacheHadoop2toApacheHadoop3SumaShivaprasad撰写的文章还提到了以下内容:CompatibilitywithHad

hadoop - 写入 HDFS : File is overwritten

我正在写入hadoop文件系统。但是每次我追加一些东西时,它都会覆盖数据而不是将其添加到现有数据/文件中。下面提供了执行此操作的代码。针对不同的数据一次又一次地调用此代码。每次打开一个新的SequenceFile.Writer都会出问题吗?每次我将路径设置为newPath("someDir");publicvoidwriteToHDFS(Pathpath,longuniqueId,Stringdata){FileSystemfs=path.getFileSystem(conf);SequenceFile.WriterinputWriter=newSequenceFile.Writer(

hadoop - 在 HDFS 文件的一部分上运行 MR 作业

假设您有一个存储在hdtf中的大文件,其中包含结构化数据。现在的目标是只处理文件中的一部分数据,就像文件中第二列值介于某某之间的所有行一样。是否可以启动MR作业,以便hdfs仅流式传输文件的相关部分,而不是将所有内容流式传输到映射器。原因是我想通过只处理我需要的部分来加快工作速度。可能一种方法是运行MR作业来创建新文件,但我想知道是否可以避免这种情况?请注意,我的目标是将数据保存在HDFS中,我不想从数据库中读取和写入数据。 最佳答案 HDFS将文件存储为block中的一堆字节,没有索引,因此无法只读入文件的一部分(至少在撰写本文时

bash - 如何让 HBase 等到 HDFS 准备好后才开始?

我正在为Hadoop构建一个自动安装脚本,我遇到了HBase无法启动的问题,因为HDFS尚未完全启动和准备就绪。我如何以编程方式(理想情况下来自Bash)判断HDFS系统是否已准备好启动HBase,以便我可以等到它启动?我尝试使用“hadoopdfsadmin-report”并搜索正确数量的节点,但显然在集群真正准备好开展业务之前,它仍会返回。 最佳答案 使用hadoopdfsadmin-safemodewait检查HDFS是否已经退出安全模式。像这样的东西应该可以解决问题:while$HADOOP_HOME/bin/hadoopd

hadoop - HDFS如何删除 block ?

我是Hadoop新手。部署后,我运行了基准测试,$hadoopjarhadoop-0.20.0-test.jarTestDFSIO-write-nrFiles1000-fileSize10。完成工作后,我查看了集群摘要,假设有1000个文件和目录,1000个block=总共2000个。然后我使用shellcmd删除相应的文件。那么ClusterSummary是:0个文件和目录1000个block=总共1000个。我认为删除后ClusterSummary中应该没有文件和block。但实际情况是:在我问这个问题之前是1000个区block。但是现在有0个block。这怎么会发生?

hadoop - 如何通过sqoop从sql server导入表到hdfs

我已经安装了hadoop、hive、sqoop。我将表从我的数据库导入到hdfs但无法将其导入配置单元。我需要在配置单元中配置任何文件吗?另外,当我浏览网页时,会显示MySQL的配置,但我使用的是驱动程序jdbc:sqlserver。任何人都请帮助我,因为我已经坚持了很多天了。 最佳答案 jdbc:mysql用于mysql,它不适用于sqlserver,我已经尝试使用它,但它给出了错误。我已经尝试了以下命令并且效果很好。命令——导入从数据库表复制数据到HDFS文件系统在下面的示例中,我们的数据库和hdfs配置为:服务器名称:-lab

hadoop - 收到警告 ipc.Client : interrupted waiting to send params to server when copying files to HDFS

我写了一个perl脚本,其中调用了copyFromLocal来上传文件。当它运行时,WARNipc.Client:interruptedwaitingtosendparamstoserver发生。我检查了刚刚上传的HDFS上的所有文件。看来都复制成功了。谁知道那个警告是什么意思?完整的警告信息12/10/2311:41:07WARNipc.Client:interruptedwaitingtosendparamstoserverjava.lang.InterruptedExceptionatjava.util.concurrent.locks.AbstractQueuedSynchro

hadoop - 将整个 HDFS 从一个集群转移到另一个集群

我在具有5个节点的测试集群上的HDFS中存储了很多配置单元表。数据应约为70Gb*3(复制)。不,我想将整个设置转移到具有更多节点的不同环境。两个集群之间的网络连接是不可能的。问题是我没有太多时间使用新集群,也没有可能使用其他测试环境测试传输。因此我需要一个可靠的计划。:)我有哪些选择?如何在新集群上以最少的配置工作转移配置单元设置?是否可以只将5个节点的hdfs目录复制到新集群的5个节点,然后将其余节点添加到新集群并启动平衡器? 最佳答案 没有网络连接,这将很棘手!我愿意将文件从HDFS复制到某种可移动存储设备(USB内存棒、外部