Applies ToRevolution Analytics

Tamanho do bloco do composto de Hadoop XDFMapReduce 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?

Quer mais opções?

Explore os benefícios da subscrição, navegue em cursos de formação, saiba como proteger o seu dispositivo e muito mais.

As comunidades ajudam-no a colocar e a responder perguntas, a dar feedback e a ouvir especialistas com conhecimentos abrangentes.