Datastoreの鬼門である集計関数の代わりのカウンター等を実装するとき、sharded counterより高速なものを求めると、「とりあえずmemcacheに書き込んで、cron/TQでDatastoreに非同期に保存する」ような仕組みがほしくなります。カウンターに限らず、「ライトバック付きKVS」があればいろいろな局面で便利そうです。 そこで以下のようなコードを実装しました。 get操作 キーでmemcacheを探して、値があればそれを返す キーでDatastoreを探して、値があればそれを返す nullを返す set操作 キーと値をmemcacheに保存する 「キーリスト」を取得する 「キーリスト」にキーを追加してmemcacheに保存する Cron/TQで呼ばれる保存処理 「キーリスト」を取得して、Datastoreに保存する すべてのキーについて、memcacheのエントリーを