Índice:
- O Big Data é não estruturado ou semiestruturado
- Não há sentido em armazenar Big Data se não pudermos processá-lo
- Como o Hadoop resolve o problema de big data
- O caso de negócios do Hadoop
Big data é … bem … grande em tamanho! A quantidade exata de dados que podem ser classificados como big data não é muito clara, portanto, não vamos nos atolar nesse debate. Para uma pequena empresa que está acostumada a lidar com dados em gigabytes, 10 TB de dados seriam GRANDES. No entanto, para empresas como o Facebook e o Yahoo, os petabytes são grandes.
Apenas o tamanho do big data, torna impossível (ou pelo menos proibitivo) armazená-lo no armazenamento tradicional, como bancos de dados ou arquivadores convencionais. Estamos falando de custo para armazenar gigabytes de dados. O uso de arquivadores de armazenamento tradicionais pode custar muito dinheiro para armazenar grandes dados.
Aqui, veremos o big data, seus desafios e como o Hadoop pode ajudar a resolvê-los. Primeiro, os maiores desafios do big data.
O Big Data é não estruturado ou semiestruturado
Muitos dados grandes não são estruturados. Por exemplo, os dados do log de fluxo de cliques podem ter a seguinte aparência:
carimbo de data / hora, user_id, página, referrer_page
A falta de estrutura torna os bancos de dados relacionais não adequados para armazenar grandes dados. Além disso, poucos bancos de dados podem lidar com o armazenamento de bilhões de linhas de dados.
Não há sentido em armazenar Big Data se não pudermos processá-lo
Armazenar big data faz parte do jogo. Temos que processá-lo para extrair inteligência dele. Os sistemas de armazenamento tradicionais são bastante "burros" no sentido de que apenas armazenam bits. Eles não oferecem nenhum poder de processamento.
O modelo tradicional de processamento de dados possui dados armazenados em um cluster de armazenamento, que são copiados para um cluster de computação para processamento. Os resultados são gravados de volta no cluster de armazenamento.
Esse modelo, no entanto, não funciona muito bem para big data porque copiar muitos dados para um cluster de computação pode consumir muito tempo ou ser impossível. Então, qual é a resposta?
Uma solução é processar big data no local, como em um cluster de armazenamento que também funciona como um cluster de computação.
Portanto, como vimos acima, o big data desafia o armazenamento tradicional. Então, como lidamos com big data?
Como o Hadoop resolve o problema de big data
O Hadoop foi desenvolvido para ser executado em um cluster de máquinasVamos começar com um exemplo. Digamos que precisamos armazenar muitas fotos. Vamos começar com um único disco. Quando excedemos um único disco, podemos usar alguns discos empilhados em uma máquina. Quando atingimos o máximo de todos os discos em uma única máquina, precisamos obter um monte de máquinas, cada uma com vários discos.
É exatamente assim que o Hadoop é construído. O Hadoop foi projetado para ser executado em um cluster de máquinas desde o início.
Os clusters do Hadoop são dimensionados horizontalmente
É possível obter mais capacidade de armazenamento e computação adicionando mais nós a um cluster Hadoop. Isso elimina a necessidade de comprar hardware cada vez mais poderoso e caro.
O Hadoop pode manipular dados não estruturados / semiestruturados
O Hadoop não impõe um esquema nos dados que ele armazena. Ele pode lidar com texto arbitrário e dados binários. Portanto, o Hadoop pode digerir qualquer dado não estruturado facilmente.
Os clusters Hadoop fornecem armazenamento e computação
Vimos como ter clusters de armazenamento e processamento separados não é o melhor ajuste para big data. Os clusters do Hadoop, no entanto, fornecem armazenamento e computação distribuída, tudo em um.
O caso de negócios do Hadoop
O Hadoop fornece armazenamento para big data a um custo razoávelArmazenar big data usando o armazenamento tradicional pode ser caro. O Hadoop é desenvolvido com base em hardware comum, para que ele possa fornecer armazenamento bastante grande por um custo razoável. O Hadoop tem sido usado em campo na escala de petabytes.
Um estudo de Cloudera sugeriu que as empresas geralmente gastam entre US $ 25.000 e US $ 50.000 por terabyte por ano. Com o Hadoop, esse custo cai para alguns milhares de dólares por terabyte por ano. À medida que o hardware fica cada vez mais barato, esse custo continua a cair.
O Hadoop permite a captura de novos ou mais dados
Às vezes, as organizações não capturam um tipo de dados, porque era muito proibitivo para armazená-lo. Como o Hadoop fornece armazenamento a um custo razoável, esse tipo de dados pode ser capturado e armazenado.
Um exemplo seria logs de cliques no site. Como o volume desses logs pode ser muito alto, poucas organizações os capturaram. Agora, com o Hadoop, é possível capturar e armazenar os logs.
Com o Hadoop, você pode armazenar dados por mais tempo
Para gerenciar o volume de dados armazenados, as empresas limpam periodicamente os dados mais antigos. Por exemplo, somente os logs dos últimos três meses podem ser armazenados, enquanto os logs mais antigos foram excluídos. Com o Hadoop, é possível armazenar os dados históricos por mais tempo. Isso permite que novas análises sejam feitas em dados históricos mais antigos.
Por exemplo, pegue os logs de cliques de um site. Alguns anos atrás, esses logs foram armazenados por um breve período de tempo para calcular estatísticas como páginas populares. Agora, com o Hadoop, é viável armazenar esses logs de cliques por um período mais longo.
O Hadoop fornece análises escalonáveis
Não faz sentido armazenar todos esses dados se não pudermos analisá-los. O Hadoop não apenas fornece armazenamento distribuído, mas também processamento distribuído, o que significa que podemos processar um grande volume de dados em paralelo. A estrutura de computação do Hadoop é chamada MapReduce. O MapReduce foi comprovado na escala de petabytes.
O Hadoop fornece análises avançadas
O MapReduce nativo suporta Java como uma linguagem de programação primária. Outras linguagens como Ruby, Python e R também podem ser usadas.
Obviamente, escrever código MapReduce personalizado não é a única maneira de analisar dados no Hadoop. Redução de mapa de nível superior está disponível. Por exemplo, uma ferramenta chamada Pig usa o inglês como idioma do fluxo de dados e os converte no MapReduce. Outra ferramenta, o Hive, pega consultas SQL e as executa usando o MapReduce.
As ferramentas de business intelligence (BI) podem fornecer um nível ainda mais alto de análise. Existem ferramentas para esse tipo de análise também.
Este conteúdo foi extraído de "Hadoop Illuminated" por Mark Kerzner e Sujee Maniyam. Foi disponibilizado através da Licença Não-portada Creative Commons Attribution-NonCommercial-ShareAlike 3.0.