Я пытаюсь подключить Presto DB (каталог кустов) от Spark. Когда я пытаюсь подключить Presto DB с помощью pyspark, я сталкиваюсь с ошибками, связанными с SSLException Как я могу успешно подключить Presto DB из Pyspark?
Я выполняю задание spark в AWS EMR, а метаданные улья хранятся в клею AWS.Когда я пытаюсь подключиться к presto от spark, я получаю SSLException.Я отправляю задание с помощью spark-submit.
from pyspark.sql import SparkSession
from pyspark.sql.types import *
from pyspark.sql.functions import *
spark = SparkSession.builder.appName("Prestodb_test").getOrCreate()
getInfo = spark.read.format("jdbc")\
.option("url","jdbc:presto://localhost:port/hive/default")\
.option("driver", "com.facebook.presto.jdbc.PrestoDriver")\
.option("user", "username")\
.option("password", "*****")\
.option("SSL", “true”)\
.option("dbtable", "select query")\
.load()
getInfo.count()
При выполнении кода я получаю сообщение об ошибке, как показано ниже:
py4j.protocol.Py4JJavaError: Ошибка произошла во времявызов o153.load.: java.sql.SQLException: Ошибка при выполнении запроса в
com.facebook.presto.jdbc.PrestoStatement.internalExecute (PrestoStatement.java:274) Причина: java.io.UncheckedIOException: javax.net.ssl.SSLException: нераспознанное сообщение SSL, текстовое соединение?на com.facebook.presto.jdbc.internal.client.JsonResponse.execute (JsonResponse.java:154)
Когда я пытался исключить параметр ("SSL", "true"), я получаюошибка, как показано ниже:
py4j.protocol.Py4JJavaError: Произошла ошибка при вызове o153.load.: java.sql.SQLException: Ошибка при выполнении запроса в com.facebook.presto.jdbc.PrestoStatement.internalExecute (PrestoStatement.java:274) в com.facebook.presto.jdbc.PrestoStatement.execute (PrestoStatement.java:227)
Я пытаюсь подключить Presto DB и запрос из таблицы улья и загрузить данные во фрейм данных.Не могли бы вы помочь в преодолении этой проблемы?