Sobes.tech
Junior

NoSQL verilənlər bazaları nədir?

sobes.tech Süni İntellekt

AI-dan cavab

NoSQL (Not Only SQL) — bu qeyri-əlaqəli məlumat bazaları sinfi olub, ənənəvi cədvəllərdən fərqli strukturlərdən istifadə edir. Onlar böyük həcmdə qeyri-strukturlu, yarı-strukturlu və çox-strukturlu məlumatlarla işləmək üçün hazırlanmışdır və elastik miqyaslama və yüksək əlçatanlıq təmin edir.

NoSQL məlumat bazalarının əsas kateqoriyaları:

  • "Açar-dəyər" (Key-Value Stores): Məlumatları açar-dəyər cütləri şəklində saxlayır, burada açar dəyəri unikal şəkildə müəyyən edir.
    # Açar-dəyər mağazasında məlumatların nümayişi nümunəsi
    user_data = {
        "user:123": {"name": "Alice", "age": 30},
        "product:456": {"name": "Laptop", "price": 1200}
    }
    
  • "Sütunlu" (Columnar Databases): Məlumatları sətir yox, sütunlar şəklində saxlayır. Analitik sorğular və böyük məlumat həcmlərinin emalı üçün optimallaşdırılmışdır.
  • "Sənəd" (Document Databases): Məlumatları sənədlər (məsələn, JSON, BSON, XML) şəklində saxlayır. Məlumat sxemi elastikdir.
    // Sənəd bazasında sənəd nümunəsi
    {
      "_id": "prod_abc",
      "name": "Smartphone",
      "brand": "XYZ",
      "specs": {
        "display": "6.5 inch",
        "camera": "48MP"
      },
      "tags": ["elektronika", "mobil"]
    }
    
  • "Qraf" (Graph Databases): Qrafik (nöqtələr və əlaqələr) şəklində olan məlumatların saxlanması və işlənməsi üçün nəzərdə tutulmuşdur. Əlaqələrin analizi üçün istifadə olunur.

SQL-ə əsaslanan əlaqəli məlumat bazalarından fərqləri:

Xüsusiyyət Əlaqəli (SQL) NoSQL
Məlumat sxemi Sabit, sərt Elastik, dinamik
Miqyaslama Şaquli (server gücünü artırmaq) Üfüqi (serverlər əlavə etmək)
Normalizasiya Yüksək (təkrarlanmanı azaltmaq) Aşağı (məlumatların təkrarlanması)
ACID əməliyyatları Ümumiyyətlə tam dəstək Dəyişkən dəstək (bəzən BASE)
Sorğu dili SQL Varyant (tez-tez API, xüsusi dillər)

NoSQL məlumat bazaları yüksək miqyaslama, sxem elastikliyi, böyük məlumat həcmlərinin sürətli işlənməsi (Big Data), yarı-strukturlu/nestukturlaşdırılmış məlumatlar və xüsusi məlumat modelləri (məsələn, qrafiklər) tələb edən ssenarilər üçün seçilir.