MongoDB Nedir ?

Günümüzde veri boyutlarının hızla artması alışıla gelmiş ilişkisel veri tabanı modellerinin yetersiz kalmasına ve NOSQL (Not Only SQL) veri tabanı modellerinin popülarite kazanmasına sebep olmuştur. Bu yazımızda en çok kullanılan NOSQL veri tabanı yönetim sistemlerinden olan MongoDB’yi inceleyeceğiz. MongoDB 11 Şubat 2009 tarihinde MongoDB Inc. firması tarafından C++ programlama dili ile geliştirilen ilişkisel olmayan NOSQL açık kaynak kodlu verileri JSON benzeri belgelerle dinamik şema ile depolayan veri tabanı uygulamasıdır. RDBMS (İlişkisel Veri Tabanı Yönetim Sistemi) verileri birbirleri ile ilişkilendirerek depolama imkanı sağlamaktadır. (Oracle SQL, MsSQL, MySQL, PostreSQL gibi) Gelenekselleşmiş yöntem olan RDBMS, verileri genel olarak satır ve sütundan oluşan tablo şemalarıyla kaydetmekte, tablolar arasında ise ilişki kuracak şekilde birbirleri ile bağlantılı olmasını sağlamaktadır. RDBMS, verileri belirli kurallara (şemalara) bağlı kalarak depolar. Aynı zaman da bu yöntem de veriler parçalı değil bütünsel olarak kaydedilmektedir. Belirli kalıpları olduğu için esneklik özelliğinden çok fazla söz edemeyiz. Veri okuma, yazma ve belirleme işlemlerinde bütünsel […]

MongoDB Nedir ?

Günümüzde veri boyutlarının hızla artması alışıla gelmiş ilişkisel veri tabanı modellerinin yetersiz kalmasına ve NOSQL (Not Only SQL) veri tabanı modellerinin popülarite kazanmasına sebep olmuştur. Bu yazımızda en çok kullanılan NOSQL veri tabanı yönetim sistemlerinden olan MongoDB’yi inceleyeceğiz.

MongoDB 11 Şubat 2009 tarihinde MongoDB Inc. firması tarafından C++ programlama dili ile geliştirilen ilişkisel olmayan NOSQL açık kaynak kodlu verileri JSON benzeri belgelerle dinamik şema ile depolayan veri tabanı uygulamasıdır.

RDBMS (İlişkisel Veri Tabanı Yönetim Sistemi) verileri birbirleri ile ilişkilendirerek depolama imkanı sağlamaktadır. (Oracle SQL, MsSQL, MySQL, PostreSQL gibi)

Gelenekselleşmiş yöntem olan RDBMS, verileri genel olarak satır ve sütundan oluşan tablo şemalarıyla kaydetmekte, tablolar arasında ise ilişki kuracak şekilde birbirleri ile bağlantılı olmasını sağlamaktadır. RDBMS, verileri belirli kurallara (şemalara) bağlı kalarak depolar. Aynı zaman da bu yöntem de veriler parçalı değil bütünsel olarak kaydedilmektedir. Belirli kalıpları olduğu için esneklik özelliğinden çok fazla söz edemeyiz. Veri okuma, yazma ve belirleme işlemlerinde bütünsel olduğu için NOSQL’e göre bu işlemler daha yavaştır. Günümüzde veriler her saniye her dakika artmakta olduğundan bu verilere ulaşmada hız çok büyük bir önem kazanmaktadır. İşte bu verilere daha hızlı ulaşmak istediğimizde NOSQL veri yönetim sistemini kullanan MongoDB uygulaması ön plana çıkmaktadır.

MongoDB Özellikleri;

  • MongoDB şemasız JSON veri formatında veriler depolamaktadır.
  • Depolanan verileri aramak için düzenlenebilir arama yöntemleri kullanır.
  • MongoDB kullanılan veri tabanlarının çoğaltılmasına izin vermektedir.
  • MongoDB ölçeklenebilir bir yapıya sahiptir.
  • Verileri depolarken dikey olarak değil yatay olarak depolar.
  • Depolama işlemini büyük parçalar halinde  değil de küçük parçalar halinde gerçekleştirir.
  • Kurallara bağlı olmayan esnek bir yapıda verilerin depolanmasını sağlar.

MongoDB çok sayıda programlama dilini destekler ve çoğu platformda çalışabilir, Mongo sürücüleri çoğu dil için sürücü desteği vermektedir. Başlıcaları şunlardır;

  • C
  • C++
  • C#
  • PHP
  • Python
  • Java
  • Node.js
  • .NET

MongoDB’nin Dezavantajları;

  • Karmaşık işlemler gerçekleştirilemez.
  • Dizinleme işlemi düzenli bir şekilde yapılmadığında aranan verinin bulunması zorlaşabilir.
  • MongoDB, RDBMS sistemlerinde bulunan güçlü bir ACID(Atomicity, Consistency, Isolation ve Durability) bir yapıya sahip değildir.

Sonuç Olarak;

MongoDB gerek yüksek hızlarda veri işlemesine olanak sağlamasından, öğrenim kolaylığından, verileri kopyalayarak çoğaltmasından, çoğu platform için sürücü desteği olması göz önüne alındığında gerçek zamanlı oyunlar, gerçek zamanlı uygulamalar, e-ticaret bazlı ürün uygulamaları, blog ve içerik yönetimi, sosyal ağ uygulamaları ve özellikle çok büyük veriler için ilişkisel veri tabanlarına göre avantajlı konuma geçerek ön plana çıkmaktadır. MongoDB performans olarak Oracle SQL, MySQL ve SQL tabanlı veri tabanlarına göre oldukça hızlı olsa da kuralları ve standartları olmadığı esnek bir yapıda olduğu için önemli verilerin olduğu sistemlerde kullanırken çok dikkatli kullanılması gerekmektedir. MongoDB hızlı veri tabanı yönetimi için ek donanım maliyeti olmadan kullanılabilecek NOSQL bir veri yönetim programı olarak karşımıza çıkmaktadır.

Okuduğunuz için teşekkürler…

Benzer Yazılar

Mongodb Shell Kurulumu

NoSQL 6 ay önce

Bu yazımızda MongoDB kullanmamız için gerekli olan bir başka programımız MongoDB Shell kurulumunu nasıl yapacağız onu anlatacağız. MongoDB Shell en kısa haliyle MongoDB üzerinde veri işlemlerinin çoğunu yaptığımız komut satırı penceresidir. MongoDB Shell uygulaması komutlarla yeni veri tabanı eklediğimiz, bu veri tabanı içerisinde ise yeri veriler, eklediğimiz sildiğimiz değişiklik yaptığımız komut satırı uygulamasıdır diyerek hemen kuruluma geçiyoruz. Tarayıcımızda Google’a girip arama kısmına MongoDB Shell yazıyoruz ve karşımıza çıkan MongoDB Shell Download yazan MongoDB’ye ait siteye giriş yapıyoruz. Giriş yaptıktan sonra MongoDB Shell Download adlı sayfaya geliyoruz, bu sayfa da bilgisayarımızın ve programımıza ait seçimleri gerçekleştiriyoruz, ben bura da versiyonu 1.10.4’ü, platformu Windows 64-bit(8.1+)(MSI)’i, paketide msi seçerek downloanda tıklıyorum. Arkadaşlar bura da seçimlerimizi bilgisayarımızın özelliklerine göre gerçekleştiriyoruz.  Version seçeneği MongoDB Shell’in en son sürümünü seçmemizi, Platform kullandığımız sistem (Windows, MacOS, Debian vb.) hangisi ise onu, Package ise zip formatı mı msi formatı mı olduğunu seçmemize olanak sağlar, Package seçeneğinde msi tercih […]

MongoDB Kurulumu

NoSQL 6 ay önce

Daha önceki yazımızda MongoDB nedir sorusunun cevabını aramıştık bu yazımızda ise MongoDB kurulumunu anlatacağız. MongoDB Linux, Amazon Linux2, Debian, MacOS ve olmazsa olmazımız Windows işletim sistemleri gibi birçok işletim sisteminde sorunsuz olarak çalışmaktadır. Bugünkü yazımızda Windows işletim sistemlerine MongoDB kurulumu yapacağız. Bunun için Windows 64 bit işletim sistemine ihtiyacımız var. Kullandığımız sistemin 32 bit mi 64 bit mi olduğunu anlamak için Masaüstünde bulunan Bilgisayar öğesine sağ mouse ile tıklayarak Özellikler kısmına gireceğiz. Ardından sistem bilgisi menüsünde yer alana sistem türünü kontrol ettiğimizde sistemimiz 32 bit ise MongoDB kurulumu yapılamayacaktır. Sistemimiz 64 bit ise MongoDB kurulumuna devam edebiliriz. Bilgisayarımız da bulunan herhangi bir tarayıcıya (Chrome , Opera) giriyoruz. Buradan Google’a girerek arama kısmına MongoDB download yazıp aratıyoruz. Arama sonuçlarında reklamların ardından çıkan MongoDB Community Server Download adlı arama sonucuna tıklıyoruz. Sonuca tıkladıktan sonra MongoDB Community Server Download adlı sayfaya girdiğimizde MongoDB’nin indirme kısmına geleceğiz burada; Version, Platform ve Package adlı seçim […]

0 Yorum

Yorum Yaz

Rastgele