MongoDB, genel amaçlı, belge tabanlı dağıtılmış bir veritabanıdır, bu da ilişkisel bir veritabanı ile ilişkili olmayan (NoSQL) bir veritabanı arasında bir ürün olarak yer alır. İlişkisel olmayan veritabanları arasında en zengin özelliklere sahip ve ilişkisel veritabanı benzeridir.

Bir MongoDB belge örneği

{
  "_id": "5cf0029caff5056591b0ce7d",
  "firstname": "Jane",
  "lastname": "Wu",
  "address": {
    "street": "1 Circle Rd",
    "city": "Los Angeles",
    "state": "CA",
    "zip": "90404"
  },
  "hobbies": ["surfing", "coding"]
}

Özel bir şey yok, sadece bir JSON verisi parçası. MongoDB'de depolanan belge verisi, bu JSON verisine benzer. JSON verisi depolandığı için, MongoDB'de depolanan veri formatı çok esnektir. Bir tablo yapısının sabit olması gereken MySQL'in aksine, bu da demektir ki herhangi bir zamanda alan ekleyebilir veya silebilirsiniz ve hız da çok hızlıdır.

İpucu: İşiniz karmaşık işlemler, birleştirmeler ve veri tutarlılığı için yüksek gereksinimler içermiyorsa ve sadece hızlı veri okuma ve yazma, yüksek eşzamanlılık, esnek ve serbest depolama formatlarına önem veriyorsanız ve önceden tablo yapılarını tanımlamaya ihtiyacınız yoksa, MongoDB iyi bir seçenektir.

MongoDB'nin Özellikleri

Yüksek Performans

MongoDB, yüksek performanslı veri kalıcılığı sağlar. Özellikle,

  • Gömülü bir veri modeli kullanarak veritabanı sisteminin G/Ç işlemlerini azaltabilir.
  • İndekslemeyi destekler, bu nedenle sorgu verimliliği çok yüksektir ve endekslenmiş alanlar gömülü belgelerin alanları veya dizilerin anahtarları olabilir.

Zengin Sorgu Dili

MongoDB, çeşitli iş sorgu senaryolarını karşılamak için zengin bir sorgu ifadeleri kümesini destekler.

Coğrafi Sorguları Desteği

O2O işletmeleri ve konumla ilgili işletmeler için sık coğrafi sorgulara ihtiyaç vardır, bu tür sorguların yanı sıra yakındaki mağazaları sorgulama, yakındaki insanları sorgulama veya ticari bir bölgede olup olmadığınızı belirleme gibi. Tüm bunlar coğrafi geri alma desteği gerektirir.

Yüksek Kullanılabilirlik

MongoDB'nin replika kümesi sağlar:

  • Otomatik yeniden dengeleme
  • Veri yedekliliği

Bir replika kümesi, aynı veri kümesini koruyan bir grup mongod örneğidir, veri yedekliliği ve yüksek kullanılabilirlik desteği sağlar.

Yatay Ölçeklenebilirlik

MongoDB, yatay ölçeklenebilirliği destekler. Sharding kullanarak veriler bir makine kümesi üzerinde dağıtılır.