couchdb + datamapper
筆記,現有的不能用
1. 用 /_uuids?count=100 跟 couchdb 取 uuid
不過取一筆就好,省得還要維護 state.
因此產生新資料需要 GET + PUT
修改的話也需要 GET + PUT, 前者取 rev,
可以不用在一個 end-user http request 中做。
0.9.1 版看起來是隨機的 md5 值。
不用 serial 因為這方法 overhead 似乎有點高。
collision 時?就重抓 uuid, 這邊做遞迴。
暫時不考慮深度,會碰撞到跑不完應該有點扯...
大不了要求 couchdb 把 md5 換 sha1, 甚至 sha256 @@
2. 每一個 relationship 都要建立一個 view,
根據這篇的方法: CouchDB "Joins"
因此需要 auto_migrate! 或 auto_upgrade! 來建立 view.
只需要用在 has n 上面, belongs_to 不需要。
3. dm-rest-adapter 完全不能用...
dm-couchdb-adapter 看起來過期了,
所以大概是參考他和 0.10 的 AbstractAdapter 做一份。
4. 不知道 Net::HTTP 是不是 thread-safe...
5. many to many 的 relationship 暫時還沒考慮。
依照 view 這麼強大的彈性,很可能不需要?
0 retries:
Post a Comment
Note: Only a member of this blog may post a comment.