将Sqlite数据导入Google App Engine
我有一个比较大的sqlite数据库,想把它导入到我的Google App Engine的Python应用里。
我用appengine的API创建了我的模型,这些模型跟现有的数据库结构差不多,但不完全一样。我写了一个导入脚本,用来从sqlite加载数据,并创建和保存新的appengine对象。不过,appengine的环境限制了我访问sqlite库。这个脚本只打算在我本地的app engine实例上运行,然后我希望能把数据推送到Google上。
我是不是在用错方法,还是说在本地环境下有办法导入sqlite库呢?
4 个回答
0
我在导入pysqlite2、读取数据、然后转换数据并通过remote_api写入AppEngine时,没有遇到任何问题。
你遇到了什么错误呢?
1
如果你需要在App Engine环境之外访问你的数据存储(比如说你想用一些App Engine不支持的库,或者做一些其他的事情),那么最好的选择就是使用远程API。
这里有一个很棒的教程,可以帮助你了解如何使用: http://code.google.com/appengine/articles/remote_api.html
简单来说,你需要导入远程API模块,然后通过Google进行身份验证,以便访问你的数据存储。之后,你就可以像在App Engine中一样正常运行数据访问命令(比如查询、更新、删除等)。
5
我会先从Sqlite数据库中制作合适的CSV文件,这个过程会在一个单独的脚本中完成。然后,我会使用批量加载的方法,把这些CSV文件里的数据上传到应用引擎上。