我正在对AWS Glue与AWS EMR进行一些定价比较,以便在EMR和EMR之间进行选择。胶。
我考虑过6个DPU(4个vCPU + 16 GB内存),ETL作业运行10分钟,持续30天。假设的爬虫请求假定高于免费等级100万,并且对于100万个额外请求计算为1美元。
在EMR上我已经考虑过EC2和amp;的m3.xlarge。 EMR(定价分别为0.266美元和0.070美元),6个节点,运行10分钟30天。
在计算一个月时,我发现AWS Glue的价格约为14.64美元,而对于EMR,它的价格约为10.08美元。我没有考虑其他额外费用,如S3,RDS,Redshift等。& DEV端点是可选的,因为我的目标是比较ETL工作价格的好处
与AWS Glue相比,EMR看起来更便宜。 EMR定价是否正确,如果有任何遗漏,有人可以建议吗?我已经尝试过针对EMR的AWS价格计算器,但很困惑,并且不清楚是否将标准化小时计入其中。
此致
YUVA
答案 0 :(得分:7)
是的,EMR确实比Glue更便宜,这是因为Glue意味着无服务器并且完全由AWS管理,因此用户不必担心幕后运行的基础设施,但EMR需要设置大量配置。因此,在用户友好性和成本之间进行权衡,对于更多技术用户,EMR可能是更好的选择。
答案 1 :(得分:2)
@ user2889316-您是否检查了我提供比较编号的问题?
还请注意,胶水每小时大约为0.44 / DPU。我认为您不会全天候运行任何AWS Glue JOB吗?您是在谈论Glue Dev终点还是Job?
AWS Glue作业至少需要运行2个DPU,即每小时0.88,我认为大约每天21美元?这仅适用于GLUE作业,并且有额外的费用,例如S3,以及任何数据库/连接费用/爬虫费用等。
EMR的对应实例为m3.xlarge,其费用为(分别为$ 0.266和$ 0.070)。这将大约少于每天2实例$ 16?加上其他S3,数据库费用等。我正在针对AWS Glue作业的默认DPU考虑2个EMR实例。
希望这会给您一个想法。
谢谢
答案 2 :(得分:0)
如果您使用Spot
的EMR实例而不是On-Demand
,则它将花费按需价格的1/3,而且价格会便宜得多。 AWS Glue
没有价格优势。
答案 3 :(得分:0)
如果您的基础架构不需要进行大规模扩展(并且大多数情况下采用固定配置),请使用EMR。但是如果需要,Glue是更好的选择,因为它没有服务器。只需更改DPU,即可扩展您的基础架构。但是,在EMR中,您必须决定群集类型,节点数和自动扩展规则。对于每个更改,您将需要更改集群创建脚本,对其进行测试,进行部署-基本上会增加标准发布周期的开销。通过更改基础配置,您可能需要更改spark配置以相应地优化作业。因此,随着基础配置的更改,发布新版本的时间会更长。如果添加高配置启动,则将花费更多。如果添加低配置启动,则需要频繁更改脚本。
话虽如此,AWS Glue对于每个DPU都有固定的基础设施配置-例如每个内核16GB内存。如果您的ETL需要每个内核更多的内存,则可能必须转向EMR。但是,如果您的ETL的设计方式使得在1个执行程序的情况下不会超过11GB的驱动程序内存,在2个执行程序的情况下不会超过5.5GB的内存(例如,在新内核上并行获取额外的数据量,或者将容量划分为5gb / 11gb并以循环在同一核上),胶水是正确的选择。
如果您的ETL很复杂,并且所有工作将使集群全天忙碌,我建议与EMR一起使用专门的devops团队来管理下面的EMR。