首页 > 解决方案 > 将文件上传到 GCP 时如何确定记录的大小

问题描述

将文件上传到 GCP 存储桶时遇到以下错误。很少有记录超过 GCP 允许的(10000000 字节)。我有一个工作 Python 脚本可以在 GCP 中上传文件,它使用上传 blob 功能。需要增强此脚本以识别和捕获超出此限制的记录。

错误: google.cloud.pubsub_v1.publisher.exceptions.MessageTooLargeError:正在发布的消息会产生太大的发布请求,超过后端允许的最大大小(10000000 字节)。

标签: pythongoogle-cloud-platform

解决方案


这些是您要转换为 blob 并上传的普通文件吗?如果是这样,您可以使用这些技术检查文件的大小,例如

if os.path.getsize(filepath) < 10000000:
    upload(filepath)
else:
    continue

编辑:

查找单个记录的大小会更难。第二个结果表明您可以找到对象的内存大小,但您可能需要填充限制以避免错误。

或者,您可以将记录保存到临时文件中,然后获取该文件的大小,以使用更慢但更防弹的方法来查找记录大小


推荐阅读