O que fará o comando "hadoop namenode-format"

Estou tentando aprender Hadoop seguindo um tutorial e tentando fazer Modo pseudo-distribuído na minha máquina.

o meu core-site.xml é:

<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>

<configuration>
   <property>
      <name>fs.default.name</name>
      <value>hdfs://localhost:9000</value>
      <description>The name of the default file system. A URI whose scheme and authority determine the FileSystem implementation.       
      </description>   
   </property>
</configuration>

o meu ficheiro hdfs-site.xml é:

<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>

<configuration>
   <property>
      <name>dfs.replication</name>
      <value>1</value>
      <description>The actual number of replications can be specified when the
        file is created.
      </description>
   </property>
</configuration>

o meu ficheiro mapred-site.xml é:

<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>

<configuration>
   <property>      
      <name>mapred.job.tracker</name>
      <value>localhost:9001</value>
      <description>The host and port that the MapReduce job tracker runs
        at.
      </description>
   </property>
</configuration>

quando executei o comando correu com sucesso, mas o que está a fazer na verdade:

hadoop-1.2.1$ bin/hadoop namenode -format
14/11/26 12:37:16 INFO namenode.NameNode: STARTUP_MSG: 
/************************************************************
STARTUP_MSG: Starting NameNode
STARTUP_MSG:   host = myhost/127.0.0.8
STARTUP_MSG:   args = [-format]
STARTUP_MSG:   version = 1.2.1
STARTUP_MSG:   build = https://svn.apache.org/repos/asf/hadoop/common/branches/branch-1.2 -r 1503152; compiled by 'mattf' on Mon Jul 22 15:23:09 PDT 2013
STARTUP_MSG:   java = 1.6.0_45
************************************************************/
14/11/26 12:37:17 INFO util.GSet: Computing capacity for map BlocksMap
14/11/26 12:37:17 INFO util.GSet: VM type       = 64-bit
14/11/26 12:37:17 INFO util.GSet: 2.0% max memory = 932118528
14/11/26 12:37:17 INFO util.GSet: capacity      = 2^21 = 2097152 entries
14/11/26 12:37:17 INFO util.GSet: recommended=2097152, actual=2097152
14/11/26 12:37:17 INFO namenode.FSNamesystem: fsOwner=myuser
14/11/26 12:37:17 INFO namenode.FSNamesystem: supergroup=supergroup
14/11/26 12:37:17 INFO namenode.FSNamesystem: isPermissionEnabled=true
14/11/26 12:37:17 INFO namenode.FSNamesystem: dfs.block.invalidate.limit=100
14/11/26 12:37:17 INFO namenode.FSNamesystem: isAccessTokenEnabled=false accessKeyUpdateInterval=0 min(s), accessTokenLifetime=0 min(s)
14/11/26 12:37:17 INFO namenode.FSEditLog: dfs.namenode.edits.toleration.length = 0
14/11/26 12:37:17 INFO namenode.NameNode: Caching file names occuring more than 10 times 
14/11/26 12:37:17 INFO common.Storage: Image file /tmp/hadoop-myuser/dfs/name/current/fsimage of size 115 bytes saved in 0 seconds.
14/11/26 12:37:18 INFO namenode.FSEditLog: closing edit log: position=4, editlog=/tmp/hadoop-myuser/dfs/name/current/edits
14/11/26 12:37:18 INFO namenode.FSEditLog: close success: truncate to 4, editlog=/tmp/hadoop-myuser/dfs/name/current/edits
14/11/26 12:37:18 INFO common.Storage: Storage directory /tmp/hadoop-myuser/dfs/name has been successfully formatted.
14/11/26 12:37:18 INFO namenode.NameNode: SHUTDOWN_MSG: 
/************************************************************
SHUTDOWN_MSG: Shutting down NameNode at chaitanya-OptiPlex-3010/127.0.0.8
************************************************************/
Alguém me pode dizer o que está a fazer internamente?

Já passei por estes posts, mas não há uma explicação correcta.

O que exactamente hadoop namenode está a formatar?

o namenode Hadoop não está a formatar

Como posso verificar isto praticamente na minha máquina para ver as diferenças antes e depois de executar o comando? Sou novo no Hadoop, por isso esta pode ser uma pergunta trivial.

 10
Author: Community, 2014-11-26

5 answers

Hadoop namenode-format

  • A pasta de nomes do Hadoop contém os ficheiros de fax e de edição que contém a informação básica sobre o sistema de ficheiros hadoop, como Onde está dados disponíveis, que usuário criou arquivos como esse

  • Se formatar o nome, então as informações acima são apagadas a partir de diretório de namenode que é especificado no site hdfs.xml como dfs.namenode.name.dir

  • Mas você ainda tem os dados no hadoop, mas não meta-dados do namenode

 6
Author: Rengasamy, 2014-11-26 09:53:00

hadoop namenode -format este comando apaga todos os ficheiros nos seus hdfs.

A pasta Tmp contém duas pastas datanode, namenode no sistema de ficheiros local. se formatar o nome, estas duas pastas ficam vazias.

Nota: Se quiser formatar o seu namenode primeiro, pare todos os Serviços hadoop em seguida, remova a pasta tmp(contém namenode e datanode) no seu sistema de ficheiros local e inicie o serviço hadoop de certeza que fará efeito.

Razão para o formato do namenode Hadoop :

Hadoop NameNode é o lugar centralizado de um sistema de arquivos HDFS que mantém a árvore de diretórios de todos os arquivos no sistema de arquivos, e rastreia onde através do aglomerado os dados do arquivo são mantidos. Em suma, mantém os metadados relacionados com datanodes. Quando formatamos o namenode ele Formata os meta-dados relacionados com os nós de dados. Ao fazer isso, todas as informações sobre os datanodes são perdidos e eles podem ser reutilizados para novos dados.

Por por omissão, a localização do nome será em " / tmp / hadoop-myuser / dfs / nome"

Enquanto formatava o código do nome, esta localização do ficheiro foi limpa.

Para mudar a localização do namenodo {[[11]} adicionar as propriedades de followwing no local hdfs.xml

<property>
    <name>dfs.namenode.name.dir</name>
    <value>file:/search/data/dfs/namenode</value>
</property>
<property>
    <name>dfs.datanode.data.dir</name>
    <value>file:/search/data/dfs/datanode</value>
</property>
Espero que isto te ajude.. :-)
 7
Author: Suresh Ram, 2014-11-26 09:16:33

O Namenode contém meta-dados sobre o sistema de ficheiros Hadoop.

Este comando (hadoop-1.2.1$ bin / hadoop namenode-format) formatará todo o sistema de ficheiros distribuídos do Hadoop(HDFS). Por isso, se executar este comando no sistema de ficheiros existente, irá perder todos os seus dados.

 2
Author: abhijeet dhumal, 2014-11-26 08:24:20

Na verdade a formatação de um Namenode não irá formatar o Datanode.

Ele irá apenas formatar o conteúdo do seu namenode (que contém detalhes de datanode). Seu namenode não vai mais saber onde seus dados estão. Também o formato-código irá atribuir um novo ID de espaço de nomes ao namenode

Você tem que mudar o seu namespaceID no seu datanode para fazer o seu datanode funcionar. Esta será em dfs / data / current / VERSION

Existe agora um JIRA open para o mesmo que sugere formatar Datanode também quando Formata Namenode. HDFS-107

 2
Author: Kumar, 2017-05-03 04:16:08

Passos Iniciar Todos os serviços com "start-all.sh"

Verifique se os serviços estão a funcionar ou não a utilizar "JPS" Nota: Se você usar hadoop2.3.0 então os seguintes serviços são necessários para executar

Namenode
Datanode
Resourcemanager
Nodemanager

Mover algum ficheiro do local para o HDFS usando o hdfs-put /

Verifique agora a localização "/tmp/hadoop-myuser/dfs / name" poderá encontrar este ficheiro dividido em alguns blocos conatain 64 MB cada.

Depois começa a formatação com **hadoop namenode -format** Agora o arquivo não está disponível fisicamente sobre isso localização

Mais informações clique aqui

 0
Author: ǨÅVËĔŊ RĀǞĴĄŅ, 2017-05-23 11:47:08