Media6degrees surgiu com uma boa solução para combinar pequenos arquivos no Hadoop. Você pode usar o jarro para fora. link
Estou executando o Hadoop em um projeto e preciso de uma sugestão.
Geralmente, por padrão, o Hadoop tem um "tamanho de bloco" de cerca de 64 mb. Há também uma sugestão para não usar muitos arquivos / pequenos ..
Atualmente, estou tendo arquivos muito muito pequenos sendo colocados no HDFS devido ao design do aplicativo do canal ..
O problema é que o Hadoop < = 0.20 não pode ser anexado aos arquivos, pelo que eu tenho muitos arquivos para reduzir meu mapa para funcionar de forma eficiente.
Deve haver uma maneira correta de simplesmente rolar / mesclar aproximadamente 100 arquivos em um. Portanto, o Hadoop está efetivamente lendo um arquivo grande em vez de 10
Alguma sugestão ??
Media6degrees surgiu com uma boa solução para combinar pequenos arquivos no Hadoop. Você pode usar o jarro para fora. link
Você já pensou em usar o Hadoop Archives? Pense neles como arquivos tar para o HDFS. link
O que você precisa fazer é escrever um programa concatenador trivial com um mapeador de identidades e um ou apenas alguns redutores de identidade. Este programa permitirá que você concatene seus pequenos arquivos em alguns arquivos grandes para facilitar a carga no Hadoop.
Isso pode ser uma tarefa bastante para agendar e desperdiça espaço, mas é necessário devido ao design do HDFS. Se o HDFS fosse um sistema de arquivos de primeira classe, isso seria muito mais fácil de lidar.
Tags hadoop linux apache-2.2 mapreduce