3

我正在试验应用程序的 Google 云存储备份功能。

使用 gsutil 下载备份文件后,如何将它们加载到本地开发服务器中?

是否有可用于这些格式的解析器(例如,协议缓冲区)?

4

3 回答 3

7

备份以leveldb 记录格式存储,您应该能够读取然后使用:

于 2012-09-18T15:21:46.523 回答
7

Greg Bayer 在一篇博文中写了一些 Python 代码来展示如何做到这一点:

# Make sure App Engine SDK is available
import sys
sys.path.append('/usr/local/google_appengine')
from google.appengine.api.files import records
from google.appengine.datastore import entity_pb
from google.appengine.api import datastore

raw = open('path_to_datastore_export_file', 'r')
reader = records.RecordsReader(raw)
for record in reader:
  entity_proto = entity_pb.EntityProto(contents=record)
  entity = datastore.Entity.FromPb(entity_proto)
  #Entity is available as a dictionary!
于 2012-11-12T18:48:08.653 回答
0

对于那些使用 Windows 的人,将 open 行更改为: raw = open('path_to_datastore_export_file', 'rb')

该文件必须以二进制模式打开!

于 2016-06-12T23:42:25.867 回答