【发布时间】:2022-11-24 06:27:20
【问题描述】:
我有一个大型嵌套 TB 大小的 jsonl(s),我正在将其转换为镶木地板文件并写入已分区的谷歌云存储桶。
问题如下。嵌套字段之一是字符串列表
理想情况下,我期望该字段的模式是billing_code_modifier: list<item: string>,但在极少数情况下,有时所有记录的列表长度为 0,在这种情况下,pandas 会写入 billing_code_modifier: list<item: null>
这会导致一个问题,因为用于读取这些镶木地板文件的第三方工具 [bigquery] 由于不一致的模式而无法读取这些文件,期望列表未列出 [它默认空数组为 int32 ,怪谷歌而不是我]
如何解决这个问题。有没有办法在编写镶木地板文件时指定架构。 因为我正在处理一个桶,所以我不能写一个空的镶木地板,然后在 2 个单独的写操作中将数据添加到文件中,因为 GCP 不允许您修改文件只覆盖
【问题讨论】:
标签: python google-bigquery parquet pyarrow