Как запустить клеевой скрипт из Glue Dev Endpoint - PullRequest
0 голосов
/ 20 мая 2018

У меня есть клеевой скрипт (test.py), написанный в редакторе.Я подключился к конечной точке Glue Dev и скопировал скрипт в конечную точку, или я могу сохранить в S3 Bucket.По сути, клейкая конечная точка - это кластер EMR, теперь как мне запустить скрипт из терминала конечной точки dev?Могу ли я использовать spark-submit и запустить его?

Я знаю, что мы можем запустить его из консоли клея, но больше интересно узнать, могу ли я запустить его из терминала конечной точки клея.

Ответы [ 2 ]

0 голосов
/ 24 мая 2018

Вам не нужен ноутбук;вы можете подключиться к конечной точке dev и запустить ее с интерпретатором gluepython (не просто python).

например,

radix@localhost:~$ DEV_ENDPOINT=glue@ec2-w-x-y-z.compute-1.amazonaws.com
radix@localhost:~$ scp myscript.py $DEV_ENDPOINT:/home/glue/myscript.py
radix@localhost:~$ ssh -i {private-key} $DEV_ENDPOINT
...
[glue@ip-w-x-y-z ~]$ gluepython myscript.py

Вы также можете запустить скрипт напрямую, не получаяинтерактивная оболочка с ssh (разумеется, после загрузки скрипта с scp или любым другим):

radix@localhost:~$ ssh -i {private-key} $DEV_ENDPOINT gluepython myscript.py

Если это скрипт, который использует класс Job (как это делают автоматически сгенерированные скрипты Python), вам может потребоваться передать параметры --JOB_NAME и --TempDir.

0 голосов
/ 21 мая 2018

Для целей разработки / тестирования вы можете настроить блокнот zeppelin локально, установить SSH-соединение с помощью URL-адреса конечной точки AWS Glue, чтобы вы могли иметь доступ к каталогу данных / сканерам и т. Д.а также контейнер s3, в котором находятся ваши данные.

После того, как все тестирование завершено, вы можете связать свой код и загрузить его в контейнер S3.Затем создайте задание, указывающее на сценарий ETL в корзине S3, чтобы задание можно было запускать, а также планировать.

Пожалуйста, обратитесь здесь и , чтобы настроить zeppelin в windows , для получения любой помощи по настройке локальной среды.Вы можете использовать экземпляр dev, предоставляемый Glue, но вы можете понести дополнительные расходы на него (плата за экземпляр EC2).

После настройки записной книжки zeppelin вы можете скопировать скрипт (test.py) взаписная книжка и беги от цеппелина.

В соответствии с часто задаваемыми вопросами AWS Glue:

Вопрос: Когда следует использовать AWS Glue против Amazon EMR?

AWS Glue работает поверх среды Apache Sparkобеспечить масштабируемую среду выполнения для ваших заданий преобразования данных.AWS Glue выводит, развивает и отслеживает ваши задания ETL, чтобы значительно упростить процесс создания и обслуживания заданий.Amazon EMR предоставляет вам прямой доступ к вашей среде Hadoop, предоставляя низкоуровневый доступ и большую гибкость в использовании инструментов, выходящих за пределы Spark.

У вас есть какие-то особые требования для запуска сценария Glue в экземпляре EMR?Так как, по моему мнению, EMR обеспечивает большую гибкость, и вы можете использовать любые сторонние библиотеки Python и работать непосредственно в кластере EMR Spark.

С уважением

...