2011-02-07 22 views
8

Sadece ben inşa çok basit php script ile benim yeni Mongo veritabanında benim Mysql veritabanı (boyutu 2,8 Mio) içe içe hatasız Tamam ama (RockMongo ile) benim Mongo veritabanını baktığınızda Bunu görebiliyorum: Veri Boyutu 8.01m, Depolama Boyutu 13.7m.MongoDB için normal boyut mu?

MongoDB bu normaldir, aynı miktarda veri için MySQLdaha büyüktür?

Yardımlarınız için teşekkürler ve ingilizcem için özür dilerim.

+2

8.01/2.8 = 2.86x değil 10x –

cevap

13

Evet, "aynı" verilerin mongodb'de daha fazla yer kaplaması normaldir. Eğer dikkate almak gereken birkaç şey vardır:

1) bunun için kendi değerinizi) belirterek sürece doc başına 12 bayt (her belge için ise depolanan belge _ID
2) depoladığınız her bir belgedeki her bir anahtar/değer çiftinin anahtarı, MySql'de sütun adı her satır için saklanmaz, böylece mongodb belgelerinizde bu fazladan ek yükünüz olur. Bu azaltmanın bir yolu dokümanlarınızdan
3) anahtar adları ("sütun adları") kısaltılmış kullanmak için mongodb otomatik ile, belgeler MongoDB SQL Server, benzer testlerde yükleme verilerini

büyümeye izin dolgu ekler SQL Server'a göre tam isimler yerine 2 karakterlik belge anahtar isimlerini kısaltılmış, MongoDB'de kullanılmakta olan yaklaşık% 25-30 ekstra alanı görüyorum.

+0

Oh tamam, zaten "1" (_id) hakkında düşünmüştüm ama her şey iyi değil, kulağa mutlu "2" hakkında değil, çok teşekkür ederim :) – Tahola