Há muito hype ao redor do Hadoop e seu ecossistema. No entanto, na prática, onde muitos conjuntos de dados estão no intervalo de terabytes, não é mais razoável usar o Amazon RedShift para consultar grandes conjuntos de dados, em vez de gastar tempo e esforço construindo um cluster Hadoop?
Além disso, como o Amazon Redshift se compara ao Hadoop no que diz respeito à complexidade, custo e desempenho da instalação?
apache-hadoop
map-reduce
aws
trienismo
fonte
fonte
Respostas:
tl; dr: Eles diferem acentuadamente em muitos aspectos e não acho que o Redshift substitua o Hadoop.
-Função
Você não pode executar nada além de SQL no Redshift. Talvez o mais importante seja que você não pode executar nenhum tipo de função personalizada no Redshift. No Hadoop, você pode, usando várias linguagens (Java, Python, Ruby ... o nome dele). Por exemplo, a PNL no Hadoop é fácil, enquanto é mais ou menos impossível no Redshift. Ou seja, há muitas coisas que você pode fazer no Hadoop, mas não no Redshift. Esta é provavelmente a diferença mais importante.
A execução de consultas de perfil de desempenho no Redshift é, na maioria dos casos, significativamente mais eficiente do que no Hadoop. No entanto, essa eficiência vem da indexação feita quando os dados são carregados no Redshift (estou usando o termo
indexing
muito flexível aqui). Portanto, é ótimo se você carregar seus dados uma vez e executar várias consultas, mas se desejar executar apenas uma consulta, por exemplo, poderá realmente perder o desempenho geral.Perfil de custo
Qual solução ganha em custo depende da situação (como o desempenho), mas você provavelmente precisará de muitas consultas para torná-la mais barata que o Hadoop (mais especificamente o Elastic Map Reduce da Amazon). Por exemplo, se você estiver usando OLAP, é muito provável que o Redshift saia mais barato. Se você fizer ETLs de lote diariamente, é mais provável que o Hadoop saia mais barato.
Dito isto, substituímos parte do nosso ETL que foi feito no Hive to Redshift, e foi uma ótima experiência; principalmente pela facilidade de desenvolvimento. O Query Engine do Redshift é baseado no PostgreSQL e é muito maduro, comparado ao Hive. Suas características ACID facilitam o raciocínio e o tempo de resposta mais rápido permite que mais testes sejam realizados. É uma ótima ferramenta, mas não substitui o Hadoop.
EDIT : Quanto à complexidade da instalação, diria até que é mais fácil com o Hadoop se você usar o EMR da AWS. Suas ferramentas são tão maduras que é ridiculamente fácil ter seu trabalho no Hadoop em execução. As ferramentas e mecanismos que cercam a operação do Redshift ainda não estão maduros. Por exemplo, o Redshift não pode lidar com carregamento lento e, portanto, você precisa criar algo que o transforme em um carregamento em lote, o que pode adicionar alguma complexidade ao seu ETL.
fonte
easier to develop because of Redshift's maturity
contradiz comRedshift isn't that mature yet
qual é o seu veredicto?O limite de tamanho atual do Amazon Redshift é de 128 nós ou 2 PBs de dados compactados. Pode ser cerca de 6PB descompactado, embora a milhagem varie para compactação. Você sempre pode nos informar se precisar de mais. anurag @ aws (eu executo o Amazon Redshift e o Amazon EMR)
fonte
Pessoalmente, não acho tão difícil configurar um cluster hadoop, mas sei que às vezes é doloroso quando você está começando.
As limitações de tamanho do HDFS excedem bem um TB (ou você quis dizer exabyte?). Se não me engano, ele escala para yottabytes ou alguma outra medida que eu nem conheço. Seja o que for, é realmente grande.
Ferramentas como Redshift têm seu lugar, mas eu sempre me preocupo com soluções específicas de fornecedores. Minha principal preocupação é sempre "o que faço quando estou insatisfeito com o serviço deles?" - Eu posso ir ao google e mudar meu trabalho de análise para o paradigma deles ou eu posso ir para o hadoop e mudar o mesmo trabalho para esse sistema. De qualquer forma, vou ter que aprender algo novo e trabalhar muito na tradução de coisas.
Dito isto, é bom poder enviar um conjunto de dados e começar a trabalhar rapidamente - especialmente se o que estou fazendo tiver um ciclo de vida curto. A Amazon fez um bom trabalho ao responder ao problema de segurança de dados.
Se você quiser evitar o hadoop, sempre haverá uma alternativa. Mas não é tão difícil trabalhar assim que você começa a trabalhar.
fonte