草庐IT

hadoop - Hadoop 2.x 中的默认 block 大小

Hadoop2.x中的默认block大小为128MB。64MB有什么问题? 最佳答案 block大小增加有一些原因。如果您正在管理peta字节数据的大型Hadoop集群,它会提高性能。如果您正在管理一个1peta字节的集群,64MBblock大小会导致15+百万block,这对于有效管理的Namenode。有很多block也会导致在MapReduce执行期间有很多映射器。根据你的数据需求,你可以微调dfs.blocksize通过正确设置block大小(64MB或128Mb或256MB或512MB),您可以实现改进Namenode性能

hadoop - hadoop.tmp.dir 到底应该设置在哪里? core-site.xml 还是 hdfs-site.xml?

我问的是Hadoop2.x系列。互联网上对此有相互矛盾的建议。喜欢这个case他要求在core-site.xml和这个SOanswer中指定它其中提到hadoop.tmp.dir设置在hdfs-site.xml中。应该放在哪个位置? 最佳答案 hadoop.tmp.dir(Abaseforothertemporarydirectories)属性,需要在core-site.xml中设置,就像exportinLinux例如:dfs.namenode.name.dirfile://${hadoop.tmp.dir}/dfs/name您可以

hadoop - 不使用 Pig 脚本从 HDFS 加载 HBase 中的数据

我在HDFS中有.csv文件。我想在不使用Pig脚本的情况下将它们加载到HBASE表中。还有其他方法吗? 最佳答案 可能有几种方法。但有些选项如下所示。选项1:简单的方法是ImportTsvImportTsv是一个将TSV格式的数据加载到HBase的实用程序。它有两种不同的用法:通过Puts将数据从HDFS中的TSV格式加载到HBase,以及通过completebulkload准备要加载的StoreFiles。通过Put加载数据(即非批量加载):$bin/hbaseorg.apache.hadoop.hbase.mapreduce.

hadoop - hadoop安装路径是否应该跨节点相同

Hadoop2.7安装在master的/opt/pro/hadoop/hadoop-2.7.3,然后整个安装被复制到slave,但是不同的目录/opt/pro/hadoop-2.7.3。然后,我在从机上更新环境变量(例如,HADOOP_HOME、namenode和datanode的hdfs_site.xml)。现在我可以在slave上成功运行hadoopversion了。但是,在master中,start-dfs.sh失败并显示消息:17/02/1810:24:32WARNutil.NativeCodeLoader:Unabletoloadnative-hadooplibraryfor

Hadoop: `hdfs getconf -confKey [key]` 有哪些关键参数可用?

在不熟悉的集群上工作时,我发现深入研究和检查一些基本配置参数很有用(例如hdfsgetconf-confKeyfs.blocksize、hdfsgetconf-confKeyfs.defaultFs)。还有哪些可用的key参数?我正在寻找最全面的key参数文档,可通过检查hdfsgetconf-confKey[key].我知道某些key集将特定于您的集群(例如,您是否可以使用Yarn以及是否有可用的yarn.resourcemanager.address)。 最佳答案 所有的属性名都可以作为键。对于属性名称列表,您可以引用*-def

mysql - 从 MySQL 中选择表名作为文件到 HDFS

在MySQL数据库中,我有100个表。一些表名的结尾类似如下123_testing124_testing125_testing_10andsoon现在我想选择以_testing结尾的表并将结果作为hdfs中的文件。我想将表名作为文件发送到HDFS。我们该怎么做。我可以使用sqooplist-tables但它会给我所有表和本地机器上的结果。我们不能为此指定--target-dir选项。 最佳答案 list-tables不接受--target-dir参数。表名在MySQL的information_schema数据库中可用。此查询将获取d

hadoop - 如何在将数据从 Hadoop 传输到 Google Cloud Storage 时加快 distcp

谷歌云提供了与Hadoop一起工作的连接器。(https://cloud.google.com/hadoop/google-cloud-storage-connector)使用连接器,我从hdfs接收数据到谷歌云存储例)hadoopdiscphdfs://${path}gs://${path}但是数据太大(16TB),接收速度只有2mb/s因此,我尝试更改设置distcp(map属性、带宽属性...)但是速度是一样的。如何在将数据从HDFS传输到GoogleCloudStorage时加快distcp 最佳答案 officialdoc

hadoop - hadoop集群中的各种端口?

我试图了解Hadoop集群中各种守护进程/进程监听的各种端口。核心站点.xmlfs.defaultFShdfs://master.hadoop.cluster:54310yarn-site.xmlyarn.resourcemanager.addressmaster.hadoop.cluster:8032我看到我们还有其他三个端口,它们是:1)50070-->查看hdfsGUI2)8088-->查看RMGUI3)8042-->不确定我们可以在这个端口看到哪个GUI由于有这么多端口,我不清楚哪个端口用于哪个东西。如果我向端口发出HTTP请求,比如在8032,它说这是HadoopIPC端口。

file - 如何检查 HDFS 文件是否包含二进制数据?

是否有任何工具或实用程序可以检查HDFS文件是textfile还是二进制文件,如avro、ORC等?我无法回复文件扩展名。我不想知道确切的类型。我只需要知道数据是否可读。 最佳答案 让我们bash它hdfsdfs-cat/file/on/hdfs|head-15>tmp;file-itmp;rmtmp对于像parquet等不可读的文件,你会得到这个:tmp:application/octet-stream;charset=binary 关于file-如何检查HDFS文件是否包含二进制数据

scala - 从 HDFS 读取文件并将内容分配给字符串

在Scala中,如何读取HDFS中的文件并将内容分配给变量。我知道如何读取文件并且能够打印它。但是如果我尝试将内容分配给一个字符串,它将输出作为Unit()。以下是我尝试过的代码。valdfs=org.apache.hadoop.fs.FileSystem.get(config);valsnapshot_file="/path/to/file/test.txt"valstream=dfs.open(newPath(snapshot_file))defreadLines=Stream.cons(stream.readLine,Stream.continually(stream.readL