Is it possible to create AppEngine-independent applications with Python NDB API? I need to host some basic scripts with database on AE, but I don't want to vendor lockin into the service.
Asked
Active
Viewed 178 times
0

Dan McGrath
- 41,220
- 11
- 99
- 130

anatoly techtonik
- 19,847
- 9
- 124
- 140
-
But you will lock yourself into using Google Datastore anyway. – Dmytro Sadovnychyi Sep 02 '15 at 10:44
-
NDB is not a database. – user2266449 Sep 03 '15 at 14:28
-
@user2266449 yes, it is Python API. – anatoly techtonik Sep 03 '15 at 15:09
-
@DmitrySadovnychyi, why I lock myself into it? Are there parts in API are hardcoded to Google services? – anatoly techtonik Sep 03 '15 at 15:10
-
2The only one way of migration from gae using ndb is to appscale – Dmytro Sadovnychyi Sep 04 '15 at 08:56
2 Answers
1
NDB was designed and built on App Engine. Turning it in to something portable would be a research project.

Dave W. Smith
- 24,318
- 4
- 40
- 46
-
I don't see any limitations why NDB based app won't run on other NoSQL DB. – anatoly techtonik Sep 05 '15 at 22:37
-
-
That research project would probably start here: https://github.com/GoogleCloudPlatform/datastore-ndb-python :) – Brian M. Hunt Aug 19 '16 at 13:37
1
You could use no DB at all if you don't need to store data, or you can use Cloud SQL which is really a mysql like instance for your application. In any case, if you use AppScale you can move your App Engine application whereever you want, thus there is no vendor lock-in.

graziano
- 342
- 1
- 4
-
I want to use Python NDB API for other database than AppEngine. – anatoly techtonik Sep 16 '15 at 22:14
-
If you want to stay withing GAE, I'm not quite sure how you can use the NDB API to get to a different DB. Perhaps with remote API and simiar, If you want to go the AppScale route, you can use Cassandra right away (AppScale's default), or implement your own DB within it (AppScale used to support 12 DBs). – graziano Sep 20 '15 at 20:09
-
I don't want to stay within GAE. I want to write platform-independent app that doesn't use any platform specific features if possible. – anatoly techtonik Sep 24 '15 at 07:33