繁体   English   中英

将 Spark dataframe 保存到 Azure Databricks 中的增量表时丢失数据格式

[英]Losing data formats when saving Spark dataframe to delta table in Azure Databricks

当我尝试将 Spark Dataframe 作为增量表保存到 Azure Databricks Delta Lake 时,我的所有数据类型都会变成字符串。 此外,曾经是日期时间类型的列中的所有日期都会被打乱,没有可识别的模式。

有谁知道为什么会发生这种情况以及如何防止它? 日期随机播放

数据类型丢失

根据我们最终的重现,我们不会丢失 output 中的任何数据格式或更改。

这是写入增量表之前的 dataframe:

在此处输入图像描述

这是写入增量表后的 dataframe。

在此处输入图像描述

您的情况没有问题:

  1. 没有类型丢失 - Spark 需要将 map Pandas/Python 类型转换为它自己的类型。 int64在 Spark 中是long并且具有相同的类型。 datetime相同 - 它是timestamp

  2. 关于 shuffle - 数据的顺序不是由定义定义的,类似于关系数据库。 如果您需要按特定顺序查看数据,则需要在阅读后对其进行排序。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM