Blog/backend/PostgreSQL vs MongoDB — Bakı Startapın üçün Hansını Seçməlisən?
backend

PostgreSQL vs MongoDB — Bakı Startapın üçün Hansını Seçməlisən?

B
Baku Stack AI
·7 aprel 2026·5 dəq oxuma·16 baxış
backend.ascii
▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓
▓ ■ ■ ■ DATABASE ▓
▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓
▓ 🐘 PostgreSQL ▓
▓ ▓▓▓▓▓▓▓▓▓▓░░░░ 71% ▓
▓ → SQL ● ACID ● JOIN ▓
▓ → Bakı corp: ✓✓✓ ▓
▓──────────────────────▓
▓ 🍃 MongoDB ▓
▓ ▓▓▓▓▓▓▓▓░░░░░░ 55% ▓
▓ → NoSQL ● Fast ● MVP ▓
▓ → Startap: ✓✓✓ ▓
▓ Seçim → Layihəyə bax ▓
▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓

Azərbaycanlı developer olaraq startap qurmaq istəyirsən? PostgreSQL və MongoDB arasında düzgün seçim etmək üçün real kod, rəqəmlər və yerli kontekst burada.

PostgreSQL vs MongoDB — Bakı Startapın üçün Hansını Seçməlisən?

Salam, developer dostum! 👋

Bilirəm, bu sualı özünə çox vermisən. LinkedIn-də Bakıdakı vakansiyalara baxırsan — birində "PostgreSQL bilməlisən" yazılıb, digərində "MongoDB experience required". Startap ideyası var, amma database seçimində ilişib qalmısan. Bu məqalədə sənə konkret, praktiki və Azərbaycan reallığına uyğun cavab verəcəm.

Gəl birbaşa işə keçək.


🐘 PostgreSQL — "Etibarlı Qoca Dostun"

PostgreSQL relational (əlaqəli) database-dir. 1996-cı ildən mövcuddur və bu gün dünyanın ən güclü open-source RDBMS-lərindən biridir. Stack Overflow-un 2025 Developer Survey-inə görə, PostgreSQL artıq 4-cü il ardıcıl olaraq ən çox sevilən database-dir — developerlərin 71%-i onu sevir.

Nə vaxt PostgreSQL seçməlisən?

  • FinTech / bank əməliyyatları — AZN transferləri, ödəniş tarixçəsi, balans hesablamaları
  • E-commerce — məhsul, sifariş, müştəri cədvəlləri arasında ciddi əlaqələr
  • ERP / CRM sistemləri — strukturlaşdırılmış data, mürəkkəb JOIN-lər
  • Hökumət / dövlət layihələri — ASAN xidmət tipli sistemlər, ACID compliance vacibdirsə

Bakıda Kapital Bank, ABB, Bravo kimi şirkətlərin backend layihələrində relational database demək olar ki, standartdır.

Real kod nümunəsi — PostgreSQL

Tutaq ki, Bakıda bir e-commerce startap qurursan:

sql
-- Məhsullar cədvəli CREATE TABLE products ( id SERIAL PRIMARY KEY, name VARCHAR(255) NOT NULL, price_azn DECIMAL(10, 2) NOT NULL, category_id INT REFERENCES categories(id), in_stock BOOLEAN DEFAULT true, created_at TIMESTAMP DEFAULT NOW() ); -- Sifarişlər cədvəli CREATE TABLE orders ( id SERIAL PRIMARY KEY, user_id INT REFERENCES users(id), total_azn DECIMAL(10, 2) NOT NULL, status VARCHAR(50) DEFAULT 'pending', created_at TIMESTAMP DEFAULT NOW() ); -- Ən çox satılan 10 məhsulu tap SELECT p.name, SUM(oi.quantity) AS total_sold, p.price_azn FROM order_items oi JOIN products p ON oi.product_id = p.id JOIN orders o ON oi.order_id = o.id WHERE o.status = 'completed' GROUP BY p.id ORDER BY total_sold DESC LIMIT 10;

Gördüyün kimi, məlumatlar arasındakı əlaqələr (REFERENCES, JOIN) çox aydın və güclüdür. Əgər sənin datanın strukturu əvvəlcədən məlumdursa — PostgreSQL sənin dostundur.


🍃 MongoDB — "Çevik Startapçı Yoldaşın"

MongoDB document-oriented (sənəd yönümlü) NoSQL database-dir. JSON-a bənzər BSON formatında data saxlayır. Schema-sız (schemaless) olduğu üçün data strukturunu istədiyin vaxt dəyişə bilərsən.

DB-Engines-in 2026 aprel reytinqinə görə, MongoDB NoSQL kateqoriyasında 1-ci yerdədir və dünyada ən populyar 5-ci database-dir.

Nə vaxt MongoDB seçməlisən?

  • Real-time applications — chat, notification, live feed
  • Content management — blog, CMS, media platforması
  • IoT / sensor data — strukturu dəyişən, böyük həcmli data
  • MVP / prototip — sürətlə bazara çıxmaq lazımdırsa, schema ilə vaxt itirmə

Bakıda Hungry.az, Tap.az kimi platformalar, eləcə də bir çox gənc startaplar sürətli development üçün MongoDB-yə üstünlük verir.

Real kod nümunəsi — MongoDB

Eyni e-commerce startap, amma MongoDB ilə:

javascript
// Məhsul əlavə etmək db.products.insertOne({ name: "Xiaomi Redmi Note 14", price_azn: 429.99, category: "electronics", in_stock: true, specs: { ram: "8GB", storage: "256GB", color: "black" }, tags: ["phone", "xiaomi", "budget"], created_at: new Date() }); // Ən çox satılan 10 məhsul (aggregation pipeline) db.orders.aggregate([ { $match: { status: "completed" } }, { $unwind: "$items" }, { $group: { _id: "$items.product_id", total_sold: { $sum: "$items.quantity" } }}, { $sort: { total_sold: -1 } }, { $limit: 10 }, { $lookup: { from: "products", localField: "_id", foreignField: "_id", as: "product" }} ]);

Diqqət et: specs sahəsi nested object-dir, tags isə array-dir. Bu cür flexible data PostgreSQL-də əlavə cədvəllər tələb edərdi, MongoDB-də isə bir document içində rahat yerləşir.


📊 Üz-üzə Müqayisə — Rəqəmlərlə

KriteriyaPostgreSQLMongoDB
TipRelational (SQL)Document (NoSQL)
SchemaCiddi, əvvəlcədən müəyyənFlexible, dinamik
ACID Transactions✅ Tam dəstək✅ 4.0+ versiyadan
Mürəkkəb JOIN-lər✅ Əla⚠️ $lookup var, amma yavaş
Horizontal Scaling⚠️ Mümkündür, amma çətin✅ Native sharding
Öyrənmə müddəti2-4 həftə (SQL bilirsənsə)1-2 həftə
Bakıda vakansiya sayı (LinkedIn, Aprel 2026)~120+~60+
Orta maaş (Bakı, middle dev)1800-3000 AZN1800-3000 AZN
Cloud xərcləri (basic)~$15-50/ay~$25-60/ay (Atlas)

🇦🇿 Azərbaycan Konteksti — Nəyi Bilməlisən?

1. Bakı bazarında PostgreSQL daha çox tələb olunur. Yerli outsource şirkətlər (Pasha Technology, ASAN Innovation, Crocusoft, Azerconnect) əsasən relational database istifadə edir. İlk işini axtarırsansa, PostgreSQL bilmək sənin şansını artırır.

2. Startap qurursan? MongoDB ilə sürətlə MVP çıxar. Bakıda Barama, INNOLAND, AppLab kimi inkubatorlarda pitch edərkən işləyən MVP vacibdir, mükəmməl schema deyil. MongoDB burada qalib gəlir.

3. Hər ikisini bilmək — ən güclü strategiya. Ciddi söyləyirəm. 2026-da "polyglot persistence" yanaşması standartdır: bir layihədə həm PostgreSQL (əsas biznes data üçün), həm MongoDB (log, cache, flexible content üçün) istifadə edə bilərsən.

4. Azərbaycanda data residency məsələsi var. Bəzi dövlət layihələrində data ölkə daxilində saxlanmalıdır. PostgreSQL-i DigitalOcean-ın Frankfurt serverində və ya yerli serverdə qaldırmaq daha asandır. MongoDB Atlas-ın ən yaxın regionu İstanbul və ya Frankfurtdur.


🎯 Qərar Ağacı — 30 Saniyəyə Seç

Datanın arasında ciddi əlaqələr var? (user → orders → payments)

  • ✅ Bəli → PostgreSQL

Data strukturu tez-tez dəyişir? (A/B test, prototip, eksperiment)

  • ✅ Bəli → MongoDB

Mürəkkəb report / analitika lazımdır?

  • ✅ Bəli → PostgreSQL

Real-time, yüksək write throughput lazımdır?

  • ✅ Bəli → MongoDB

Bakıda korporativ iş axtarırsan?

  • ✅ Bəli → PostgreSQL öyrən, MongoDB-ni bonus kimi əlavə et

💡 Son Söz

Database seçimi "hansı daha yaxşıdır" sualı deyil — "mənim problemimdə hansı daha uyğundur" sualıdır. Bakıda fintech startap qurursan? PostgreSQL. Content platforması? MongoDB. İkisini birlikdə? Əla, sən artıq senior düşüncə ilə yanaşırsan.

Bir şeyi unutma: ən yaxşı database — sənin layihəni production-a çıxaran database-dir. İdeal texnologiya seçimi edib heç vaxt launch etməməkdənsə, birini seç, öyrən, qur və bazara çıx.

Sualın varsa, Baku Stack-in comment bölməsinə yaz — həmişə cavab veririk. 🚀


Müəllif: Baku Stack Redaksiyası | 7 Aprel 2026 Növbəti məqalə: "Docker + GitHub Actions ilə CI/CD Pipeline — Bakıdan Production-a"

Oxşar məqalələr

backend.ascii
▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓
▓ ■ ■ ■ BACKEND ▓
▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓
▓ → GET /api/products ▓
▓ ● Redis: 0.3ms ✓ ▓
▓ ● PgSQL: 18ms ↓ ▓
▓ ▓
▓ Cache HIT ratio: ▓
▓ ▓▓▓▓▓▓▓▓▓░░ 92% ▓
▓ ▓
▓ Trafik piki: ▓
▓ ░░▒▒▓▓▓▓▓▓▓▓ Novruz ▓
▓ Response: 180ms ⚡ ▓
▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓

Redis ilə Caching — Azərbaycan Trafik Piklərini İdarə Etmək

Bayram günləri saytın çökür? Redis ilə caching qurub, saniyədə 100K sorğunu rahat idarə etməyi öyrən — real kod və rəqəmlərlə.

backend.ascii
▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓
▓ ■ ■ ■ SECURITY ▓
▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓
▓ ● Supabase RLS ▓
▓ ─────────────────── → ▓
▓ auth.uid() = user_id ▓
▓ ▓
▓ SELECT ░░ → ✓ own row ▓
▓ SELECT ░░ → ✗ others ▓
▓ ▓
▓ Policy: ▓▓▓▓▓▓▓░░ 80% ▓
▓ Safety: ▓▓▓▓▓▓▓▓▓ 99% ▓
▓ ✓ Bank-level security ▓
▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓

Supabase RLS — Məlumatlarını Bank Səviyyəsində Qoru

Supabase Row Level Security ilə hər istifadəçi yalnız öz datasını görür. Bank tətbiqi nümunəsi ilə RLS-i addım-addım öyrən.

backend.ascii
▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓
▓ ■ ■ ■ FINTECH API ▓
▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓
▓ User → [myapp.az] ▓
▓ ↓ POST /create ▓
▓ Backend → Epoint API ▓
▓ ↓ redirect_url ▓
▓ User → ödəniş səhifə ▓
▓ ↓ kart: 4169 7xxx ▓
▓ Epoint → webhook ▓
▓ ↓ signature ✓ ▓
▓ DB: status=paid ● ▓
▓ ▓▓▓▓▓▓▓▓░░ 80% done ▓
▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓

Epoint və PAYRIFF: Azərbaycan Fintech Ödəniş API İnteqrasiyası

Azərbaycanda ödəniş qəbul etmək istəyirsən? Epoint və PAYRIFF API-lərini real kod nümunələri ilə addım-addım inteqrasiya edək — sandbox-dan production-a qədər.

← Bloqa qayıt