更快的开发周转时间与AWS胶

时间:2019-02-01 22:18:58

标签: amazon-web-services apache-spark aws-glue

AWS Glue看起来很有前途,但是我在开发周期上遇到了挑战。如果我通过AWS控制台编辑PySpark脚本,即使在最小的测试数据集上也要花费几分钟的时间。这使得遍历一个挑战迅速,如果我要等待3-5分钟,只是为了看看我是否呼吁正确的方法glueContext或者了解一个特定的DynamicFrame行为。

什么方法可以让我更快地迭代?

我想我可以在本地开发Spark代码,并将其部署到Glue作为执行框架。但是,如果我需要用胶专用扩展测试代码,我卡住了。

2 个答案:

答案 0 :(得分:2)

对于开发和测试脚本,Glue具有Development Endpoints,您可以将其安装在local machineAmazon EC2 instance上的Zeppelin之类的笔记本上(其他选项为'REPL Shell'和'PyCharm专业”)。

you pay for it even if it's idling起,完成测试后,请不要忘记删除端点。

答案 1 :(得分:0)

我保持在单独的类文件并胶水代码在另一个文件pyspark代码。我们仅使用胶水读取和写入数据。我们在本地计算机上使用pytest进行测试驱动的开发。无需开发端点或齐柏林飞艇。一旦在pyspark中修复了所有特定于语法或业务逻辑的错误,就可以使用胶水进行端到端测试。我们也写shell脚本,其中最新的上传代码,S3存储从胶作业运行。