如何从 Glue Dynamic Dataframe 中提取列名和数据类型?
Posted
技术标签:
【中文标题】如何从 Glue Dynamic Dataframe 中提取列名和数据类型?【英文标题】:How to extract column name and data types from Glue Dynamic Dataframe? 【发布时间】:2020-08-31 20:57:41 【问题描述】:我正在尝试从 Glue 动态框架中提取列名和数据类型,并希望在 spark sql 中使用它们。 例如:
persons = glueContext.create_dynamic_frame.from_catalog(
database="legislators",
table_name="customer_table")
persons.printSchema()
输出是
根 |-- cust_no: 长 |-- 名称:字符串 |-- 地址:字符串 |-- 邮编:长
如何从动态框架中提取列名和数据类型。我只想修剪字符串,而不是长字符串。 我想使用 spark sql 中的列
spark.sql(""" SELECT cust_no, trim(name),trim(address),zip....""")
请告知如何实现这一目标。
【问题讨论】:
【参考方案1】:您可以将其转换为 spark 数据帧并应用 dftypes 方法。
persons.toDF().dtypes
使用此方法,您可以获得包含数据框中列和相应数据类型的元组列表。
[('cust_no', 'long'),('name', 'string'),('address','string'),('zip','long')]
【讨论】:
以上是关于如何从 Glue Dynamic Dataframe 中提取列名和数据类型?的主要内容,如果未能解决你的问题,请参考以下文章
glue_context.create_dynamic_frame.from_catalog 返回空或空数据