NoSQL Veritabanlarına Baxış

NoSQL abbreviaturası 1998-ci ildə hazırlanmışdır. Bir çox insanlar NoSQL-in SQL-ə soxulmaq üçün yaradılan aşağılayıcı bir müddət olduğunu düşünürlər. Əslində, söz yalnız SQL deyil deməkdir. Fikir hər iki texnologiyanın bir yerdə yaşaması və hər birinin öz yerini tutmasıdır. NoSQL hərəkatı son bir neçə il ərzində Web 2.0 liderlərinin çoxu NoSQL texnologiyasını qəbul etdiyinə görə xəbərlərdə olmuşdur. Facebook, Twitter, Digg, Amazon, LinkedIn və Google kimi şirkətlər heç bir şəkildə NoSQL-dən istifadə edirlər.

NoSQL-yı parçalayaq, bunu CIO-ya və ya hətta əməkdaşlarınıza izah edə bilərsiniz.

NoSQL bir ehtiyacdan çıxdı

Data Depolama: Dünyanın saxlanan rəqəmsal məlumatları exabytes ilə ölçülür. Bir exabyte bir milyard gigabayt (GB) məlumatın bərabərdir. Internet.com saytına görə, 2006-da əlavə edilən məlumatların miqdarı 161 exabyte idi. Yalnız 4 il sonra 2010-cu ildə saxlanılan məlumatların miqdarı demək olar ki, 1000 ExaBytes olacaq və bu da 500% -dən çox artım deməkdir. Başqa sözlə, dünyada saxlanılan bir çox məlumat var və yalnız onun davam etməsi davam edəcək.

Birləşdirilən Məlumatlar: Məlumatlar daha çox əlaqə qurmağa davam edir. İnternet kölgəsində yaradılan yaradılan bloglar, pingbacks və hər bir əsas sosial şəbəkə sistemi bir-birinə bənzər şeyləri birləşdirən etiketləri var. Böyük sistemlər bir-birinə bağlanmaq üçün tikilir.

Kompleks məlumat strukturu: NoSQL hiyerarşik daxili məlumat strukturlarını asanlıqla idarə edə bilər. SQL-də eyni şeyi yerinə yetirmək üçün hər cür düymələri olan çoxlu relational masalara ehtiyacınız var.

Bundan əlavə, performans və məlumatların mürəkkəbliyi arasında bir əlaqə var. Sosial şəbəkə proqramlarında və semantik vebdə tələb olunan kütləvi miqdarda məlumatların saxlanması ilə performans ənənəvi RDBMS-də azalma ola bilər.

NoSQL nədir?

Məncə, NoSQL-in müəyyənləşdirilməsinin bir yolu nə olduğunu düşünməkdir.

Bu SQL deyil və bu relational deyil. Adından da göründüyü kimi, bu bir RDBMS üçün əvəz deyil, amma bunu yüksək qiymətləndirir. NoSQL, geniş miqyaslı məlumat ehtiyacları üçün paylanmış məlumat mağazalarında nəzərdə tutulmuşdur. Terabits məlumatlarını hər gün birləşdirən 500 milyon istifadəçi və ya Twitter ilə Facebook haqqında düşünün.

NoSQL verilənlər bazasında heç bir sabit şema və birləşmə yoxdur. Bir RDBMS daha sürətli və daha sürətli aparat və yaddaş əlavə edərək "ölçeklendirir". Digər tərəfdən NoSQL, "scaling out" faydalana bilər. Ölçmə, bir çox əmtəə sisteminə yükün yayılmasını nəzərdə tutur. NoSQL-in komponenti bu böyük məlumatlar üçün ucuz bir həlldir.

NoSQL Kateqoriyalar

Hal-hazırda mövcud NoSQL dünyası 4 əsas kateqoriyaya daxildir.

  1. Açar dəyərlər Mağazalar ilk növbədə 2007-ci ildə yazılmış Amazon Dynamo Kağızına əsaslanır. Əsas fikir, xüsusi bir məlumat mənbəyinə unikal bir əsas və göstəricinin olduğu bir hash masasının olmasıdır. Bu göstəricilər adətən performansını artırmaq üçün önbellek mexanizmləri ilə müşayiət olunur.
    Sütun Ailə Mağazaları bir çox maşın üzərində paylanan çox sayda məlumatın saxlanması və işlənməsi üçün yaradılmışdır. Hallar hələ də var, lakin bir çox sütunları göstərirlər. BigTable (Google Sütun Ailəsi NoSQL modeli) halında, satırlar, bu açarla sıralanan və saxlanılan məlumatlarla bir sıra düyməsinə görə müəyyən edilir. Sütunlar sütun ailə tərəfindən təşkil edilir.
  1. Document Database s Lotus Notes-dan ilhamlandı və əsas dəyər mağazalarına bənzərdir. Model əsasən digər əsas dəyərlər kolleksiyalarının kolleksiyası olan sənədləşdirilmiş sənədlərdir. Yarı yapılandırılmış sənədlər JSON kimi formatlarda saxlanılır.
  2. Qrafik verilənlər bazası qovşaqları, qeydlər arası əlaqələr və qovşaqların xüsusiyyətləri ilə tikilir. Satır və sütunların və SQL-in sərt strukturunun yerinə bir çox maşın arasında ölçeklenebilen esnek bir grafik modeli istifadə olunur.

Əsas NoSQL Oyunçular

NoSQL-in əsas oyunçuları ilk növbədə onları qəbul edən təşkilatlardan irəli gəlir. Ən böyük NoSQL texnologiyasından bəziləri bunlardır:

NoSQL sorğuları

Bir NoSQL verilənlər bazasını sorgulayacağınız sual, ən çox inkişaf edənlərin maraqlandığı şeydir. Nəhayət, böyük bir verilənlər bazasında saxlanılan məlumatlar, son istifadəçilərə və ya web xidmətlərinə baxa bilmədiyiniz və göstərə bilmədiyiniz hər kəsə yaxşı təsir etmir. NoSQL verilənlər bazaları SQL kimi yüksək səviyyəli deklarativ sorğu dilini təmin etmir. Bunun əvəzinə, bu verilənlər bazalarını sorgulama, məlumat modelinə xüsusi aiddir.

NoSQL platformalarının bir çoxu məlumatların RESTful interfeyslərini təmin edir. Digər təklif sorğu API'ları. Çox bir NoSQL verilənlər bazasını sorgulamaya cəhd edən inkişaf etmiş bir neçə sorğu aləti var. Bu alətlər adətən bir NoSQL kateqoriyasında işləyir. Bir nümunə SPARQL. SPARQL, grafik verilənlər bazası üçün hazırlanmış bir bildiriş sorğusudur. Xüsusi bir bloggerin URL'sini (IBM nəzakətini) alan bir SPARQL sorğusunun nümunəsi:

PREFIX örtüyü:
SELECT? Url

WHERE {
Faydalı iştirakçı: adı "Jon Foobar".
ğöstərici: weblog? url.
}

NoSQL-in gələcəyi

Kütləvi məlumat saxlama ehtiyacları olan təşkilatlar NoSQL-ə ciddi baxırlar. Göründüyü kimi, konsepsiya daha kiçik təşkilatlarda daha çox çəkişmələrə yol açmır. İnformasiya Həftəsi tərəfindən aparılan sorğuda, biznes BT mütəxəssislərinin 44% -i NoSQL-ni eşitməmişlər. Bundan əlavə, respondentlərin yalnız 1% -i NoSQL onların strateji istiqamətinin bir hissəsidir. Şübhəsiz ki, NoSQL bizimlə bağlı dünyada öz yerini tutur, lakin əksəriyyəti düşünə biləcək kütləvi müraciətə nail olmaq üçün inkişaf etməyə davam edəcəkdir.