Я пытаюсь подключиться к Redshift и выполнить простые запросы из Glue DevEndpoint (это является обязательным требованием), но, похоже, не может подключиться.
Следующий код просто перестал работать:
df = spark.read \
.format('jdbc') \
.option("url", "jdbc:redshift://my-redshift-cluster.c512345.us-east-2.redshift.amazonaws.com:5439/dev?user=myuser&password=mypass") \
.option("query", "select distinct(tablename) from pg_table_def where schemaname = 'public'; ") \
.option("tempdir", "s3n://test") \
.option("aws_iam_role", "arn:aws:iam::147912345678:role/my-glue-redshift-role") \
.load()
В чем может быть причина?
Я проверил URL, пользователя, пароль, а также пробовал разные роли IAM, но каждый раз просто зависает ..
Также пробовал без роли IAM (только с URL, пользователь/ pass, схема / таблица, которая уже существует там), а также зависает / timeout:
jdbcDF = spark.read \
.format("jdbc") \
.option("url", "jdbc:redshift://my-redshift-cluster.c512345.us-east-2.redshift.amazonaws.com:5439/dev") \
.option("dbtable", "public.test") \
.option("user", "myuser") \
.option("password", "mypass") \
.load()
Считывание данных (непосредственно в Glue SSH-терминале) из S3 или из таблиц Glue (каталог) выглядит нормально, поэтому я знаю, чтоSpark и Dataframes в порядке, просто есть что-то с подключением к RedShift, но не знаете что?