[技術書つまみ食い] 『MongoDB イン・アクション』第四回 の続きです。
4章 ドキュメント指向データ
写経コード管理用 git
とりあえず立てたので、じゃんじゃん突っ込んでいくことにします。
yancya/mongodb_in_action
キャップ付きコレクション
require 'mongo'
VIEW_PRODUCT=0
ADD_TO_CART =1
CHECKOUT =2
PURCHASE =3
@con = Mongo::Connection.new
@db = @con['garden']
@db.drop_collection("user.actions")
@db.create_collection("user.actions", capped: true, size: 1024)
@actions = @db['user.actions']
40.times do |n|
doc = {
username: "kbanker",
action_code: rand(4),
time: Time.now.utc,
n: n
}
@actions.insert(doc)
end
12行目で size: 1024 と指定する事で、このコレクションの最大サイズを 1024 バイトに制限しています。
この制限サイズを超えると、古いレコードから順に消去されていく仕組みです。
とりあえずまとめ
とりあえずキャップ付きコレクションの動作だけ確認したけれども、本当にフローなデータを取り扱うことに集中した機能だなと思う。
トランザクションとかロールバックってどうするのか気になる。きっとこの先に書いてあるよね。
4章は残りわずかだけど、眠いので今日は以上!
吸収する人のブログ、また来る訪問あなたのブログより。
原様
コメント、ありがとうございます
今後もがんばって更新します