NOSQL Nedir? Nasıl Kullanılır?

NoSQL veritabanları, belirli veri modelleri için özel olarak tasarlanmıştır. 27 Haziran 2019

NoSQL Nedir?

 

NoSQL veritabanları, belirli veri modelleri için özel olarak tasarlanmıştır ve modern uygulamalar oluşturmaya yönelik esnek şemalara sahiptir. NoSQL veritabanları uygun ölçekte geliştirme kolaylığı, işlevselliği ve performansıyla geniş çaplı kabul görmüştür. Belge, grafik, anahtar-değer, bellek içi ve arama dahil olmak üzere çeşitli veri modelleri kullanır. 

 

NoSQL (ilişkisel olmayan) Veritabanları Nasıl Çalışır?

 

- İlişkisel bir veritabanında genellikle bir kitap kaydı gizlenerek (veya “normalleştirilerek”) ayrı tablolarda depolanırken, ilişkiler birincil ve yabancı anahtar kısıtlamaları tarafından tanımlanır. Bu örnekte Books (Kitaplar) tablosu ISBN, Book Title (Kitap Başlığı) ve Edition Number (Baskı Sayısı) sütunlarına; Authors (Yazarlar) tablosu AuthorID (Yazar Kimliği) ve Author Name (Yazar Adı) sütunlarına; Author-ISBN (Yazar-ISBN) tablosu ise AuthorID (Yazar Kimliği) ve ISBN sütunlarına sahiptir. İlişkisel model, veritabanının yedekliliği azaltacak şekilde normalleştirilmiş ve genel olarak depolama için optimize edilmiş tablolar arasında başvurusal bütünlük uygulamasına imkan tanıyacak şekilde tasarlanmıştır.

- Bir NoSQL veritabanında, kitap kaydı genellikle bir JSON belgesi olarak saklanır. Her kitap için öğe, ISBN, Book Title (Kitap Başlığı), Edition Number (Baskı Sayısı), Author Name (Yazar Adı) ve AuthorID (Yazar Kimliği) bilgileri tek bir belgede öznitelikler olarak depolanır. Bu modelde, veriler sezgisel yazılım geliştirme ve yatay ölçeklenebilirlik için optimize edilir.

 

 

NoSQL veritabanı özellikleri;

 

- SQL sorgulama arayüzü ve bildiğimiz SQL sorguları ile çalışmıyor olmaları (Sorgulama arayüzleri değişkenlik gösteriyor. JSON, REST, RPC vb.. şeklinde farklı API’lerle sorgulanabilen versiyonlar mevcut. RavenDB ise tamamen LINQ ile sorgulanabiliyor!)

- Çok-ögeli (tuple) sabit ilişkisel şemalar yerine veri tipleri önceden belirlenmemiş ve genişletilebilir veri şeması kullanıyor olmaları

- Özellikle yatay ölçeklendirmeye göre tasarlanmış olmaları (Facebook, Google, Amazon gibi her gün terabaytlarca veriyle haşır olan devlerin NoSQL veritabanlarını tercih etmesinin ana nedenlerinden)

- Veriyi disk ya da sadece hafızada taşıyabilir olmaları

 

NoSQL ile çalışırken alışmış olduğumuz ilişkisel veritabanlarımızdaki gibi verilerimizi satır satır saklamaya ve diğer tablolarla ilişkilendirip tanımlamalarımızı yapmıyoruz.Veriler JSON ya da XML formatında saklanıyor.

Ancak burada dikkat edilmesi gereken nokta NoSQL, Fire and Forget prensibi ile çalıştığı için bankacılık vb. kritik uygulamalarda kullanılmamalıdır. Aksine verinin 100% önemli olmadığı durumlarda kullanılabilir.

 

Sorgular nasıl çalışır?

 

db.news.remove() 

// news isimli collection'ı tamamen siler.

 

 db.news.find({'post_date': '2012-07-21'})

// 21.07.2012 tarihinde yazılmış olan haberleri listeler. 

 

db.news.find({'post_date': '2012-07-21'}, {'is_active': true}) 

// 21.07.2012 tarihinde yazılmış olan aktif haberleri listeler.

Benzer Blog yazıları

Laravel Nedir? Nasıl Kullanılır?

Laravel Nedir?   Laravel, PHP dili ile yazılmış ve en çok kullanılan framework’tür.. Taylor Otwell önderliğinde geliştir...Devamı…

503 Service Unavailable Hatası Nedir? Nasıl Düzeltilebilir?

503 Service Unavailable hatası, web sitesinin sunucusunun şu anda kullanılamadığı anlamına gelen bir HTTP durum kodudur . Çoğu zaman, sunu...Devamı…

Java Sunucusu Sayfası

Java Sunucusu Sayfası (JSP), Web sayfasında gönderilmeden önce Web sayfasını değiştirmek için Web sayfasında belirtilen ve Web sunucu...Devamı…

COOKIE(Çerez) Nedir?

İlk olarak 13 Ekim 1994'te Netscape 0.9 ile tanıtıldı, bir çerez, belirli bir web sitesine göz atarken bilgisayarınıza kaydedilen az m...Devamı…

Hızlı İletişim
Hızlı İletişim+90 212 347 33 11info@ata.com.trTeklif İste
Teklif İste