ndb 是什麼

目前所知的是: 和我們所熟知的 datastore 類似的東西, 不過功能更強大

例如: item 的欄位可以設定成 PickleProperty()
這種欄位可以將item 在記憶體內的"快照" 原樣複製
儲存在長期記憶裝置裡(有點像把資料"醃漬"), 等要用時再拿出來還原成原本的物件

這邊要釐清的概念有幾個:

1. 不論是 db or ndb 都是綁在 GAE 上頭(from google.appengine.ext import ndb  or  from google.appengine.ext import db) 可以兩者都使用(繼承這兩個 class 的任何一個), 兩者都是用來管理 datastore 不過ndb 釋出的時間更晚, 功能更強

2. 一個GAE 可以綁定Cloud SQL(寫在 settings.py) 用 django admin(需開啟) 來管理 cloud SQL 上的資料, 而Cloud SQL 是一個獨立於GAE 的存在(可設定哪幾台GAE 可以和它相連), 並不一定要連GAE 才能運作

3. Cloud SQL 的資料可以透過程式同步到 GAE 上, 接下來這些資料就是datastore 上的物件了, 由 db or ndb class 作為介面來存取


留言

熱門文章