Technology is reshaping our world. A proliferação de dispositivos móveis, a explosão das redes sociais e o rápido crescimento da computação em nuvem deram origem a uma tempestade perfeita que está inundando o mundo com dados. De acordo com estimativas da Gartner, o desafio para as empresas é que 80 por cento desses “grandes dados” não estão estruturados, e está crescendo a duas vezes a taxa de dados estruturados.
à luz deste crescimento exponencial de dados caóticos, nunca houve uma maior necessidade de soluções de dados que vão além do que as bases de dados relacionais tradicionais podem oferecer. É onde a plataforma de análise de dados Apache Hadoop de código aberto e a aplicação NoSQL Apache Cassandra entram na imagem.
o que se segue é uma breve comparação das diferenças entre Hadoop vs. Cassandra, juntamente com a forma como estas duas soluções podem complementar-se para fornecer grandes insights de dados poderosos. Confira um exemplo de um caso de Uso Hadoop, e quando a plataforma pode ser emparelhado com Cassandra para um desempenho ideal.o que é o Hadoop?
Um produto da Apache Software Foundation Projeto, o Hadoop é um grande processamento de dados da plataforma que utiliza software open-source, distributed file system (HDFS), e uma estrutura de programação conhecido como MapReduce para armazenar, gerenciar e analisar maciçamente em grandes conjuntos de dados não estruturados em paralelo em distribuído em clusters de servidores de mercadoria em alta escala. Com o Hadoop, tanto HDFS quanto o MapReduce framework rodam no mesmo conjunto de nós. Isto permite que o framework Hadoop programe efetivamente tarefas em nós onde os dados já estão sendo armazenados. Como resultado, Hadoop é mais adequado para correr perto do tempo e análise orientada a lotes em vastos lagos de “cold”, aka, dados históricos-em múltiplos formatos—de uma maneira confiável e tolerante a falhas.
While MapReduce is a robust and reliable data processing tool, its main drawback is a lack of speed. Como a maioria dos trabalhos de mapeamento/redução são trabalhos em lotes de longa duração que podem levar minutos ou horas ou até mais completos, isso é de esperar. Claramente, as crescentes demandas e aspirações de grandes dados exigem um tempo mais rápido para perceber, que as cargas de trabalho em lote do MapReduce não são projetadas para entregar.o que é a Cassandra?
fundamentalmente, Cassandra é um banco de dados distribuído NoSQL projetado para gerenciar grandes quantidades de dados estruturados através de uma série de servidores de commodities. Cassandra possui uma arquitetura única que oferece alta distribuição, desempenho em escala linear, e é capaz de lidar com grandes quantidades de dados, proporcionando disponibilidade contínua e tempo de funcionamento para milhares de usuários concorrentes. Ao contrário de Hadoop, que é tipicamente implantado em um único local, a alta distribuição de Cassandra permite a implantação em países e continentes. Além disso, Cassandra está sempre de pé, sempre on, e oferece um desempenho muito consistente em um ambiente tolerante a falhas. Isto torna Cassandra ideal para o processamento de cargas de trabalho on-line de natureza transacional, onde Cassandra está lidando com um grande número de interações e tráfego concorrente com cada interação, produzindo pequenas quantidades de dados.
em contraste com Hadoop, que pode Aceitar e armazenar dados em qualquer formato—estruturado, não estruturado, semi-estruturado, imagens, etc.- A Cassandra precisa de uma certa estrutura. Como resultado, um monte de pensamento é necessário para estruturar um modelo de dados Cassandra vs. modelo Hadoop antes que ele possa ser implementado com sucesso em escala.como é que a Cassandra se compara ao HBase?
HBase is a NoSQL, distributed database model that is included in the Apache Hadoop Project. Ele é executado em cima do sistema de arquivos distribuídos Hadoop (HDFS). O HBase é projetado para casos de uso de Lago de dados e não é normalmente usado para aplicações web e móveis. Cassandra, pelo contrário, oferece a disponibilidade e o desempenho necessários para desenvolver aplicações sempre on.
combinando Cassandra e Hadoop
as organizações de hoje têm duas necessidades de dados. Em primeiro lugar, a necessidade de um banco de dados dedicado às operações online e a análise dos dados “quentes” gerados pelas aplicações Web, móveis e IOT. Em segundo lugar, a necessidade de uma grande plataforma de dados orientada para lotes que apoie o processamento de vastas quantidades de dados históricos “frios” não estruturados. Ao integrar fortemente Cassandra e Hadoop para trabalhar juntos, ambas as necessidades podem ser atendidas.
While Cassandra works very well as a highly fault-tolerant backend for online systems, Cassandra is not as analytics-friendly as Hadoop. A implantação de Hadoop em cima de Cassandra cria a capacidade de analisar dados em Cassandra sem ter que primeiro mover esses dados para Hadoop. Mover dados de Cassandra para Hadoop e HDFS é um processo complicado e demorado. Assim Hadoop em Cassandra dá às organizações uma maneira conveniente de obter análises operacionais específicas e relatórios a partir de quantidades relativamente grandes de dados que residem em Cassandra de uma forma em tempo real. Armados com insights de dados mais rápidos e mais profundos, as organizações que alavancam a Hadoop e a Cassandra podem melhor atender às necessidades dos seus clientes e ganhar uma vantagem mais forte sobre os seus concorrentes.