Перебрать все представления из источника и сохранить его в виде фрейма данных в блоках данных; Каждый вид должен иметь свой собственный df.
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver")
val jdbcHostname = "109.151.1.19"
val jdbcPort = 1433
val jdbcDatabase = "Adventure Works"
// Create the JDBC URL without passing in the user and password parameters.
val jdbcUrl = s"jdbc:sqlserver://${jdbcHostname}:${jdbcPort};database=${jdbcDatabase}"
// Create a Properties() object to hold the parameters.
import java.util.Properties
val connectionProperties = new Properties()
connectionProperties.put("user", "test")
connectionProperties.put("password", "test")
val driverClass = "com.microsoft.sqlserver.jdbc.SQLServerDriver"
connectionProperties.setProperty("Driver", driverClass)
val pushdown_query = "(SELECT '['+ OBJECT_SCHEMA_NAME(o.object_id) +'].['+o.name+']' ViewName FROM sys.objects as o WHERE o.type = 'V') emp_alias"
val dfViewList = spark.read.jdbc(url=jdbcUrl, table=pushdown_query, properties=connectionProperties)
val dfViewCollection = dfViewList.collect()
dfViewList.collect().foreach(t =>
val employees_table = spark.read.jdbc(jdbcUrl, t, connectionProperties))
// println(t))