Lar Finanças Pessoais Comprimindo dados em Hadoop - dummies

Comprimindo dados em Hadoop - dummies

Vídeo: Terças de Dados #43 - Conhecendo o Azure SQL Database Failover Groups 2024

Vídeo: Terças de Dados #43 - Conhecendo o Azure SQL Database Failover Groups 2024
Anonim

Os enormes volumes de dados que são realidades em uma implantação Hadoop típica tornam a compressão uma necessidade. A compressão de dados definitivamente lhe poupa uma grande quantidade de espaço de armazenamento e é certo acelerar o movimento desses dados em todo o cluster. Não surpreendentemente, uma série de esquemas de compressão disponíveis, chamados de codecs, estão lá para você considerar.

Em uma implantação Hadoop, você está lidando (potencialmente) com um grande número de nós escravos individuais, cada um dos quais possui várias unidades de disco grandes. Não é incomum que um nó escravo individual tenha mais de 45 TB de espaço de armazenamento bruto disponível para HDFS.

Mesmo que os nós escravos Hadoop são projetados para serem baratos, não são gratuitos e com grandes volumes de dados que tendem a crescer a taxas crescentes, a compressão é uma ferramenta óbvia para controlar o extremo volumes de dados.

Em primeiro lugar, alguns termos básicos: um codec , , que é uma forma abreviada de co mpressor / dec ompressor, é tecnologia (software ou hardware, ou ambos) para comprimir e descomprimir dados; É a implementação de um algoritmo de compressão / descompressão.

Você precisa saber que alguns codecs suportam algo chamado de compressão dividível e que os codecs diferem tanto na velocidade com que eles podem comprimir e descomprimir dados quanto no grau em que eles podem comprimi-lo.

Compressão dividível é um conceito importante em um contexto Hadoop. A maneira como o Hadoop funciona é que os arquivos são divididos se forem maiores que a configuração do tamanho do bloco do arquivo, e as separações de arquivos individuais podem ser processadas em paralelo por mapeadores diferentes.

Com a maioria dos códecs, as divisões de arquivos de texto não podem ser descompactadas independentemente de outras divisões do mesmo arquivo, de modo que os codecs não sejam dividíveis, de modo que o processamento MapReduce é limitado a um único mapeador.

Como o arquivo pode ser descompactado somente como um todo, e não como partes individuais com base em divisões, não pode haver processamento paralelo desse arquivo, e o desempenho pode ter um grande sucesso como um trabalho aguarda um único mapeador para processe vários blocos de dados que não podem ser descomprimidos de forma independente.

A compressão dividível é apenas um fator para arquivos de texto. Para arquivos binários, os codecs de compressão Hadoop comprimem dados dentro de um contêiner codificado em binário, dependendo do tipo de arquivo (por exemplo, um SequenceFile, Avro ou ProtocolBuffer).

Falando de desempenho, há um custo (em termos de recursos e tempo de processamento) associado à compressão dos dados que estão sendo gravados em seu cluster Hadoop.

Com os computadores, como com a vida, nada é gratuito. Ao comprimir dados, você está trocando ciclos de processamento por espaço em disco. E quando esses dados estão sendo lidos, há um custo associado à descompressão dos dados também. Certifique-se de pesar as vantagens das economias de armazenamento contra a sobrecarga de desempenho adicional.

Se o arquivo de entrada para um trabalho MapReduce contiver dados compactados, o tempo necessário para ler esses dados do HDFS é reduzido e o desempenho do trabalho é aprimorado. Os dados de entrada são descomprimidos automaticamente quando está sendo lido pelo MapReduce.

A extensão do nome do arquivo de entrada determina qual codec suportado é usado para descomprimir automaticamente os dados. Por exemplo, a. A extensão gz identifica o arquivo como um arquivo comprimido com gzip.

Também pode ser útil para comprimir a saída intermediária da fase do mapa no fluxo de processamento MapReduce. Como a saída da função do mapa é gravada no disco e enviada através da rede para reduzir as tarefas, a compressão da saída pode resultar em melhorias de desempenho significativas.

E se você deseja armazenar a saída MapReduce como arquivos de histórico para uso futuro, a compressão desses dados pode reduzir significativamente a quantidade de espaço necessário no HDFS.

Existem muitos algoritmos e ferramentas de compressão diferentes, e suas características e pontos fortes variam. O trade-off mais comum é entre as proporções de compressão (o grau em que um arquivo é compactado) e as velocidades de compressão / descompressão. O framework Hadoop oferece suporte a vários codecs. A estrutura comprime e descompacta transparentemente a maioria dos formatos de arquivos de entrada e saída.

A lista a seguir identifica alguns codecs comuns que são suportados pelo framework Hadoop. Certifique-se de escolher o codec que mais corresponda às demandas de seu caso de uso específico (por exemplo, com cargas de trabalho onde a velocidade de processamento é importante, escolha um codec com altas velocidades de descompressão):

  • Compressão Gzip: A utilitário que foi adotado pelo projeto GNU, o Gzip (abreviação de zip GNU) gera arquivos compactados que possuem um. extensão GZ. Você pode usar o comando gunzip para descompactar arquivos que foram criados por uma série de utilitários de compressão, incluindo o Gzip.

  • Bzip2: Do ponto de vista da usabilidade, Bzip2 e Gzip são semelhantes. O Bzip2 gera uma melhor taxa de compressão do que o Gzip, mas é muito mais lento. Na verdade, de todos os codecs de compressão disponíveis no Hadoop, o Bzip2 é de longe o mais lento.

    Se você estiver configurando um arquivo que você raramente precisará consultar e o espaço está em um prémio alto, então, talvez o Bzip2 valesse a pena considerar.

  • Snappy: O codec Snappy do Google oferece taxas de compressão modestas, mas velocidades de compressão e descompressão rápidas. (De fato, tem as velocidades de descompressão mais rápidas, o que torna altamente desejável para conjuntos de dados que provavelmente serão consultados com freqüência.)

    O codec Snappy está integrado no Hadoop Common, um conjunto de utilitários comuns que suporta outros subprojetos Hadoop. Você pode usar Snappy como um complemento para versões mais recentes do Hadoop que ainda não fornecem suporte a codec Snappy.

  • LZO: Semelhante a Snappy, LZO (abreviação de Lempel-Ziv-Oberhumer, o trio de cientistas da informática que surgiu com o algoritmo) fornece taxas de compressão modestas, mas velocidades de compressão e descompressão rápidas. O LZO é licenciado sob a GNU Public License (GPL).

    O LZO suporta compressão dividível, o que permite o processamento paralelo de divisões de arquivos de texto comprimido por seus trabalhos MapReduce. O LZO precisa criar um índice quando comprime um arquivo, porque com blocos de compressão de comprimento variável, é necessário um índice para indicar ao mapeador onde ele pode dividir com segurança o arquivo compactado. LZO só é realmente desejável se você precisa compactar arquivos de texto.

Hadoop Codecs

Codec Extensão de arquivo Splittable? Grau de Compressão Velocidade de Compressão
Gzip . gz Não Médio Médio
Bzip2 . bz2 Sim Alto Lento
Snappy . Snappy Não Médio Rápido
LZO . lzo Não, a menos que seja indexado Médio Rápido

Todos os algoritmos de compressão devem fazer compensações entre o grau de compressão e a velocidade de compressão que podem alcançar. Os codecs que estão listados fornecem um controle sobre o que o equilíbrio entre a taxa de compressão e a velocidade deve ser no tempo de compressão.

Por exemplo, o Gzip permite regular a velocidade de compressão especificando um inteiro (ou palavra-chave) negativa, onde -1 indica o nível de compressão mais rápido e -9 indica o nível de compressão mais lento. O nível de compressão padrão é -6.

Comprimindo dados em Hadoop - dummies

Escolha dos editores

ASVAB Paragraph Comprehension Practice - dummies

ASVAB Paragraph Comprehension Practice - dummies

Um dos subtestes que você verá no ASVAB é o teste de compreensão de parágrafos. Esta parte do ASVAB está voltada para ver se você entende o que você lê. Exemplo de perguntas Parágrafo Tempo de compreensão: 13 minutos para 15 perguntas Instruções: A compreensão de parágrafo é o quarto subtesto no ASVAB. As perguntas são projetadas para ...

ASVAB Preparação: Números positivos e negativos - manequins

ASVAB Preparação: Números positivos e negativos - manequins

Certifique-se de que esteja familiarizado com o trabalho positivo e negativo números para o ASVAB. Os números podem ser positivos ou negativos. Um número positivo é qualquer número maior que zero. Então, 4; 3. 2; 793; 3/4; 1/2; e 430, 932, 843, 784 são todos números positivos. Números inferiores a zero são números negativos. Cada número positivo tem um negativo ...

ASVAB Dicas de compreensão de leitura - manequins

ASVAB Dicas de compreensão de leitura - manequins

As abordagens de compreensão de parágrafo no ASVAB geralmente são bastante curtas. Essas dicas podem ajudá-lo a compreender melhor as passagens de leitura ASVAB e as perguntas que as seguem: Compreenda o que a questão quer de você. Solicita o ponto principal, informações específicas ou uma conclusão baseada na informação apresentada? Releia o parágrafo ...

Escolha dos editores

A diferença entre análises analógicas e digitais - manequins

A diferença entre análises analógicas e digitais - manequins

Toda a eletrônica pode ser dividida em duas grandes categorias: analógico e digital. Um dos exemplos mais comuns da diferença entre dispositivos analógicos e digitais é um relógio. No relógio analógico, o tempo é representado por mãos que giram ao redor de um disco e apontam para uma localização no mostrador que representa ...

O papel dos átomos na eletrônica - dummies

O papel dos átomos na eletrônica - dummies

Os átomos são os blocos de construção básicos de tudo no universo, seja natural ou manmade. Eles são tão pequenos que você encontraria milhões deles em uma única partícula de poeira. A corrente elétrica, às vezes conhecida como eletricidade, é o movimento na mesma direção de partículas microscópicamente pequenas e eletricamente carregadas, chamadas elétrons. Cada átomo contém o ...

Roles de prótons e elétrons - dummies

Roles de prótons e elétrons - dummies

É Uma propriedade de certas partículas, como elétrons, prótons , e quarks (sim, quarks) que descreve como eles interagem uns com os outros. Existem dois tipos diferentes de carga elétrica, um pouco arbitrariamente chamada positiva e negativa (bem como as quatro direções cardinais são chamadas norte, sul, leste e oeste). Em geral, partículas que carregam ...

Escolha dos editores

Acesso 2007 All-In-One For Dummies Cheat Sheet - dummies

Acesso 2007 All-In-One For Dummies Cheat Sheet - dummies

Trabalhando no Access 2007 é mais fácil uma vez que você entenda executar a janela do Access 2007 e usar ferramentas para ajudar a gerenciar seus dados e responder suas perguntas.

Arrumando suas mensagens com o Lotus Notes 6 - manequins

Arrumando suas mensagens com o Lotus Notes 6 - manequins

Antes de enviar uma mensagem de e-mail no Lotus Notes 6, você pode definir Opções de entrega, Opções de segurança e Selos de humor. Use essas dicas de notas para informar o destinatário sobre o quão quente é sua mensagem ou qual é o seu humor; ou solicitar confirmação de entrega, definir o tempo de entrega e muito mais. Depois de terminar de compor o corpo ...

10 Ofícios de teclado do Office 2016 - dummies

10 Ofícios de teclado do Office 2016 - dummies

Um tema comum do Office 2016 é que todos os programas se parecem e funcionam. Depois de aprender a usar o Word, você achará que não é muito mais difícil aprender o Excel ou o PowerPoint porque as guias do Ribbon funcionam de maneiras semelhantes. Ainda melhor, os mesmos comandos de teclas funcionam de forma semelhante em todos os programas do Office 2016. Por ...