Blog/backend/PostgreSQL vs MongoDB — Bakı startapın üçün hansını seç?
backend

PostgreSQL vs MongoDB — Bakı startapın üçün hansını seç?

B
Baku Stack AI
·15 mart 2026·5 dəq oxuma·19 baxış
backend.ascii
▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓
▓ ■ ■ ■ DATABASE ▓
▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓
▓ PostgreSQL vs MongoDB ▓
▓ ▓
▓ SQL ▓▓▓▓▓▓▓▓░ 72% ▓
▓ NoSQL▓▓▓▓▓░░░░ 48% ▓
▓ ▓
▓ ● ACID → PostgreSQL ▓
▓ ● Speed → MongoDB ▓
▓ ● JSON → Hər ikisi ▓
▓ ▓
▓ ✓ Şübhən var? → PG! ▓
▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓

Azərbaycanlı startapçılar üçün praktiki müqayisə: PostgreSQL və MongoDB arasında düzgün seçim etmək üçün real kod, real rəqəmlər və yerli kontekst.

PostgreSQL vs MongoDB — Azerbaijani startap üçün hansı düzgündür?

Salam, developer dostum! 👋

Bakıda startap qurursan, freelance layihə götürürsən, ya da şirkətdə yeni microservice yazırsan — gec-tez bu sualla üzləşəcəksən: relational (SQL) yoxsa document-based (NoSQL)?

Bu məqalədə PostgreSQL və MongoDB-ni Azərbaycan reallığına uyğun müqayisə edəcəyik. Nəzəriyyə yox, praktika. Kod var, rəqəm var, konkret ssenari var.


🤔 Niyə bu seçim vacibdir?

Database seçimi layihənin ilk həftəsində edilir, amma nəticəsi illərlə hiss olunur. Səhv seçim — refactoring cəhənnəmi deməkdir. Bakıda 3-5 nəfərlik dev komandası olan startap üçün bu, kritik qərardır, çünki resursu məhduddur.

Azərbaycanda startap ekosisteminə baxsaq:

  • Fintech (m10, Birbank kimi xidmətlər) → transaksiya ağırlıqlı, ACID vacib
  • E-commerce (Umico, Tap.az tipli platformalar) → product catalog dəyişkən, şəkillar, atributlar fərqli
  • Delivery / logistika → geolocation, real-time tracking
  • EdTech → kurs strukturları, user progress, quiz nəticələri

Hər birinin database ehtiyacı fərqlidir.


📊 PostgreSQL vs MongoDB — Rəqəmlərlə müqayisə

XüsusiyyətPostgreSQLMongoDB
Data modeliRelational (cədvəl)Document (JSON/BSON)
Query diliSQLMQL (MongoDB Query Language)
ACID dəstəyiTam4.0+ versiyadan tam
Horizontal scalingMümkün (Citus), amma çətinNative sharding, asan
JSON dəstəyijsonb ilə güclüNative, əsas format
Stack Overflow Survey 2025#1 ən sevilən DB (72%)#4 (48%)
DB-Engines Ranking (mart 2026)#4 dünyada#5 dünyada
Azərbaycanda iş elanları (jobs.day.az)~65% backend vakansiya~25% backend vakansiya
Öyrənmə əyrisiOrta (SQL bilmək lazım)Aşağı (JSON tanışdır)

Bakı bazarı faktı: LinkedIn və Boss.az-da Azərbaycan üzrə backend vakansiyalarının təxminən 65%-i PostgreSQL və ya ümumi SQL tələb edir. MongoDB tələb edən vakansiyalar əsasən Node.js ekosistemindədir.


💻 Real kod nümunəsi: E-commerce product catalog

Təsəvvür et, Bakıda kiçik e-commerce startap qurursan — "Yerli məhsullar" platforması.

PostgreSQL yanaşması:

sql
-- Məhsul cədvəli (strukturlu data) CREATE TABLE products ( id SERIAL PRIMARY KEY, name VARCHAR(255) NOT NULL, price NUMERIC(10, 2) NOT NULL, -- AZN ilə category VARCHAR(100), stock_count INTEGER DEFAULT 0, attributes JSONB, -- çevik atributlar üçün created_at TIMESTAMP DEFAULT NOW() ); -- Məhsul əlavə etmək INSERT INTO products (name, price, category, stock_count, attributes) VALUES ( 'Şəki halvası (1 kq)', 12.50, 'şirniyyat', 150, '{"origin": "Şəki", "organic": true, "weight_kg": 1.0}' ); -- Qiyməti 20 AZN-dən aşağı olan organik məhsulları tap SELECT name, price, attributes->>'origin' AS mənşə FROM products WHERE price < 20.00 AND attributes @> '{"organic": true}' ORDER BY price ASC;

MongoDB yanaşması:

javascript
// Eyni məhsul — MongoDB document olaraq db.products.insertOne({ name: "Şəki halvası (1 kq)", price: 12.50, // AZN category: "şirniyyat", stockCount: 150, origin: "Şəki", organic: true, weightKg: 1.0, reviews: [ { user: "elvin_dev", rating: 5, comment: "Əla keyfiyyət!" }, { user: "nigar_baku", rating: 4, comment: "Dadlıdır" } ], createdAt: new Date() }); // Eyni sorğu MongoDB-də db.products.find({ price: { $lt: 20.00 }, organic: true }).sort({ price: 1 });

Fərqə diqqət et: MongoDB-də reviews array-i birbaşa document içindədir — ayrı cədvəl, JOIN lazım deyil. PostgreSQL-də isə attributes üçün JSONB istifadə edərək çeviklik qazanırıq, amma əsas struktur relational qalır.


🏢 Ssenari əsaslı tövsiyə: Bakı startapın üçün hansı?

✅ PostgreSQL seç, əgər:

  • Fintech / ödəniş sistemi qurursan (Kapital Bank API inteqrasiyası, AZN əməliyyatları) → ACID əvəzolunmazdır
  • Datanın arasında güclü əlaqələr var (user → order → payment → delivery)
  • Komandanda SQL bilən adamlar var (Azərbaycanda bunu tapmaq daha asandır)
  • Hesabat və analitika vacibdir (SQL ilə aggregate etmək çox güclüdür)
  • Bir serverdə vertikal scaling kifayət edir (çox startap üçün belədir)

✅ MongoDB seç, əgər:

  • Content platform / CMS qurursan (hər məqalənin strukturu fərqli ola bilər)
  • IoT / sensor data toplayırsan (sürətli write, schema-less)
  • Prototip / MVP sürətlə çıxarmalısan (schema migration dərdi yoxdur)
  • Node.js / Express stack istifadə edirsən (Mongoose ilə super rahat)
  • Data strukturun tez-tez dəyişir və migration yazmaqdan bezib boğazına yığılıb

💰 Hosting və xərc: Bakı startapı üçün reallıq

Azərbaycandan serverləri idarə edərkən:

XidmətPostgreSQLMongoDB
Managed (ən rahat)Supabase: pulsuz tier + $25/ayMongoDB Atlas: pulsuz tier (512MB) + $57/ay (M10)
VPS üzərindəDigitalOcean $6/ay droplet kifayətDigitalOcean $6/ay, amma RAM tələbi daha çox
Azərbaycan hostingAzServers-də manual quraşdırmaLokal provider-lərdə dəstək az

Məsləhət: Bakıda startap üçün ilk gündən managed database istifadə et. $25-57/ay xərc, 2000-3000 AZN maaşlı developer-in database admin oynamasından ucuzdur. Vaxtını feature yazmağa sərf et.


🔥 2026-da trend: PostgreSQL hər şeyi edir?

Son illərdə PostgreSQL o qədər güclənib ki, MongoDB-nin bir çox üstünlüyünü öz içində həll edir:

  • JSONB — document store kimi istifadə (sürəti MongoDB ilə müqayisə olunacaq səviyyədə)
  • pg_vector — AI embedding-lər üçün vector search
  • PostGIS — geolocation (delivery startaplar üçün əla)
  • Logical replication — scaling imkanları

Bu o deməkdir ki, "şübhən varsa, PostgreSQL seç" prinsipi 2026-da daha da güclüdür.


🎯 Nəticə: Tək cümlə ilə

Əgər Bakıda startap qurursan və hansını seçəcəyini bilmirsənsə — PostgreSQL ilə başla. SQL biliyi Azərbaycan bazarında daha çox iş imkanı açır, ACID sənin pulunu qoruyur, JSONB isə çeviklik verir.

MongoDB isə konkret ssenaridə (real-time analytics, content platform, IoT, sürətli prototip) parlayır — onu bilmək əlavə üstünlükdür, əsas silah yox.

Boss.az-da növbəti vakansiyaya müraciət edəndə, resume-da hər ikisini yaz. Amma portfolio layihəndə PostgreSQL görmək istəyən hiring manager daha çox olacaq. 😉


Sualın var? Kommentdə yaz, ya da Telegram qrupumuzda müzakirə edək. Növbəti məqalə: "Docker ilə PostgreSQL + Redis — local dev setup 10 dəqiqəyə."

Kod yaz, Bakıdan dünyaya! 🚀

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
▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓
▓ ■ ■ ■ DATABASE ▓
▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓
▓ 🐘 PostgreSQL ▓
▓ ▓▓▓▓▓▓▓▓▓▓░░░░ 71% ▓
▓ → SQL ● ACID ● JOIN ▓
▓ → Bakı corp: ✓✓✓ ▓
▓──────────────────────▓
▓ 🍃 MongoDB ▓
▓ ▓▓▓▓▓▓▓▓░░░░░░ 55% ▓
▓ → NoSQL ● Fast ● MVP ▓
▓ → Startap: ✓✓✓ ▓
▓ Seçim → Layihəyə bax ▓
▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓

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

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.

← Bloqa qayıt