2010-01-21 23 views
6

Sofadb'deki değişiklik sayısını sınırlamanın bir yolu var mı? Bir yapılandırma dosyasında sabit bir sınır çizgisi boyunca bir şey. Veritabanını periyodik olarak kompanse edebildiğim gerçeğinin farkındayım, ama bir şekilde bir hack gibi hissettiriyor. Daha iyi bir yolu var mı?Couchdb'deki düzeltme sayısını sınırlayın

cevap

7

Öncelikle CouchDB yalnızca ek depolama kullandığından yapılandırılabilir bir sınır yoktur, yani yalnızca bir dosyanın sonuna yazmayı ve hiçbir şeyi ortada hiçbir şey değiştirmeyeceğini vaat eder. Sonuç olarak, yapılandırılabilir bir sınır anlamsızdır.

Sıkıştırma tek seçeneğinizdir. Posta listelerinde otomatik olarak tetiklenen sıkıştırma hakkında biraz konuşma yapıldı ancak şimdilik yalnızca manuel olarak tetiklenebilir.

+0

Tamam, anlıyorum, teşekkürler! – Anvar

+8

Aslında, * belge başına bir veritabanı başına devir sayısıdır. Varsayılan 1000'dir, ancak veritabanının _revs_limit kaynağına bir tamsayı PUT'ing ile değiştirilebilir, ör. "curl http: // localhost: 5984/test/_revs_limit -X PUT -d 50". Yine de disk alanını geri almak için sıkıştırmanız gerekecek, dolayısıyla soruya ilişkin önceki cevabımı gerçekten değiştirmediğinden, daha düşük bir _revs_limit ile biraz daha fazla disk alanı elde edersiniz. Gerçekten ne kadar alan kaydettiğini bilmiyorum ve düşük bir _revs_limit çoğaltmayı etkileyebilir. –

+3

Bu _revs_limit'in sadece sıkıştırmadan sonra ne kadar revizyon * metaverilerinin * saklandığını unutmayın; Önceki revizyonlardan gelen belge verileri, her zaman bu tür bir revizyonun * varlığı * nın _revs_limit kayıtları haricinde, sıkıştırma sırasında her zaman atılır. – natevw