Вы можете получить список имен столбцов, вызвав фрейм данных. column
df1 = spark.sql('select * from bla')
df1.columns
['col1', 'col2']
Метод printschema поможет вам в случае, если вам нужны типы столбцов
df1.printSchema()
root
|-- col1: long (nullable = true)
|-- col2: long (nullable = true)
Оба метода не читают никаких данных из таблиц, кроме схемы. Еще одна вещь, которую вы можете попробовать, когда пытаетесь улучшить производительность, - это хранить таблицы в формате паркета. Вы можете сделать это с помощью следующей команды:
df1.write.mode("overwrite").saveAsTable("blaASParquet")
Паркет - это хранилище на основе столбцов, что полезно для большинства методов агрегирования.