streaming.dsl.mmlib.algs.SQLShowTableExt.scala Maven / Gradle / Ivy
The newest version!
package streaming.dsl.mmlib.algs
import org.apache.spark.sql.expressions.UserDefinedFunction
import org.apache.spark.sql.{DataFrame, SparkSession}
import streaming.dsl.mmlib.SQLAlg
import streaming.dsl.mmlib.algs.param.BaseParams
/**
* 2019-04-11 WilliamZhu([email protected])
*/
class SQLShowTableExt(override val uid: String) extends SQLAlg with Functions with BaseParams {
def this() = this(BaseParams.randomUID())
override def train(df: DataFrame, path: String, params: Map[String, String]): DataFrame = {
df.sparkSession.sql(s"desc ${path}")
}
override def skipPathPrefix: Boolean = true
override def batchPredict(df: DataFrame, path: String, params: Map[String, String]): DataFrame = train(df, path, params)
override def load(sparkSession: SparkSession, path: String, params: Map[String, String]): Any = {
throw new RuntimeException(s"${getClass.getName} not support load function.")
}
override def predict(sparkSession: SparkSession, _model: Any, name: String, params: Map[String, String]): UserDefinedFunction = {
throw new RuntimeException(s"${getClass.getName} not support load function.")
}
}