PHP Library for Cloud Datastore 2.0 Production Release

86 views
Skip to first unread message

Tom Walder

unread,
Aug 4, 2015, 5:30:55 PM8/4/15
to Google App Engine

Enjoy!

New features in 2.0 include 

  • Faster - use of Google Protocol Buffer allows faster, low-level access to Datastore
  • Easier to use - sensible defaults and auto-detection for AppEngine environments
  • Less dependencies - no need for the Google PHP API Client, unless running remote or from non-AppEngine environments
  • Local development - Using the Protocol Buffers allows us to access the development server Datastore
  • Local GQL support - By default, the local development server does not support GQL. I've included a basic GQL parser that makes this work.
  • Data Migrations - leverage multiple Gateways to ship data between local and live Datastore
  • Contention Exceptions - standardised Exception for handling Datastore transaction contention`
  • Unit tests
  • Optional drop-in JSON API Gateway for remote or non-AppEngine environments (this was the only Gateway in 1.x)

Anthony Shapley

unread,
Aug 5, 2015, 12:55:25 AM8/5/15
to Google App Engine
Hi Tom,

This sounds excellent - just so I am nor misreading, this no longer requires the Google API, so could this be used on AppScale for example?

Ant

Tom Walder

unread,
Aug 5, 2015, 3:24:24 AM8/5/15
to google-a...@googlegroups.com
Yes, I believe you could run this on AppScale.

Whilst I have not done so myself, my understanding is that AppScale exposes the same Protocol Buffer APIs that AppEngine does.

--
You received this message because you are subscribed to a topic in the Google Groups "Google App Engine" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/google-appengine/VUBSVMW4V84/unsubscribe.
To unsubscribe from this group and all its topics, send an email to google-appengi...@googlegroups.com.
To post to this group, send email to google-a...@googlegroups.com.
Visit this group at http://groups.google.com/group/google-appengine.
To view this discussion on the web visit https://groups.google.com/d/msgid/google-appengine/34ae4d07-9e5a-499b-8f0f-439e54dac3fd%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


--
Tom Walder, CTO
Call: 0845 521 0444 / Webwww.docnet.nu
This message is private and confidential. If you have received this message in error, please notify us and remove it from your system. Venditan Limited t/a Docnet is a company registered in England and Wales. Registered number: 9604502. Registered office: Speakers House, 39 Deansgate, Manchester, M3 2BA

Anthony Shapley

unread,
Aug 5, 2015, 3:44:51 AM8/5/15
to Google App Engine, t...@docnet.nu
Hi Tom,

Thanks for coming back to me - thats really awesome, I'll give it a test and let you know. Thanks so much for sharing this I've just started rewriting my entire code base into Python after writing everything in PHP (using your original library).

This means I can potentially just carry on as is!

Ant


On Wednesday, 5 August 2015 08:24:24 UTC+1, Tom Walder wrote:
Yes, I believe you could run this on AppScale.

Whilst I have not done so myself, my understanding is that AppScale exposes the same Protocol Buffer APIs that AppEngine does.



On Wednesday, August 5, 2015, Anthony Shapley <ant.s...@gmail.com> wrote:
Hi Tom,

This sounds excellent - just so I am nor misreading, this no longer requires the Google API, so could this be used on AppScale for example?

Ant

On Tuesday, 4 August 2015 22:30:55 UTC+1, Tom Walder wrote:

Enjoy!

New features in 2.0 include 

  • Faster - use of Google Protocol Buffer allows faster, low-level access to Datastore
  • Easier to use - sensible defaults and auto-detection for AppEngine environments
  • Less dependencies - no need for the Google PHP API Client, unless running remote or from non-AppEngine environments
  • Local development - Using the Protocol Buffers allows us to access the development server Datastore
  • Local GQL support - By default, the local development server does not support GQL. I've included a basic GQL parser that makes this work.
  • Data Migrations - leverage multiple Gateways to ship data between local and live Datastore
  • Contention Exceptions - standardised Exception for handling Datastore transaction contention`
  • Unit tests
  • Optional drop-in JSON API Gateway for remote or non-AppEngine environments (this was the only Gateway in 1.x)

--
You received this message because you are subscribed to a topic in the Google Groups "Google App Engine" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/google-appengine/VUBSVMW4V84/unsubscribe.
To unsubscribe from this group and all its topics, send an email to google-appengine+unsubscribe@googlegroups.com.
To post to this group, send email to google-appengine@googlegroups.com.

Tom Walder

unread,
Aug 5, 2015, 4:16:49 AM8/5/15
to Google App Engine, t...@docnet.nu
Great - I'd be really interested to find out how you get on with running it on AppScale.

Anthony Shapley

unread,
Aug 5, 2015, 9:58:16 AM8/5/15
to Google App Engine, t...@docnet.nu
Hi Tom,

I've tried porting over a basic insert - but it keeps returning this error: 

Fatal error: Class 'GDS\Gateway\ProtoBuf' not found in /Users/anthonyshapley/Desktop/test/api/datastore/GDS/Store.php on line 81

Thanks
Anthony

Anthony Shapley

unread,
Aug 5, 2015, 10:04:55 AM8/5/15
to Google App Engine, t...@docnet.nu
Doh, ignore that .. need to include the gateway files now!
Reply all
Reply to author
Forward
0 new messages