Índice:
Todo mundo está falando sobre o Hadoop, a nova tecnologia quente que é altamente valorizada entre os desenvolvedores e que pode mudar o mundo (de novo). Mas o que é isso afinal? É uma linguagem de programação? Um banco de dados? Um sistema de processamento? Um chá indiano aconchegante?
A resposta ampla: o Hadoop é tudo isso (exceto o chá aconchegante) e muito mais. É uma biblioteca de software que fornece uma estrutura de programação para processamento útil e barato de outra palavra de ordem moderna: big data.
De onde veio o Hadoop?
O Apache Hadoop faz parte do Projeto Foundation da Apache Software Foundation, uma organização sem fins lucrativos cuja missão é "fornecer software para o bem público". Como tal, a biblioteca Hadoop é um software de código aberto disponível para todos os desenvolvedores.
A tecnologia subjacente que alimenta o Hadoop foi realmente inventada pelo Google. Nos primeiros dias, o mecanismo de pesquisa não tão gigante precisava de uma maneira de indexar a enorme quantidade de dados que eles estavam coletando da Internet e transformá-lo em resultados significativos e relevantes para seus usuários. Com nada disponível no mercado que pudesse atender a seus requisitos, o Google construiu sua própria plataforma.
Essas inovações foram lançadas em um projeto de código aberto chamado Nutch, que o Hadoop mais tarde usou como base. Essencialmente, o Hadoop aplica o poder do Google ao big data de maneira acessível para empresas de todos os tamanhos.
Como o Hadoop funciona?
Como mencionado anteriormente, o Hadoop não é uma coisa - é muitas coisas. A biblioteca de software que é o Hadoop consiste em quatro partes principais (módulos) e várias soluções complementares (como bancos de dados e linguagens de programação) que aprimoram seu uso no mundo real. Os quatro módulos são:- Hadoop Common: esta é a coleção de utilitários comuns (a biblioteca comum) que suporta módulos Hadoop.
- Sistema de arquivos distribuídos do Hadoop (HDFS): um sistema de arquivos distribuído robusto, sem restrições aos dados armazenados (o que significa que os dados podem ser estruturados ou não estruturados e sem esquema, em que muitos DFSs armazenam apenas dados estruturados) que fornecem acesso de alto rendimento com redundância ( O HDFS permite que os dados sejam armazenados em várias máquinas - portanto, se uma máquina falhar, a disponibilidade será mantida nas outras máquinas).
- Hadoop YARN: Essa estrutura é responsável pelo agendamento de tarefas e pelo gerenciamento de recursos de cluster; garante que os dados sejam espalhados o suficiente por várias máquinas para manter a redundância. YARN é o módulo que faz do Hadoop uma maneira acessível e econômica de processar big data.
- Hadoop MapReduce: esse sistema baseado em YARN, desenvolvido com a tecnologia do Google, realiza processamento paralelo de grandes conjuntos de dados (estruturados e não estruturados). O MapReduce também pode ser encontrado na maioria das estruturas de processamento de dados atuais, incluindo os bancos de dados MPP e NoSQL.
O hardware que pode lidar com a quantidade de poder de processamento necessária para trabalhar com big data é caro, para dizer o mínimo. Essa é a verdadeira inovação do Hadoop: a capacidade de dividir grandes quantidades de poder de processamento em várias máquinas menores, cada uma com seu próprio computador e armazenamento localizados, além de redundância integrada no nível do aplicativo para evitar falhas.
O que o Hadoop faz?
Em termos simples, o Hadoop torna o big data acessível e utilizável a todos.
Antes do Hadoop, as empresas que usavam big data o faziam principalmente com bancos de dados relacionais e data warehouses corporativos (que usam grandes quantidades de hardware caro). Embora essas ferramentas sejam ótimas para o processamento de dados estruturados - que já são classificados e organizados de maneira gerenciável -, a capacidade de processar dados não estruturados era extremamente limitada, tanto que era praticamente inexistente. Para serem utilizáveis, os dados precisavam primeiro ser estruturados para que se ajustassem perfeitamente às tabelas.
A estrutura do Hadoop altera esse requisito e o faz de forma barata. Com o Hadoop, grandes quantidades de dados de 10 a 100 gigabytes ou mais, estruturadas e não estruturadas, podem ser processadas usando servidores comuns (comuns).
O Hadoop traz aplicativos de big data em potencial para empresas de todos os tamanhos, em todos os setores. A estrutura de código aberto permite que as empresas financeiras criem modelos sofisticados para avaliação de portfólio e análise de risco, ou varejistas on-line ajustem suas respostas de pesquisa e direcionem os clientes para os produtos que têm maior probabilidade de comprar.
Com o Hadoop, as possibilidades são realmente ilimitadas.