Utilice el método getDataSetFromSql() para realizar una evaluación diferida de una consulta SELECT en la que estén involucradas tablas no nativas. Por ejemplo:
scala> ForeignServer.getDatasetFromSql("select * from default.nn1") res0: org.apache.spark.sql.Dataset[org.apache.spark.sql.Row] = [number: int, name: string]
El resultado de la consulta DataSet (res0 en el ejemplo) se utiliza como cualquier otro objeto de conjunto de datos de Spark SQL y solo se evalúa cuando se llama a una acción.