DataBase

NoSQL Nedir ? NoSQL Avantajları ve Dezavantajları

NoSQL Tarihçesi:

NoSQL neredeyse yeni denecek kadar kısa zaman içinde duymaya başlasakta veya popiler oldu demek doğru olur. 1998 yılında  Carlo Strozzi abimiz tarafından ortaya atılmış bir kavramdır. Strozzi bu sisteme, “ilişkisi olmayan” anlamında “No Relation (NoREL)” gibi bir isim konulması daha doğru olacağını söyler.

 

Nedir NoSQL

Evet ismini kafa karıştırdığı doğrudur.. NoSQL bana hep biraz korkunç gelmiştir SQL YOK gib bir kavram, ancak ilgi de uyandırıyor inceden. Araştırınca zaten “Not Only Sql” sadece sql değil, gibi anlamında kullanıldığını öğrenince rahatlıyorsun :), bu ismi seçilmesinin en büyük sebebide bence tabiki reklam ve ilgi uyandırmak, ki başarılı da. NoSQL için önerilen bir kaç isim daha vardır. NonRel, NoRDBMS’dir.

 

NoSQL, ilişkisel veritabanı sistemlerine RDBMS (Relational Database Management System) alternatif bir çözüm olarak çıkmıştır. En çok anlatılan özelliği, yatay olarak ölçeklendirilen bir veri depolama sistemidir. İnternet kullanımın artması ile, web ortamında saklanan datalar da büyüdü. Büyüyen datalar ile ilişkisel veri tabanlarındaki yapı ile oynamak, güncellemek, işleri çoğu zaman çok zora soktu, hatta maliyetleride katladı. NoSQL tabanlı veri tabanlarında, bu tarz değişiklikler çok fazla yük arz etmezler.  Nedeni ise NoSQL sistemlerde tablo ve sütun kavramının olmamasıdır. Sunucu bazlı çoğalma gayet basittir.


Bu aşamadan sonra sanmayın ki en "yi veri depolama yöntemi NoSQL", kesin buna geçmeliyiz, tüm ilişkisel veri tabanları ölsün!. Aslında en başa denmesi gereken bir olay vardı atladık, veritabanı seçimi, iş modeline göre yapmak en doğru karardır.  Bir alışeri veya ödeme sistemi veya banka gibi hesabın doğruluğu ve bir biri ile çok ilişkili yapılarda kullanılması önerilmiyor. NoSQLFire and Forget” Ateşle ve Unut prensibi ile çalıştığı için, saklanacak data nın kritik olduğu yerlerde sorun yaşayabilirsiniz.

Daha çok döküman ağırlıklı, gönderilen verinin doğruluğunun önemsiz olduğu yerlerde, mesala en basiti loglama sistemlerinde veya mmorpg tarzı oyun dataları gibi alanalrda kullanmak çok mantıklı. Google BigTable adını verdiği NoSQL yapısını kullanmaktadır. Dünyanın en büyük arama motoru, aslında o kadar büyük dataları NoSQL yapısında BigTable sisteminde saklamaktadır. Amazon ‘un en en pahalı olan servisi DynamoDB buna bir örnektir.