Skip to main content

Oracle → Azure SQL: Conceptual Modernization Mapping

This page maps Oracle Database concepts to their closest Azure SQL capabilities for learning, internal sharing, and customer-facing modernization conversations.

🎯 Exam Focus

Read this first. This page provides a conceptual Oracle-to-Azure SQL modernization mapping for learning and architecture discussions. Some features do not have a direct 1:1 equivalent because Oracle Database and Azure SQL use different architectures. The mappings focus on similar business outcomes, operational patterns, and Azure-native capabilities — not strict feature-for-feature replacements.

For the engineering-level companion (latches & lock managers, page/block byte layouts, columnstore vs Oracle In-Memory, Hekaton, Query Store vs AWR/ASH/SPM, Resource Governor, Service Broker, partitioning gaps, RMAN ↔ T-SQL BACKUP, Always Encrypted with secure enclaves, and where SQL Server 2025 closes historical Oracle gaps), see Oracle → SQL Server Engine Internals.

The Big Picture

Oracle to Azure SQL conceptual modernization mapping

Conceptual Mapping at a Glance

OracleClosest Azure SQL CapabilityModernization Note
Oracle InstanceAzure SQL Database / SQL Managed InstanceYou manage the database and workload; Microsoft manages the engine and platform operations.
CDB / PDBSQL Managed Instance (multiple DBs) / Elastic PoolsNo direct 1:1 to multitenant CDB/PDB. MI hosts many DBs in one instance; Elastic Pools share resources across SQL DBs.
Oracle RACBusiness Critical / Zone-Redundant HASimilar HA outcome, different architecture (replicas + fast failover, not shared-disk clustering).
ASMAzure SQL managed storage layerMicrosoft manages storage, striping, and redundancy in PaaS. Managed Disks apply only to SQL Server on Azure VM.
Data GuardFailover Groups / Active Geo-ReplicationConceptual DR mapping — managed cross-region replication and failover, not Data Guard internals.
Active Data GuardActive Geo-ReplicationClosest equivalent for read-scale secondary scenarios.
Flashback DatabasePoint-in-Time Restore (+ LTR)PITR restores to a new database from automated backups; LTR for long-term/compliance.
RMANAutomated Backups + PITR + LTRNo manual backup scheduling in Azure SQL PaaS — full, differential, and log backups are platform-managed.
Data PumpSSMA for Oracle (+ DMS where applicable)SSMA is the primary Oracle-to-Azure SQL migration tool. BACPAC is a SQL-side export format, not the Data Pump equivalent.
Oracle TDEAzure SQL TDE + Azure Key VaultService-managed or customer-managed keys (BYOK/CMK) via Key Vault or Managed HSM.
VPDRow-Level SecurityPredicate-based row filtering — strong conceptual match.
OAMMicrosoft Entra ID + Conditional Access + MFA + PIMIdentity, SSO, MFA, conditional access, and privileged access modernization.
AWR / ASHQuery Store + DMVs + Azure MonitorNo exact 1:1; together they cover query history, live diagnostics, and platform observability.
ADDMIntelligent Insights + Automatic TuningIntelligent performance recommendations and automated tuning, not an ADDM clone.
Enterprise ManagerAzure Portal + Azure Monitor + Log AnalyticsCombined platform for monitoring, alerts, and operational visibility.
APEX / SOA / OBIEEPower Apps / Logic Apps + API Management / Power BIApplication and reporting modernization mapping — not a database engine feature mapping.

Architecture & Infrastructure

Oracle ConceptClosest Azure SQL CapabilityModernization Note
Oracle Instance (SGA + background processes)Azure SQL Database / Azure SQL Managed InstanceYou manage the database and workload; Microsoft manages the engine and platform operations. Choose MI when you need instance-level features (SQL Agent, cross-database queries, near SQL Server instance behavior).
CDB / PDB (Multitenant)SQL Managed Instance (multiple DBs) / Azure SQL Database Elastic PoolsNo direct 1:1 to Oracle multitenant. MI hosts many databases under one managed instance. Elastic Pools let multiple SQL DBs share a resource pool. Cross-database queries in Azure SQL Database use Elastic Query / external tables — not three-part USE [db] access.
Oracle RAC (shared-everything cluster)Azure SQL Business Critical / Zone-Redundant HASimilar HA outcome, different architecture. RAC is shared-disk clustering; Business Critical uses multiple replicas with fast failover. Zone-redundant HA spreads replicas across availability zones.
ASM (Automatic Storage Management)Azure SQL managed storage layerIn Azure SQL DB / MI, customers do not manage disk striping, redundancy, or ASM-style configuration — Microsoft manages the underlying storage and resilience. Azure Managed Disks apply only when the target is SQL Server on Azure VM, not Azure SQL PaaS.
Oracle Data Directory (data files, redo, archive)Platform-managed storage (remote for GP, local SSD for BC)General Purpose uses remote premium storage; Business Critical uses local NVMe SSD with synchronous replicas. Storage layout is managed by the platform.
🏢 Real-World DBA Note

Mental shift: In Oracle you tune the instance (SGA, PGA, background processes). In Azure SQL PaaS you tune the workload (queries, indexes, tier selection) — Microsoft manages the engine.

High Availability & Disaster Recovery

Oracle ConceptClosest Azure SQL CapabilityModernization Note
Data Guard (Physical Standby)Failover Groups / Active Geo-ReplicationFailover Groups provide managed failover across servers/regions with a single endpoint. Conceptual DR mapping — not identical to Data Guard internals.
Active Data GuardActive Geo-ReplicationClosest Azure SQL equivalent for read-scale secondary scenarios; readable secondary databases for offloading reads.
RAC (local HA)Business Critical / Zone-Redundant HABuilt-in HA via multiple replicas with fast failover. Different architecture, similar outcome.
Fast-Start Failover (FSFO)Automatic failover in Failover GroupsBuilt-in health detection with a configurable grace period — no separate Observer to manage.
Flashback DatabasePoint-in-Time Restore (PITR)PITR restores to a selected point in time using automated backups. Restores to a new database rather than rewinding in place. Configure Long-Term Retention (LTR) for compliance or extended restore needs.
Maximum Availability (MAA)Business Critical + Failover GroupsCombine BC tier (local HA) with a Failover Group (cross-region DR) for an MAA-style outcome.
Oracle HA/DR → Azure SQL HA/DR
🔄
Data Guard → Failover Groups
Managed cross-region replication and failover with a single endpoint (conceptual DR mapping)
RAC → Business Critical
Built-in HA with multiple replicas and fast failover (similar outcome, different architecture)
🎯
FSFO → Auto Failover
Built-in health detection with a configurable grace period — no separate Observer
Flashback → PITR
Restore to a point in time — creates a NEW database; combine with LTR for long-term retention
🏆
MAA → BC + Failover Groups
Local HA (BC) + cross-region DR (Failover Group) for an MAA-style outcome
📋
Active Data Guard → Geo-Rep
Readable secondary databases for read-scale offloading
🎯 Exam Focus

DP-300 angle: Failover Groups abstract away redo transport, apply processes, and role transitions — you define the group, endpoint, and grace period; the platform handles the rest.

Backup & Recovery

Oracle ConceptClosest Azure SQL CapabilityModernization Note
RMAN (backup/restore)Automated Backups + PITR + LTRAzure SQL provides automated full, differential, and transaction log backups. PITR and LTR are built-in platform capabilities. You do not manually schedule RMAN-style backup jobs in Azure SQL Database PaaS.
RMAN catalogLong-Term Retention (LTR)LTR stores backups for years in Azure Blob — fully managed.
Recovery WindowBackup retention (7-35 days) + LTRSet the retention window for PITR; use LTR policies for compliance and longer windows.
Data Pump (export/import)SSMA for Oracle / migration scripts / DMS where applicableSSMA for Oracle is the primary tool for Oracle-to-Azure SQL assessment, schema conversion, and data migration. DMS may be used in the broader migration workflow. BACPAC is for SQL Server / Azure SQL export/import — it is not the Oracle Data Pump equivalent.
Flashback (table, database)PITR + Deleted database restoreNo direct in-place flashback for tables; use PITR to a new database, then copy the rows back.
Cross-platform transportable tablespacesSSMA (+ DMS)SSMA converts Oracle schemas and PL/SQL to T-SQL; DMS supports live data migration.
🏢 Real-World DBA Note

Migration tip: Run an SSMA for Oracle assessment first. It flags PL/SQL constructs that won't convert cleanly (autonomous transactions, varrays, Oracle-specific data types) so you can plan remediation before cutover.

Security

Oracle ConceptClosest Azure SQL CapabilityModernization Note
Oracle TDEAzure SQL TDE + Azure Key VaultAES-256 encryption at rest. Use service-managed keys or customer-managed keys (BYOK/CMK) through Azure Key Vault or Managed HSM. Azure TDE is on by default.
VPD (Virtual Private Database)Row-Level Security (RLS)Strong conceptual mapping — RLS uses predicate-based filtering to restrict row access per user/tenant.
Oracle Data RedactionDynamic Data MaskingBoth mask at query time without changing stored data. Neither encrypts data at rest.
Oracle Audit (Unified Audit)Azure SQL Auditing → Log Analytics / Storage / Event HubCentralized audit destinations integrated with Azure Monitor.
Oracle Vault (privilege control)Azure RBAC + Entra ID + PIMRole-based access, just-in-time elevation, MFA, and Conditional Access.
Oracle Wallet (credential store)Azure Key Vault / Managed HSMCentralized keys, secrets, and certificates across all Azure services.
Oracle DBMS_CRYPTOAlways EncryptedColumn-level encryption where the database engine never sees plaintext.
⚠️ Watch Out

Scope difference: Oracle TDE encrypts tablespaces; Azure TDE encrypts the entire database (data files, log files, backups) and is on by default. You cannot selectively encrypt filegroups in Azure SQL Database.

Concurrency & Locking

Oracle ConceptAzure SQL EquivalentModernization Note
Row-level locks + UNDO/MVCC (non-blocking readers)RCSI / Snapshot Isolation (row versioning in tempdb / PVS)Azure SQL Database has RCSI on by default. Set it explicitly on SQL Server / Managed Instance for similar reader behavior.
ITL slots, enq: TX – allocate ITL entryLock Manager + KEY/PAGE/RID locks (classic)No ITL concept — locks are tracked centrally in the lock manager. Watch sys.dm_tran_locks, sys.dm_os_wait_stats for LCK_* waits.
Lock byte in row header (Oracle never escalates row→table)🆕 Optimized Locking (TID stamping + LAQ) — see SQL Server 2025 Optimized LockingNew in SQL 2025 / Azure SQL: a single transaction-level lock replaces thousands of KEY locks; eliminates lock escalation pressure. Requires ADR + RCSI.

Performance Monitoring & Tuning

Oracle ConceptClosest Azure SQL CapabilityModernization Note
AWR / ASHQuery Store + DMVs + Azure MonitorNo exact 1:1 replacement. Query Store captures query history and plans; DMVs provide live diagnostic metadata; Azure Monitor / Log Analytics provide platform-level observability.
ADDM (Automatic Diagnostic Monitor)Intelligent Insights + Automatic TuningIntelligent Insights detects performance issues; Automatic Tuning can apply and validate tuning actions where supported. Intelligent recommendations and tuning — not an ADDM clone.
SQL Tuning AdvisorAutomatic Tuning + Query StoreAutomatic Tuning can force last-known-good plans and create/drop indexes; Query Store provides the data backing those decisions.
Wait Events (v$session_wait)Wait Statistics (sys.dm_os_wait_stats)Same diagnostic concept, different catalog. Common waits: PAGEIOLATCH_* (I/O), LCK_* (locks), CXPACKET (parallelism).
Explain Plan / AutotraceExecution Plans (SET STATISTICS IO ON, actual/estimated plans)In SSMS: Ctrl+M actual plan, Ctrl+L estimated plan. Look for scans vs. seeks, key lookups, sort/spill warnings.
Oracle Statspack (legacy)Query Store + Extended EventsExtended Events provides lightweight, targeted event tracing.
Enterprise Manager (Cloud Control)Azure Portal + Azure Monitor + Log AnalyticsEnterprise Manager is a broader Oracle management platform; Azure Portal, Azure Monitor, Log Analytics, Query Store, and SQL insights together provide monitoring and operational visibility.
Oracle Monitoring → Azure Monitoring
📊
AWR → Query Store
Hourly workload snapshots → Continuous per-query plan + runtime stats capture
ASH → DMVs
Active session sampling → Real-time sys.dm_exec_requests + sys.dm_exec_sessions
🤖
ADDM → Intelligent Insights
AWR-based recommendations → ML-driven anomaly detection + proactive alerts
🔧
SQL Tuning Advisor → Auto Tuning
Manual SQL profiles → Auto-force good plans + auto-create/drop indexes
⏱️
Wait Events → Wait Statistics
V$SESSION_WAIT → sys.dm_os_wait_stats (same concept, different catalog)
🖥️
Enterprise Manager → Azure Monitor
OEM dashboards + alerts → Portal metrics + Monitor alerts + KQL queries
🎯 Exam Focus

DP-300 loves Query Store questions. Think of Query Store as "AWR on steroids" — it captures per-query plans (not just top SQL), lets you force specific plans (like SQL Profiles), and is enabled by default in Azure SQL DB.

Automation & Scheduling

Oracle ConceptAzure EquivalentWhen to Use
DBMS_SCHEDULERSQL Agent (MI/VM) / Elastic Jobs (SQL DB)DBMS_SCHEDULER = Oracle's built-in job scheduler. SQL Agent is the direct equivalent for MI/VM. Elastic Jobs replaces SQL Agent for Azure SQL DB.
DBMS_JOB (legacy)Elastic JobsDBMS_JOB is deprecated in Oracle. Elastic Jobs is the modern Azure approach for Azure SQL Database.
Oracle Streams / GoldenGateChange Data Capture (CDC) / DMSOracle replication tools. Azure CDC captures row-level changes. DMS handles live migrations.
Oracle Enterprise Manager JobsAzure Automation RunbooksEM jobs run shell/SQL scripts on a schedule. Azure Automation runs PowerShell/Python runbooks with managed identity.
cron jobs (OS-level)Azure Functions (Timer Trigger)cron on Linux/Task Scheduler on Windows → Timer-triggered Azure Function. Serverless, auto-scaling, pay-per-execution.

Application & Integration

This section is an application and reporting modernization mapping, not a database engine feature mapping.

Oracle ConceptClosest Azure CapabilityModernization Note
Oracle APEXPower Apps (low-code) / Static Web AppsConceptual mapping for low-code, database-centric application modernization.
Oracle FormsPower Apps or custom .NET/React on App ServiceNo direct equivalent — modernize to a low-code or custom web app pattern.
Oracle SOA Suite / WebLogic integrationLogic Apps + API Management + Azure Functions + App Service + Service Bus / Event GridIntegration scenarios map to a combination of services depending on architecture (workflow, APIs, eventing, messaging).
OBIEEPower BIConceptual mapping for reporting and analytics modernization with native Azure SQL integration.
Oracle OAM (Access Manager)Microsoft Entra ID + Conditional Access + MFA + PIMIdentity, SSO, MFA, conditional access, and privileged access modernization.
Oracle WebLogic (app server)Azure App Service / AKS / Container AppsManaged Java/Node/.NET hosting or container platforms; WebLogic on Azure VM is also supported for lift-and-shift.
Oracle GoldenGateAzure Data Factory / Synapse Link / Fabric MirroringData movement, ETL/ELT, and real-time analytics patterns — not a like-for-like CDC replication product.
🏢 Real-World DBA Note

Oracle SOA + OAM + BI maps cleanly to the Azure integration story: Logic Apps + API Management (orchestration and APIs), Entra ID (identity), and Power BI (analytics).

Pricing & Licensing

Oracle ConceptAzure EquivalentCost Insight
Oracle Processor licensingvCore modelOracle charges per processor core. Azure vCore charges per virtual core. Mapping: 1 Oracle processor ≈ 1-2 vCores depending on tier.
Oracle Named User PlusPay-as-you-go or reserved capacityNUP per-user licensing → Azure PAYG (no per-user DB fee). Reserved capacity saves up to 55%.
Oracle RAC licenseIncluded in BC tierRAC is an expensive add-on license. Azure Business Critical tier includes HA replicas at no extra license cost.
Data Guard licenseIncludedData Guard requires Active Data Guard for readable standby (extra $). Azure Failover Groups include readable secondary.
Oracle Tuning/Diagnostic PackIncludedThese Oracle packs cost extra. Query Store, DMVs, Intelligent Insights — all included in Azure SQL at no extra charge.
Oracle Support (22% of license/year)Included in compute costOracle annual support is 22% of license. Azure includes all patches, updates, support in the compute price.
⚠️ Watch Out

This is your strongest migration argument for customers: Oracle licensing is per-processor + RAC + Data Guard + Tuning Pack + 22% annual support. In Azure, HA, DR, monitoring, and tuning are ALL INCLUDED. Azure Hybrid Benefit + Reserved Capacity can cut costs by up to 80%.


🎯 Exam Focus

Summary. Azure SQL provides built-in HA, automated backups, Query Store, Intelligent Insights, Automatic Tuning, encryption, monitoring, and platform-managed operations. Some Oracle features map directly, while others map to Azure-native patterns that deliver similar outcomes using a different architecture. Use this page for learning and architecture discussions \u2014 always validate the right Azure SQL deployment option (DB, MI, or SQL Server on VM) against the workload's specific requirements.

Quick Reference: Oracle → Azure Commands

TaskOracleAzure SQL
Check database statusSELECT STATUS FROM V$INSTANCE;SELECT DATABASEPROPERTYEX(DB_NAME(), 'Status');
Active sessionsSELECT * FROM V$SESSION WHERE STATUS='ACTIVE';SELECT * FROM sys.dm_exec_sessions WHERE is_user_process = 1;
Running queriesSELECT * FROM V$SQL WHERE EXECUTIONS > 0;SELECT * FROM sys.dm_exec_requests CROSS APPLY sys.dm_exec_sql_text(sql_handle);
Table sizesSELECT segment_name, bytes/1024/1024 MB FROM DBA_SEGMENTS;EXEC sp_spaceused 'TableName';
Wait eventsSELECT * FROM V$SESSION_WAIT;SELECT * FROM sys.dm_os_wait_stats ORDER BY wait_time_ms DESC;
Explain planEXPLAIN PLAN FOR ... then SELECT * FROM TABLE(DBMS_XPLAN.DISPLAY);SET STATISTICS IO ON; + Actual Execution Plan in SSMS
Index fragmentationANALYZE INDEX ... VALIDATE STRUCTURE;SELECT * FROM sys.dm_db_index_physical_stats(DB_ID(), NULL, NULL, NULL, 'LIMITED');
BackupRMAN> BACKUP DATABASE PLUS ARCHIVELOG;Automated. Manual: BACKUP DATABASE TO URL = 'https://storage.blob.core.windows.net/...'
Kill sessionALTER SYSTEM KILL SESSION 'sid,serial#';KILL <session_id>;

Flashcards

Oracle AWR → Azure equivalent?
Click to reveal answer
Query Store. Captures per-query execution plans and runtime stats. Enabled by default in Azure SQL DB.
1 / 12

Quiz

Q1/5
0 correct
A customer running Oracle RAC for local HA wants to migrate to Azure. Which Azure SQL tier provides equivalent local HA with multiple replicas?