Hadoop composto XDF tamanho do bloco de sugestões de optimização

Tamanho do bloco do composto de Hadoop XDF

MapReduce divide cada ficheiro de texto de entrada num ou mais divisões de entrada que, por predefinição, são o tamanho do bloco HDFS, por exemplo, 128 MB

  • Separar cada entrada é convertido de texto não comprimido, não analisado para uma ficheiro de binário xdfd no subdirectório do directório de saída – informações de cabeçalho para o conjunto de xdfd "dados" está a ser um ficheiro de metadados de xdfm único no directório "metadados" de saída comprimida e analisada

  • Eficiência em análises posteriores, cada ficheiro de xdfd de saída deve corresponde aproximadamente o tamanho do bloco HDFS

  • Para compensar a compressão de XDF, por conseguinte, normalmente, terá de aumentar o tamanho de ficheiro de xdfd de saída, aumentando a entrada de dividir o tamanho utilizando este parâmetro para RxHadoopMR():

    • hadoopSwitches="-Dmapred.min.split.size=1000000000"

    • Para instalações de Hadoop mais recentes com fios, o parâmetro é mapreduce.input.fileinputformat.split.minsize

  • Aumentar a entrada dividir ainda mais o tamanho pode reduzir o número de ficheiros XDF compostos e, por conseguinte, o número do mapa de parallelized de tarefas nas análises posteriores. Isto poderá ser útil se o número de ranhuras de mapa disponíveis ou recipientes for pequeno relativamente ao número de divisões. Por outro lado, quando mapear muitos faixas horárias ou contentores estão disponíveis, divide a entrada mais pequena e mais xdfd poderá resultar na conclusão mais rápida.

  • Exemplo

Importar um CSV de entrada de 670 MB a Sandbox de Hortonworks utilizando o dividir (32MB) de tamanho de entrada predefinido criado 670/32 = 21 xdfd com um desempenho de rxSummary de 185".  Aumentar tamanho de entrada de divisão para 150MB criado xdfd 5 segredo cada cerca de 32MB com um desempenho de rxSummary de 68".

rxSetComputeContext (RxHadoopMR(hadoopSwitches =

        "-Dmapreduce.input.fileinputformat.split.minsize=150000000"))

rxImport (myCSV, myCXdf, substituir = TRUE)

conjunto de # rxSetComputeContext(RxHadoopMR())-o novamente quando concluído

Precisa de mais ajuda?

Aumente os seus conhecimentos
Explore as formações
Seja o primeiro a obter novas funcionalidades
Aderir ao Microsoft insiders

As informações foram úteis?

Obrigado pelos seus comentários!

Obrigado pelo seu feedback! Parece que poderá ser benéfico reencaminhá-lo para um dos nossos agentes de suporte do Office.

×