[技術書つまみ食い] 『MongoDB イン・アクション』第五回

[技術書つまみ食い] 『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章は残りわずかだけど、眠いので今日は以上!

カテゴリー: 未分類 パーマリンク

[技術書つまみ食い] 『MongoDB イン・アクション』第五回 への2件のフィードバック

  1. のコメント:

    吸収する人のブログ、また来る訪問あなたのブログより。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください