我的任务是创建一个“模式检查”函数,通过pyspark databricks笔记本接收csv。
我有一个预期的模式叫做 my_schema
. 我打算这样做:
###################################
步骤1)通过推断模式进行模式检查(检查类型、列名、列计数) (spark_read.option('inferSchema', 'true'))
. 如果架构为false,则失败。
步骤2)通过应用模式加载dataframe,以便用正确的类型加载它,并可能删除dropmalformed的损坏记录( spark_read.schema(my_schema)
).
#################################
执行这两个步骤(两次加载Dataframe的成本)有意义吗?还是我应该把自己限制在第二个?
任何级别的反馈都将不胜感激(无论您是否有建议),这样我们才能了解这种设计的局限性和潜在的改进。
暂无答案!
目前还没有任何答案,快来回答吧!