O desafio dos Data Centers para adotar o Spark como plataforma de Big Data

Análises em tempo real de grandes volumes de dados e aprendizado de máquina (Machine Learning) são as tecnologias que impulsionarão as empresas nos seus projetos de transformação digital. A rápida evolução de dispositivos de IoT, gerando montanhas de dados, exigirá análises em tempo real, permitindo acelerar o aprendizado das máquinas. O resultado será mais empresas e produtos mais inteligentes, melhor satisfação dos clientes, maiores lucros, redução de custos e equipes mais enxutas e especializadas.

A empresas que seguem essa direção já utilizam plataformas de Big Data para análises dos dados, porém muitas ainda em processamentos em lotes, criando um atraso nas respostas das análises e, consequentemente, nas tomadas de decisões. Em mercados onde é possível reagir mais devagar soluções como Hadoop/MapReduce são aceitas e não impactam os negócios. Entretanto, em mercado altamente voláteis onde as análises e tomadas de decisão devem ser tomadas por máquinas, o atraso das respostas pode ser uma questão de vida ou morte (em alguns casos, literalmente), como por exemplo detecção de fraudes, motores online de publicidade para e-commerce e controle de complexas estruturas de sistemas elétricos.

Atualmente, os Data Centers estão preparados para suportar a plataforma Hadoop/MapReduce que exige um conjunto de servidores, sistemas de armazenamento de dados em disco e sistemas de comunicação. Neste ambiente, não são necessários grandes quantidades de memória e altas taxas de transmissão de rede.

Mais recentemente, a plataforma Spark tem despertado o interesse da comunidade por permite o processamento em memória e ter executado, em 2013, o processamento 100 vezes mais rápido que o MapReduce em determinadas aplicações, exigindo menor quantidade de servidores, porém maior capacidade de memória.

A vantagem do Spark é que ele pode executar no topo do Hadoop YARN, onde pode acessar diretamente a estrutura de dados HDFS. Empresas como Yahoo, Intel, Baidu, Trend Micro e Groupon já estão usando essa solução.

O Spark tem APIs para Java, Scala e Python, além do Spark SQL. Graças a sua estrutura de construção por blocos é mais fácil os desenvolvedores escreverem funções. Também inclui um modo interativo que executa comandos com imediato feedback. Já o Hadoop requer outros pacotes, como Pig e Hive, para facilitar e tornar mais amigável a interação dos desenvolvedores. Nativamente, o MapReduce não possui um modo interativo.

O tamanho de memória do Spark é diretamente proporcional ao volume de dados que irá processar, tornando a opção do Hadoop mais barata devido ao fato de utilizar espaço em disco.

O custo do projeto dependerá da relação custo/benefício. O Hadoop/MapReduce é ótimo para processamento em lotes. O Spark é a melhor opção para processamento em tempo real, incluindo processamento gráfico. Ambos têm boa tolerância a falhas de hardware e segurança aceitável.

Mais um desafio para os profissionais de Data Centers gerenciarem a infraestrutura e garantir o desempenho e disponibilidade.

Deixe uma resposta