将大json保存到Google云数据存储中

问题描述 投票:0回答:2

我想将一些较大的json保存到数据存储区,其中len(json)>=80000000 (80MB),但是我得到:ServiceUnavailable:503 413:请求实体太大

我可以将其潜在地保存在云存储中,但是我想我将失去从数据存储中建立索引和更快的查询能力。什么是最好的解决方案?

def save_serialized_data_to_db(json, name):
  datastore_client = datastore.Client()

  kind = 'SerializedData'
  serialized_data_key = datastore_client.key(kind, name)

  serialized_data = datastore.Entity(key=serialized_data_key)
  serialized_data['json'] = json

  datastore_client.put(serialized_data) // getting: ServiceUnavailable: 503 413:Request Entity Too Large

  return serialized_data
google-cloud-platform cloud google-cloud-datastore datastore
2个回答
0
投票

数据存储区的最大事务大小为10MB。

可在此处找到限制:https://cloud.google.com/datastore/docs/concepts/limits

相关剪切/粘贴:

最大API请求大小。在Google App Engine之外使用数据存储模式时,此限制适用。如果从App Engine使用数据存储区模式,则限制取决于所使用的客户端库。10 MiB

交易的最大大小10 MiB

实体的最大大小1,048,572字节(1 MiB-4字节)


0
投票

在我公司中执行特殊处理

  • 从完整的JSON,可索引值和可搜索值中提取。
  • 使用这些值创建新的JSON。
  • 将完整的JSON存储到云存储中
  • 将新的JSON +云存储文件路径存储到数据存储中。

我们也在考虑使用MongoDB。我还没有反馈给您。

© www.soinside.com 2019 - 2024. All rights reserved.