Skip to main content

Transfers data from Google Cloud Datastore to Google Cloud Storage. Intended to be used from Google App Engine.

Usage

>>> import datastore_to_gcs
>>> from google.appengine.ext import ndb
>>>
>>> class Foo(datastore_to_gcs.BaseModel):
...     email = ndb.StringProperty()
...
>>> f = Foo(email='a@b.com')
>>> f.put()
Key('Foo', 1)
>>> datastore_to_gcs.update(Foo, 'bucket-name', 'foo.json')
>>> f2 = Foo(email='b@b.com')
>>> f2.put()
Key('Foo', 2)
>>> import datastore_to_gcs.cloud_storage as gcs
>>> gcs.download_object('bucket-name', 'foo.json')
[{u'last_modified': u'2017-06-19T18:02:01.332908', u'email': u'a@b.com', u'id': 1}]
>>> datastore_to_gcs.update(Foo, 'bucket-name', 'foo.json')
>>> gcs.download_object('bucket-name', 'foo.json')
[{u'last_modified': u'2017-06-19T18:02:01.332908', u'email': u'a@b.com', u'id': 1}, {u'last_modified': u'2017-06-19T18:03:09.342067', u'email': u'b@b.com', u'id': 2}]
>>>
>>>
>>> class Message(datastore_to_gcs.BaseModel):
...     text = ndb.StringProperty()
...
>>> m1 = Message(text='hello 1')
>>> m1.put()
Key('Message', 3)
>>> datastore_to_gcs.dump_log(Message, 'bucket-name', 'messages/')
'2017-06-19T18:05:07.json'
>>> m2 = Message(text='hello 2')
>>> m2.put()
Key('Message', 4)
>>> m3 = Message(text='hello 3')
>>> m3.put()
Key('Message', 5)
>>> datastore_to_gcs.dump_log(Message, 'bucket-name', 'messages/')
'2017-06-19T18:06:02.json'
>>> gcs.download_object('bucket-name', 'messages/2017-06-19T18:05:07.json')
[{u'text': u'hello 1', u'last_modified': u'2017-06-19T18:04:33.558426', u'id': 3}]
>>> gcs.download_object('bucket-name', 'messages/2017-06-19T18:06:02.json')
[{u'text': u'hello 2', u'last_modified': u'2017-06-19T18:05:35.084417', u'id': 4}, {u'text': u'hello 3', u'last_modified': u'2017-06-19T18:05:50.859952', u'id': 5}]

Contributing

Pull requests welcome! https://github.com/SocosLLC/datastore-to-gcs

About Socos

Socos LLC is the company behind Muse.

Muse brings your child’s everyday experiences to life and supports their development through research-based activities. Muse gives you insights into your child’s development and shows you what you can do each day to support their growth.

Release files for datastore-to-gcs 0.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for datastore-to-gcs 0.3
File Size Uploaded
datastore-to-gcs-0.3.tar.gz 6.4 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for datastore-to-gcs 0.3
File Interpreter ABI Platform
datastore_to_gcs-0.3-py2-none-any.whl Python 2 none any Details

Total release size: 15.5 kB

Release files / datastore-to-gcs-0.3.tar.gz

Download URL datastore-to-gcs-0.3.tar.gz
Size 6.4 kB
Tags Source
SHA-256 checksum
How to use checksums
6d9335b5c8371e6cdfbb9d210f5bb4b8b2b790356e052cfebd2e0487e6b81811
BLAKE2b-256 checksum
How to use checksums
df41e218bf5e5ae4da8a65c44c0eeb4eac97cddc8cd9d996f801ec2a87775178
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release files / datastore_to_gcs-0.3-py2-none-any.whl

Download URL datastore_to_gcs-0.3-py2-none-any.whl
Size 9.1 kB
Tags Python 2
SHA-256 checksum
How to use checksums
5779d670572d422cd0e4e89b55f99587dfe7da19cfda4dc724c82c9a4abefc77
BLAKE2b-256 checksum
How to use checksums
ad4653d8675566cce2545c25b277db0523869689b4b47dcafa730a3b03bd04be
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release history Release notifications | RSS feed

This release

0.3 This release

2 release files

0.2

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page