我在四个节点上设置了hadoop。一个节点用于Namenode和辅助NameNode。其他三个是datanodes。我运行了一个sqoop作业,复制因子为3. sqoop作业成功,数据在所有三个数据节点上。用6个映射器完成工作大约需要1.5小时。我以复制因子1运行相同的工作。这个工作也很成功,它用12个映射器运行了大约1个小时。
我的问题是:
1. when i ran the job for second time with replication factor of 1 where is the data stored? (Is the data split and stored in all the three datanodes? (or) The data is stored on the machine from which i ran the job? )
2. I have 6 core processors on each datanode with 64 GB of ram. Which are the properties should i set to obtain optimum values for the sqoop job?
这是第一份工作的日志:
15/06/30 00:21:28 INFO mapreduce.Job: Counters: 30
File System Counters
FILE: Number of bytes read=0
FILE: Number of bytes written=749046
FILE: Number of read operations=0
FILE: Number of large read operations=0
FILE: Number of write operations=0
HDFS: Number of bytes read=864
HDFS: Number of bytes written=253986997858
HDFS: Number of read operations=24
HDFS: Number of large read operations=0
HDFS: Number of write operations=12
Job Counters
Launched map tasks=6
Other local map tasks=6
Total time spent by all maps in occupied slots (ms)=20582400
Total time spent by all reduces in occupied slots (ms)=0
Total time spent by all map tasks (ms)=20582400
Total vcore-seconds taken by all map tasks=20582400
Total megabyte-seconds taken by all map tasks=73767321600
Map-Reduce Framework
Map input records=162991238
Map output records=162991238
Input split bytes=864
Spilled Records=0
Failed Shuffles=0
Merged Map outputs=0
GC time elapsed (ms)=187671
CPU time spent (ms)=21216950
Physical memory (bytes) snapshot=5210345472
Virtual memory (bytes) snapshot=57549950976
Total committed heap usage (bytes)=6410469376
File Input Format Counters
Bytes Read=0
File Output Format Counters
Bytes Written=253986997858
15/06/30 00:21:28 INFO mapreduce.ImportJobBase: Transferred 236.5438 GB in 5,524.6156 seconds (43.8439 MB/sec)
15/06/30 00:21:28 INFO mapreduce.ImportJobBase: Retrieved 162991238 records.
这是第二份工作的日志:
15/06/30 10:21:02 INFO mapreduce.Job: Counters: 30
File System Counters
FILE: Number of bytes read=0
FILE: Number of bytes written=1498130
FILE: Number of read operations=0
FILE: Number of large read operations=0
FILE: Number of write operations=0
HDFS: Number of bytes read=1744
HDFS: Number of bytes written=253986997858
HDFS: Number of read operations=48
HDFS: Number of large read operations=0
HDFS: Number of write operations=24
Job Counters
Launched map tasks=12
Other local map tasks=12
Total time spent by all maps in occupied slots (ms)=22551454
Total time spent by all reduces in occupied slots (ms)=0
Total time spent by all map tasks (ms)=22551454
Total vcore-seconds taken by all map tasks=22551454
Total megabyte-seconds taken by all map tasks=80824411136
Map-Reduce Framework
Map input records=162991238
Map output records=162991238
Input split bytes=1744
Spilled Records=0
Failed Shuffles=0
Merged Map outputs=0
GC time elapsed (ms)=186898
CPU time spent (ms)=21910100
Physical memory (bytes) snapshot=9802846208
Virtual memory (bytes) snapshot=115099107328
Total committed heap usage (bytes)=12298747904
File Input Format Counters
Bytes Read=0
File Output Format Counters
Bytes Written=253986997858
15/06/30 10:21:02 INFO mapreduce.ImportJobBase: Transferred 236.5438 GB in 3,647.7444 seconds (66.4029 MB/sec)
15/06/30 10:21:02 INFO mapreduce.ImportJobBase: Retrieved 162991238 records.
答案 0 :(得分:1)
以下是我对这两个问题的回答。 1.当您使用复制因子1运行时,HDFS中的数据块副本为1,但数据将在所有三个节点上分发。数据块自动分布在集群中,这就是原因。
希望这能澄清你的怀疑。