Puedes hacer lo mismo con Scala. Utilice JDBC (java.sql.{Connection,DriverManager}
) y obtenga el conjunto de resultados.
No puede, porque esta no es una consulta de Postgres. Lo que ejecutas en spark.sql
es una consulta de Spark. Lo que puedes hacer es usar la subconsulta:
- En Apache Spark 2.0.0, ¿es posible obtener una consulta de una base de datos externa (en lugar de tomar toda la mesa)?
- ¿Cómo usar una consulta SQL para definir una tabla en dbtable?
Tal vez se ajuste a sus requisitos (si la consulta no tiene que ser dinámica). Desafortunadamente, Spark SQL tampoco admite tipos geométricos, por lo que es posible que tenga que convertirlo en algo consumible por Spark o definir su propio dialecto.