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.