Python 克服GAE数据存储中1mb文件限制

Python 克服GAE数据存储中1mb文件限制,python,google-app-engine,google-cloud-datastore,Python,Google App Engine,Google Cloud Datastore,就目前而言,我们正在使用数据存储blob来存储站点的配置文件图像。在数据存储中,将超过1mb的文件作为blob存储在数据存储中是有限制的。是否有解决方法。您可以使用 Google应用程序引擎包括Blobstore服务,该服务允许应用程序为最大可达2G字节的数据对象提供服务。这些对象称为Blobstore值或blob。Blobstore值用作请求处理程序的响应,并通过web表单作为上载创建。应用程序不直接创建blob数据;相反,blob是通过提交的web表单或其他httppost请求间接创建的。B

就目前而言,我们正在使用数据存储blob来存储站点的配置文件图像。在数据存储中,将超过1mb的文件作为blob存储在数据存储中是有限制的。是否有解决方法。

您可以使用

Google应用程序引擎包括Blobstore服务,该服务允许应用程序为最大可达2G字节的数据对象提供服务。这些对象称为Blobstore值或blob。Blobstore值用作请求处理程序的响应,并通过web表单作为上载创建。应用程序不直接创建blob数据;相反,blob是通过提交的web表单或其他httppost请求间接创建的。Blobstore值可以通过Blobstore API提供给用户,也可以通过类似文件的流由应用程序访问


您可以通过将blob拆分为多个部分并将它们存储在单独的实体中来解决这个问题。不过,您应该按照@Thilo的建议使用Blobstore。

最好能够上传大于1Mb的图像,然后将其大小调整为小于1Mb(以便您可以将其保存到数据存储),而不必使用Blobstore。目前,图像库不允许这样做,这是一个遗憾。@Jonmidleton,你为什么试图避免使用blobstore?请不要误解我的意思,我非常喜欢blobstore,并用它来存储大文件,但对于不必非常大的配置文件图像,它们可以很容易地保存为标准blob。blob存储有一些额外的开销,使用ajax进行上传更为棘手,并且必须进行自定义bulkloader也会增加开销。如果需要,使用标准blob还可以在事务中运行save。我可能有一些假设是错误的,所以我希望得到纠正:)