GAE資料匯出下載教學 – 2. 複製Datastore至另一個GAE應用程式
#2012/01/28更新:#
複製Datastore會消耗來源和接收端的龐大流量,
可能被Google要求費用,不建議使用。
本文僅為參考,操作前請謹慎評估!!
若只是要下載資料,請直接跳至步驟3。
接續上篇,在Eclipse裡新增一個PyDev的GAE專案。
設定新專案的名稱,type選擇Python,
版本選擇2.5,然後選擇建立有src資料夾的專案,點選Next。
這裡要設定GAE的安裝路徑,預設目錄是”C:\Program Files\Google\google_appengine”。
選擇載入所有的函式庫,然後按OK。
這裡要設定GAE的appid,此處範例為”forinkexample”,
然後選了一個Hello World的範例專案,完成,
會問你是否要現在開啟這個專案,當然是Yes。
在src裡面新增一個檔案,命名為appengine_config.py,程式碼如下:
1 |
remoteapi_CUSTOM_ENVIRONMENT_AUTHENTICATION = ('HTTP_X_APPENGINE_INBOUND_APPID', ['{你的來源APP ID}']) |
修改app.yaml,在handlers:段新增:
1 2 3 |
- url: /remote_api script: $PYTHON_LIB/google/appengine/ext/remote_api/handler.py login: admin |
再增加builtins段:
1 2 |
builtins: - remote_api: on |
存檔後,在專案目錄的src右鍵選擇”PyDev:Google App Engine”->”Upload”。
接下來會跟GAE連線,在Send to prompt處輸入Google的帳號和密碼,接著就會開始編譯並上傳。
上傳後可以到http://{你的App Id}.appspot.com/檢查是否成功。
接著,進入來源的GAE後台,到Datastore Admin勾選要複製到其他App的Datastore,按”Copy to Another App”。
將{TARGET_APPID}改為目標GAE的APPID,點選”Copy Entities”。
複製的工作進行中,完成後就會顯示在剛剛所建立的Python GAE專案的Datastore裡,搞定。
接著,要介紹怎樣將資料從GAE上裡抓下來。