📊 Feature Comparison — All Four Services

The definitive side-by-side reference for AZ-305 scenario questions


Table of Contents

  1. The Big Picture — When to Use Which
  2. Master Comparison Table
  3. Queues: Service Bus vs Storage Queues
  4. Events: Event Grid vs Event Hubs
  5. SLA Comparison
  6. Message / Event Size Limits
  7. Retention / Replay
  8. Private Networking & Isolation
  9. Geo-Redundancy & Disaster Recovery
  10. Authentication & RBAC Roles Quick Reference

The Big Picture — When to Use Which

flowchart TD
    Q1{"Do you need\nhigh-throughput streaming\n≥ 100K events/sec?"}
    Q2{"Do you need\nto replay events?"}
    Q3{"Is this a notification\nof a state change\n(no large payload)?"}
    Q4{"Do you need ordering,\ndeadletter, or transactions?"}
    Q5{"Do you need\n> 80 GB queue storage?"}

    EH["🟩 Event Hubs"]
    EG["🏁 Event Grid"]
    SB["📨 Service Bus"]
    SQ["📦 Storage Queues"]

    Q1 -->|Yes| EH
    Q1 -->|No| Q2
    Q2 -->|Yes| EH
    Q2 -->|No| Q3
    Q3 -->|Yes| EG
    Q3 -->|No| Q4
    Q4 -->|Yes| SB
    Q4 -->|No| Q5
    Q5 -->|Yes| SQ
    Q5 -->|No| SB

Master Comparison Table

Feature 📨 Service Bus 📦 Storage Queues 🏁 Event Grid 🟩 Event Hubs
Primary pattern Message queue / pub-sub Simple queue Event routing Event streaming
Message / event size 256 KB (Standard) / 100 MB (Premium) 64 KB 1 MB 1 MB (default) / ~1 MB max
Max queue / topic size 80 GB 500 TB N/A (push) N/A (log-based)
Throughput Moderate Moderate Up to 10M events/sec Millions/sec
Ordering FIFO with Sessions Best-effort (FIFO not guaranteed) Not guaranteed Per-partition only
At-least-once delivery
Exactly-once delivery ✅ (peek-lock + settle)
Dead-letter queue ✅ Built-in ❌ (manual) ✅ (to Blob)
Message replay
Retention TTL configurable (≤7 days default) TTL ≤7 days 24 hours retry window 1–90 days
Transactions ✅ (within namespace)
Pub/Sub (fan-out) ✅ (Topics) ✅ (consumer groups)
Duplicate detection
Sessions (FIFO groups)
Kafka compatibility
Built-in archive ✅ (Capture → Blob/ADLS)
Private Endpoints ✅ (Premium) ✅ (Namespace) ✅ (Premium)
VNet integration ✅ (Premium) ✅ (Storage FW) ✅ (Namespace) ✅ (Premium)
Geo-DR ✅ (Premium) ✅ (GRS/RA-GRS) ✅ (built-in) ✅ (Std+)
Availability Zones ✅ (Premium) ✅ (ZRS option) ✅ (built-in) ✅ (Std+)
SLA 99.9% / 99.99% (Premium+AZ) 99.9% / 99.99% (RA-GRS read) 99.99% 99.9% / 99.99% (Dedicated)
Pricing model Per operation / Per MU Per operation Per operation (per million) Per TU / PU / CU
Relative cost Medium Lowest Low Medium–High

Queues: Service Bus vs Storage Queues

Use this table when a scenario describes a queue-based decoupling need:

Decision Factor Choose Service Bus Choose Storage Queues
Message ordering (FIFO) required ✅ (Sessions)
Dead-letter queue needed
Duplicate detection needed
Transactions across queue operations
Message > 64 KB
Fan-out (pub/sub) needed ✅ (Topics)
Long polling beyond 20s ❌ (max 20s)
Queue > 80 GB
Lowest cost acceptable
REST-only consumer (legacy)
Audit log of all queue operations Limited ✅ (Storage analytics)

Events: Event Grid vs Event Hubs

Use this table when a scenario describes an event-driven or streaming need:

Decision Factor Choose Event Grid Choose Event Hubs
Reacting to Azure resource changes
Low-volume discrete events (notifications) Overkill
High-throughput stream (>1M events/sec)
Replay events after failure
Long-term retention (>24h) ✅ (up to 90 days)
Multiple independent stream readers ✅ (subscriptions) ✅ (consumer groups)
Kafka-compatible producers
Archive stream to ADLS Gen2 ✅ (Capture)
IoT telemetry ingestion at scale
Trigger serverless function on state change ✅ (both work, EG simpler)

SLA Comparison

Service Tier SLA
Service Bus Basic / Standard 99.9%
Service Bus Premium + Availability Zones 99.99%
Storage Queues Standard (LRS/GRS) 99.9%
Storage Queues Standard (RA-GRS, read) 99.99% (read)
Event Grid All (Custom / System Topics) 99.99%
Event Hubs Basic / Standard 99.9%
Event Hubs Premium 99.95%
Event Hubs Dedicated 99.99%

⚠️ Exam Caveat: Event Grid has the highest baseline SLA (99.99%) of the four services at no premium tier cost. Service Bus and Event Hubs require the top-tier SKU to reach 99.99%.


Message / Event Size Limits

Service Max Size
Storage Queues 64 KB ← smallest
Event Grid 1 MB
Event Hubs 1 MB (default; configurable up to ~1 MB in Standard)
Service Bus Standard 256 KB
Service Bus Premium 100 MB ← largest

⚠️ Exam Caveat — Classic Trap: If a scenario says “messages up to 1 MB”, both Event Grid and Event Hubs support this, but they serve entirely different patterns. If the scenario says “messages up to 50 MB”, only Service Bus Premium qualifies.


Retention / Replay

Service Retention Replay?
Storage Queues TTL ≤ 7 days (messages deleted on dequeue)
Service Bus TTL configurable (messages deleted on settlement)
Event Grid 24-hour retry window only
Event Hubs 1–90 days (log-based, not deleted on read)

Private Networking & Isolation

Service Private Endpoint VNet Service Endpoint IP Firewall
Service Bus ✅ Premium ✅ Premium ✅ All tiers
Storage Queues ✅ All tiers ✅ All tiers ✅ All tiers
Event Grid ✅ Namespace (Std/Prem) ✅ All tiers
Event Hubs ✅ Premium/Dedicated ✅ Premium/Dedicated ✅ All tiers

⚠️ Exam Caveat: Storage Queues have private endpoint support on all tiers (it’s a Storage account feature). Service Bus, Event Grid (namespace), and Event Hubs require a Premium/Dedicated tier for private endpoint support.


Geo-Redundancy & Disaster Recovery

Service Built-in Geo-Redundancy Active-Active Notes
Storage Queues ✅ GRS/RA-GRS Replicates queue data
Service Bus ✅ Geo-DR (Premium) ❌ (metadata only) Messages NOT replicated
Event Grid ✅ Built-in (all tiers) ✅ Automatic Fully managed
Event Hubs ✅ Geo-DR (Std+) ❌ (metadata only) Messages NOT replicated

⚠️ Exam Caveat: Event Grid is the only service where geo-redundancy is fully managed and automatic with no extra tier requirement. Service Bus and Event Hubs Geo-DR replicate metadata only, not in-flight messages.


Authentication & RBAC Roles Quick Reference

Service Key Roles
Service Bus Azure Service Bus Data Owner, Data Sender, Data Receiver
Storage Queues Storage Queue Data Contributor, Message Sender, Message Processor
Event Grid EventGrid Contributor, EventGrid Data Sender
Event Hubs Azure Event Hubs Data Owner, Data Sender, Data Receiver