Как да извлека име на колона и типове данни от Glue Dynamic Dataframe?

Опитвам се да извлека имена на колони и типове данни от динамичната рамка на Glue и исках да ги използвам в spark sql. Например:

 persons = glueContext.create_dynamic_frame.from_catalog(
         database="legislators",
         table_name="customer_table")

persons.printSchema()

Резултатът е

корен |-- cust_no: дълъг |-- име: низ |-- адрес: низ |-- zip: дълъг

Как да извлечете имена на колони и типове данни от динамична рамка. Исках да отрежа само струни, не дълги. Исках да използвам колоните в spark sql

spark.sql(""" SELECT cust_no, trim(name),trim(address),zip....""")

Моля за съвет как да се постигне това.


person SK15    schedule 31.08.2020    source източник


Отговори (1)


Можете да го конвертирате в рамка с данни на искра и да приложите метода dftypes.

persons.toDF().dtypes

С помощта на този метод получавате списък от кортежи, съдържащи колоната и съответния тип данни във вашата рамка с данни.

[('cust_no', 'long'),('name', 'string'),('address','string'),('zip','long')]
person ruifgmonteiro    schedule 28.01.2021