围绕Hadoop及其生态系统有大量的炒作。然而,实际上,在许多数据集都在to级的情况下,使用亚马逊红移查询大型数据集,而不是花费时间和精力构建Hadoop集群,难道不是更合理吗?
此外,在设置复杂度、成本和性能方面,Amazon与Hadoop相比如何?
发布于 2014-06-11 06:51:19
tl;dr:它们在许多方面都有明显的不同,我认为Redshift不会取代Hadoop。
-Function
除了在Redshift上运行SQL之外,您不能运行其他任何内容。也许最重要的是,您不能在Redshift上运行任何类型的自定义函数。在Hadoop中,您可以使用多种语言(Java、Python、Ruby)。(你说吧)。例如,Hadoop中的NLP很容易,而在Redshift中则或多或少是不可能的。也就是说,在Hadoop中你可以做很多事情,但在Redshift上不行。这可能是最重要的区别。
-Performance配置文件
在大多数情况下,在Redshift上执行查询的效率要比Hadoop高得多。然而,这种效率来自于将数据加载到Redshift中时所做的索引(我在这里使用的术语indexing非常松散)。因此,如果您只加载一次数据并执行多个查询,这是很好的,但是如果您想只执行一个查询,那么实际上可能会在总体性能上出现损失。
-Cost配置文件
哪种解决方案在成本上获胜取决于情况(比如性能),但您可能需要大量的查询才能使其比Hadoop (更具体地说是Amazon的Elastic )更便宜。例如,如果您正在执行OLAP,那么Redshift很可能会更便宜。如果您每天进行批量ETL,Hadoop更有可能以更低的价格推出。
话虽如此,我们已经将在Hive中完成的ETL部分替换为Redshift,这是一次非常好的体验,主要是为了便于开发。Redshift的查询引擎基于PostgreSQL,与Hive相比非常成熟,它的ACID特性使得它更易于推理,而且响应时间更快,可以完成更多的测试。这是一个很好的工具,但它不会取代Hadoop。
编辑:至于设置的复杂性,我甚至会说,如果您使用AWS的EMR,使用Hadoop会更容易。他们的工具非常成熟,运行Hadoop作业非常容易。围绕Redshift运作的工具和机制还没有成熟。例如,Redshift无法处理涓流加载,因此您必须想出一些将其转化为批处理负载的方法,这会给ETL增加一些复杂性。
发布于 2015-01-28 18:42:06
目前,Amazon的大小限制是128个节点或2个PBs压缩数据。可能是大约6PB未压缩,但里程不同的压缩。如果你需要更多的话,你可以随时通知我们。anurag@aws (我运行和Amazon )
发布于 2014-06-11 05:17:12
就我个人而言,我认为建立hadoop集群并不那么困难,但我知道,当您开始工作时,有时会很痛苦。
HDFS的大小限制远远超过TB (或者您的意思是well?)如果我没有弄错的话,它的比例尺达到了约特字节,或者其他一些我甚至不知道这个词的测量值。不管它是什么,它真的很大。
像Redshift这样的工具有自己的位置,但我总是担心特定于供应商的解决方案。我的主要关注点总是“当我对他们的服务不满意时我该怎么办?”--我可以去谷歌,把我的分析工作转换成他们的范式,或者我可以去hadoop,把同样的工作转移到那个系统中。不管是哪种方式,我都要学习一些新的东西,做大量的翻译工作。
尽管如此,能够上传数据集并快速工作是很好的--特别是如果我所做的工作生命周期很短的话。亚马逊在解决数据安全问题方面做得很好。
如果您想要避免hadoop,总会有一个替代方案。但一旦你开始工作,就不会那么难了。
https://datascience.stackexchange.com/questions/305
复制相似问题