BootcampHackathonHiring ChallengeTüm Etkinlikler
İş İlanlarıEğitimlerŞirketler

NoSQL

NoSQL, verileri ilişkisel olmayan türde saklayan veritabanı sistemleridir. Verileri sabit şemalar içerisinde tutmaz. Yapılandırılmamış ya da yarı yapılandırılmış verileri sorgulamak için tercih edilir. SQL kelimesi “Structered Query Language” olarak ifade edilen “Yapılandırılmış Sorgu Dili” kelimelerinin kısaltılmasından oluşur. NoSQL ise “Not only SQL” kelimelerinin kısaltılmasından oluşur.

NoSQL Nedir?

NoSQL, büyük hacimde dağınık yapıdaki verileri işleyebilen veritabanı sistemleridir. Sadece bir veri tabanı sistemi değildir. Yapılandırılmamış veriler ile ilgilenir. Yapılandırılmış veriler, herhangi bir veri, veri tabanında saklanırken nesne-tablo gibi ilişkiler içerisinde saklanır. Yapılandırılmamış veri demek, bu ilişkinin kurulmadığı alakasız verilerdir. Alakasız verilerden alakalı veriler elde etmeye yardımcı olur. Bu sayede esnek veri modelleme imkânı sunar. Grafik, simülasyon gibi sonuçlara daha hızlı cevap verir. NoSQL kullanım amacı yüksek ölçeklenebilir ve erişilebilir sistemler kurmaktır. Gerçek zamanlı veri sorguları yapan sistemler için uygundur. Standart SQL sorgu dili yerine kendine özel sorgulama mantığı vardır.

NoSQL Nasıl Çalışır?

NoSQL, aralarında ilişki olmayan veri tabanlarından veri okuyan ve yöneten veri modelleri kullanır. Geleneksel veritabanı sistemleri verileri yapılandırıp, ilişkisel olarak tablo ve satırlara kaydeder. NoSQL, tablo, satır gibi şablonlardan bağımsız ortamlardan verileri okuyabilir. İlişkisiz veriler arasında elde edilecek veriye göre anlamlı bir sonuç ortaya çıkarır. Bu sayede sorgulara düşük gecikme süresi ile cevap alabilirsiniz.

NoSQL Avantajları

Modern uygulamalar NoSQL avantajları ile birçok sorunu çözer. Örneğin, sosyal medya uygulamaları verileri NoSQL veri tabanlarında saklar. Standart SQL veri tabanlarında performans sorununa neden olabilen yedeklilik, veri üretme gibi durumlar çözülmüş olur. NoSQL avantajları ise bunlardır:

  • Yazılımların aradığı esnek ve yinelemeli veri okuma imkânı sunar.
  • Dağıtık sistemler üzerinden çalışabilmesi sayesinde sistem öngörülebilir ve ölçeklenebilir.
  • Verileri ilişkisel olmayan veri tabanlarından okunmasını sağladığı için ilişkisel veri tabanlarına göre yüksek performanslıdır.
  • Standart SQL dili yerine sisteme özel sorgu dili kullanarak işlevsel fonksiyonlar oluşturmaya yardımcı olur.
  • Veriler tablo, satır gibi sabit bir şablon yerine şema kullanmadan saklanır, şemasız verileri okuyabilir.
  • HTTP, JSON gibi yaygın kullanılan metin protokolleri kullanarak API erişimleri kolay ve basittir.

NoSQL ile SQL Arasındaki Farklar

NoSQL ile SQL kullanım amaçları benzer olsa da arasında bazı farklar bulunur. Gelin bu farka bir örnek üzerinden bakalım. Bir SQL veri tabanında kitap ile ilgili “Kitap Adı”, “ISBN”, “Yazar”, “Yayınevi”, “Sayfa Sayısı” değerler, “Kitaplar” adında bir tabloda bulunsun. Bu tablo aynı zamanda yazar bilgilerinin bulunduğu “Yazarlar” adında ve yayınevi bilgilerinin bulunduğu “Yayınevleri” adında tablolar ile ilişkili olmalıdır. Yani, SQL veri tabanlarında bir tablo içerisinde bir nesne için özel değerler bulunurken ID gibi anlamsız ya da genel değerler harici tablolara referans verir. Tablolar arası ilişki SQL ile kurulur.

Aynı örnek üzerinden NoSQL veritabanını incelerseniz, kitap bilgilerinin bir belgede etiket yapısında saklandığını görebilirsiniz. Genel ve özel değerler aynı belge içerisinde toplanır. İstenildiği zaman niteliklerde ekleme çıkarma yapılabilir. Başka bir belgeyle ilişkilendirmeye gerek olmadan veriler okunabilir, yönetilebilir.

NoSQL Kullanım Örnekleri

NoSQL veri hacminin büyük olduğu, performans odaklı sistemler için tercih edilir. Sosyal medya uygulamalarından gerçek zamanlı veri analizine kadar birçok alanda NoSQL veri tabanı kullanılır. Gelin NoSQL kullanım örneklerine NoSQL türleri üzerinden bakalım:

  • Anahtar/değer: Sorguların önceden cevaplandırıldığı, önbellekli çalışan veritabanı sistemleridir. En sık kullanılan örneği, Redis uygulamasıdır. Redis, ilişkisel ve ilişkisel olmayan veritabanları ile birlikte çalışarak, web servisinin sorgularının güncel yanıtlarını her an sorgulanacak gibi hazırda bekleten bir NoSQL veritabanı sistemidir.
  • Döküman: Verileri oluşturma-okuma-yazma-silme operasyonlarına uygun XML, JSON, BSON gibi belge formatlarında saklayan veri tabanlarıdır. Elasticsearch, MongoDB doküman türü NoSQL veri tabanı örnekleridir.
  • Grafik: Verilerin düğümlerin arasında bağlantı kurularak saklandığı veri tabanlarıdır. Sahtecilik tespit etme, rezervasyon, sosyal medya analizi gibi uygulamaları için uygundur. Neo4j, FlockDB grafik veri tabanı örneklerinden bazısıdır.
  • Geniş sütun: Şemasız yapıda satırın önemsiz olduğu sütun genişletme formatında verilerin tutulabileceği veri tabanlarıdır. Sütun odaklıdır. Örnek olarak, Cassandra bunlardan biridir.
Bir sonraki kelime:
Null
Yazılım geliştirme dünyasında sıkça karşılaşılan kavramlardan biri "null" terimidir.

Ücretsiz eğitimlerimiz seni bekliyor.

Her biri alanında uzman eğitmenler tarafından hazırlanmış eğitimlerimizden sana uygun olanı keşfedip, hemen eğitime başlayabilirsin. Süre kısıtlaması olmayan eğitimlerimizi, hiç bir ücret ödemeden hemen keşfetmeye başla.

TECHCAREER

Hakkımızda
techcareer.net
Türkiye’nin teknoloji kariyeri platformu

SOSYAL MEDYA

TwitterInstagramLinkedinYoutubeFacebook

tr


en

Tüm hakları saklıdır
© Copyright 2024
support@techcareer.net
İşkur logo

Kariyer.net Elektronik Yayıncılık ve İletişim Hizmetleri A.Ş. Özel İstihdam Bürosu olarak 31/08/2024 – 30/08/2027 tarihleri arasında faaliyette bulunmak üzere, Türkiye İş Kurumu tarafından 26/07/2024 tarih ve 16398069 sayılı karar uyarınca 170 nolu belge ile faaliyet göstermektedir. 4904 sayılı kanun uyarınca iş arayanlardan ücret alınmayacak ve menfaat temin edilmeyecektir. Şikayetleriniz için aşağıdaki telefon numaralarına başvurabilirsiniz. Türkiye İş Kurumu İstanbul İl Müdürlüğü: 0212 249 29 87 Türkiye iş Kurumu İstanbul Çalışma ve İş Kurumu Ümraniye Hizmet Merkezi : 0216 523 90 26