Thursday, July 26, 2012

MongoDb 2.2 RC0 Güzel Yenilikler

MongoDb 2.2 versiyonu jira.mongo'daki konular ekseninde bir suredir beta olarak gelistiriliyordu.
Simdi gönül rahatlığıyla güncelleyip kullanabilirsiniz.
Genel yenilikler icin http://docs.mongodb.org/manual/release-notes/2.2/


En bekledigim ozellik TTL collections idi. Redis'de olan TTL index mevzusu epey ozendigimiz bir mevzuydu. Mevzunun detaylarina surdan bakabilirsiniz http://docs.mongodb.org/manual/tutorial/expire-data

Var olan indexlerinize TTL atamak istiyorsaniz silip tekrar olusturmalisiniz.
Capped collection'lar uzerinde uygulayamiyorsunuz (Capped collectionlar hala ayni havadalar. dokunulmaz ama performansli.).

Sunun gibi bir TTL index olusturabilirsiniz.
db.logs.ensureIndex( { "time": 1 }, { expireAfterSeconds: 3600 } )


- Onceki versiyonda bu islemi dakikalik calisan cron scriptlerim ile yapiyordum. Bu scriptlerim expire olmus dokumanlari grup grup siliyor ve saatte bir de collection uzerinde "repair" komutu calistiriyordu.

Onemli bir not "_id" uzerine TTL index olusturamazsiniz.

Konuyu iredelemek icin
Release Notes : http://docs.mongodb.org/manual/release-notes/2.2/
All JIRA Issues resolved in 2.2 :  https://jira.mongodb.org/secure/IssueNavigator.jspa?mode=hide&requestId=10907

Tuesday, July 3, 2012

mongodb - count embeded objects

Bir alana gore embeded objeleri saymak icin su sekilde yapiyorum