从Amazon S3到Redshift / Redshift解决方案的数据导入速度

时间:2014-05-21 17:39:22

标签: amazon-web-services amazon-s3 amazon-redshift

有谁知道从Amazon S3到Redshift的复制速度有多快?

我只想每天使用RedShift大约一小时,以便在Tabelau报告上运行更新。正在运行的查询始终位于同一个数据库中,但我需要每晚运行它们以记录当天发布的新数据。

我不想让一个群集全天候运行一天只能使用一小时,但我能看到这样做的唯一方法是每晚将整个数据库导入Redshift(我不喜欢#39;认为你无法暂停或暂停群集。我不知道复制速度是多少,所以我不知道每晚能否将10GB文件复制到Redshift相对较快。

假设它可行,我的想法是将SQL Server dbase的增量更改推送到S3。使用Cloud Formation,我在凌晨1点自动配置Redshift集群1小时,从S3导入dbase,并安排Tableau在该时间之间运行查询并获得结果。我一直关注查询需要多长时间,如果我需要超过一个小时,我只需要修改云的形成。

通过这种方式,我希望保持一个真正的“精益”。 Tableau服务器将所有ETL外包给Redshift,并仅购买我在Redshift上使用的内容。

请随意批评我的解决方案,或者将其从水中吹出来。否则,如果答案的共识是导入相关性很快,那么我会竖起大拇指,我正朝着正确的方向前进。

感谢您的帮助!

4 个答案:

答案 0 :(得分:2)

来自S3的Redshift负载非常快,但Redshift集群根本不会很快出现/拆除。在上面的示例中,大部分时间(和金钱)将花费在等待群集出现,现有数据加载,刷新数据卸载和群集再次拆除。

在我看来,最好使用另一种方法进行夜间处理。我建议:

  • 对于几个TB,InfiniDB在一个较大的EC2实例上,数据库存储在EBS卷上。
  • 对于许多TB,Amazon EMR将数据存储在S3上。如果您不想过多地使用Hadoop,可以使用Xplenty / Syncsort Ironcluster /等。编排Hadoop元素。

答案 1 :(得分:2)

虽然这个问题是在三年前编写的,但当时还没有,现在一个合适的解决方案是使用Amazon Athena,它允许按需SQL查询S3中保存的数据。这适用于按查询付费模型,适用于此类临时和“快速”工作负载。

在幕后,Athena使用Presto和Elastic MapReduce,但实际上开发人员/分析师所需的唯一知识就是SQL。

Tableau现在还有一个内置的Athena连接器(截至10.3)。

更多关于雅典娜的信息:https://aws.amazon.com/athena/

答案 2 :(得分:1)

您可以预先输入您在S3上保留的数据。它会使真空更快。

答案 3 :(得分:0)

这是Redshift的经典问题......如果你看起来不同......微软最近宣布了一项名为SQL Data Warehouse的新服务(使用PDW引擎)我认为他们想直接与Redshift竞争。 ...这里最有趣的概念是......熟悉的SQL Server查询语言和工具集(包括存储过程支持)。他们还将存储和计算分离,因此您可以拥有1 GB存储空间,但10个计算节点可用于密集查询,反之亦然....他们声称计算节点在几秒钟内启动,当您调整群集大小时,您不必采用它离线。云数据仓库战斗越来越热了:)