Case q18 · version-scope
We are on Oracle 12.2 and use Oracle Multimedia for images. What are our options on Azure?
Expected: Oracle Multimedia deprecated in 18c, desupported in 19c; images should move to Blob Storage with metadata in the database; note that any lift to 19c+ loses the feature.
No tools
larger model · 1 turn · 30 s · 16.5k in / 2.9k out✗ verdict ✗ grounded ✓ cited
Grader: Wrongly says desupported in 21c; claims works on 19c; uncited claims
Answer
Verdict: On Azure, whichever route you pick, plan to move the images out of Oracle Multimedia. Oracle deprecated Multimedia and removed it by 21c/23ai. Your 12.2 release is also past its support dates, so you'd need to upgrade anyway. The only option that keeps ORDImage working unchanged is running Oracle yourself on Azure VMs, and that only buys time.
Key facts
- Multimedia's status. Oracle deprecated it in 18c/19c. In 19c, parts of it (DICOM, the Java client APIs) are already desupported, and it's fully desupported and removed in 21c and 23ai. Oracle's advice is to store media as SecureFiles BLOBs and do image processing with other tools. See the Oracle Database Upgrade Guide, section "Deprecated and Desupported Features": https://docs.oracle.com/en/database/oracle/oracle-database/21/upgrd/
- 12.2's status. 12.2.0.1 is out of Premier and Extended support. Check Oracle's Lifetime Support Policy: https://www.oracle.com/us/support/library/lifetime-support-technology-069183.pdf
Your options on Azure
| Option | Does Multimedia keep working? | Notes |
|---|---|---|
| 1. Oracle on Azure VMs (lift and shift) | Yes, on 12.2 or 19c | Fastest move, but you stay on an unsupported release or a deprecated feature. You bring your own licence: on Azure, 2 vCPUs count as 1 processor licence. https://learn.microsoft.com/en-us/azure/virtual-machines/workloads/oracle/oracle-overview |
| 2. Oracle Database@Azure, Exadata service on 19c | Deprecated and only partly there | Works only as a stopgap. On 23ai it's gone. |
| 3. Oracle Database@Azure, Autonomous | No | Autonomous Database doesn't support Multimedia, so you must convert to BLOBs first. https://learn.microsoft.com/en-us/azure/oracle/oracle-db/database-overview |
| 4. Move to Azure SQL, SQL MI, or PostgreSQL Flexible Server | No | There's no equivalent type. Microsoft's SSMA and the open-source ora2pg tool won't translate ORDSYS types, so you rework that part yourself. |
Recommended target design (works with options 2–4)
- Pull out the image bytes: read
t.img.source.localData(a BLOB) or callgetContent(). - Move the attributes into plain columns:
height,width,mimeType,contentLengthandfileFormat. - Put the images in Azure Blob Storage. Keep only the blob URL or key and the metadata in the database. This is usually cheaper and faster than keeping BLOBs in the database, and you can serve images through a CDN.
- Move the processing into the application. Replace
process()andprocessCopy()(thumbnails, format conversion) andsetProperties()(reading image metadata such as EXIF). You can use a library like ImageMagick, Pillow or SkiaSharp, or an Azure Function triggered when a blob is uploaded. Azure AI Vision can add tagging and OCR if you need them. - Find everything that uses
ORDSYSbefore you pick a tool. SearchDBA_TAB_COLUMNSandDBA_DEPENDENCIESforORDSYStypes, and cover PL/SQL, triggers and application code. This usually decides how much effort the migration takes.
Practical sequence: convert ORDImage to BLOB plus metadata columns while you're still on 12.2 on-premises, then check that nothing still calls ORDSYS. After that, any Azure target works, and you choose the platform on licensing and features rather than being forced by Multimedia.
Keyword search
larger model · 1 turn · 15 s · 19.4k in / 1.4k out✗ verdict ✓ grounded ✗ cited
Grader: Correct 18c/19c and 19c-loss, but omits the Blob Storage target
8 keyword-search passages
mapping_traditional-auditing--azure-sql-auditingscore 13.487target_oracle-on-azure-vmscore 12.466mapping_em-express--oracle-db-at-azurescore 11.735feature_oracle-multimediascore 11.55source_ms-oracle-on-azure-vm-overviewscore 11.528mapping_varchar2-byte-semantics--azure-pg-flexscore 11.354mapping_data-recovery-advisor--azure-sql-miscore 11.275feature_data-recovery-advisorscore 11.265
Answer
Oracle Multimedia on Azure: your options from Oracle 12.2
Short answer: You can keep Oracle Multimedia running on Azure only by staying on 12.2 on an Azure VM, and that's a dead end. Any upgrade to 19c or move to a non-Oracle target means first converting the ORD* columns to plain SecureFiles LOBs and moving the image processing outside the database.
Where Oracle Multimedia stands [4]
- Your image columns use object types (ORDImage, and possibly ORDAudio, ORDVideo or ORDDoc) under ORDSYS. The images are LOBs wrapped in those types, so tables with these columns can't be moved as they are.
- 12.1 and 12.2: DICOM support and the Java APIs are deprecated. The rest still works.
- 18c: the whole feature is deprecated.
- 19c: the feature is desupported (April 2019 notice). The objects and packages still exist, but they raise errors when used.
- Oracle's own advice, before any Azure move, is to store media in plain SecureFiles LOBs and process it with external tools.
Option 1: Move 12.2 as-is to an Azure VM [2][5]
- Oracle publishes Oracle Linux Marketplace images with Database 12.2 (and 18.3 and 19.3), Standard and Enterprise Edition. You bring your own license and run it yourself.
- Multimedia keeps working as it does today, but only while you stay on 12.2. It's a stopgap, not a destination.
- For high availability and disaster recovery you use Data Guard or GoldenGate, not RAC. Backups use RMAN or Azure Backup.
Option 2: Refactor, then move (required for 19c or any non-Oracle target) [4]
- Convert ORDImage columns to SecureFiles BLOBs and keep any metadata you need in normal columns.
- Rebuild thumbnails, format conversion and metadata extraction outside the database.
- The result can then run on Oracle 19c, either on an Azure VM or on Oracle Database@Azure (which is also the Azure route to RAC [2]).
What the passages don't cover
- Any Azure SQL or PostgreSQL mapping for ORDImage.
- Storing images in Azure Blob Storage instead of LOBs.
- Which Azure service should do the external image processing.
- Support dates for 12.2 itself.
- Which database versions Oracle Database@Azure offers.
The 26ai part of passage [4] is cut off, so I can't say what it adds about the ORDIM component.
Next step: Run a query on DBA_TAB_COLUMNS for columns whose type owner is ORDSYS, and search your code for ORD* method calls. That shows how big the refactor is.
Source: https://learn.microsoft.com/en-us/azure/virtual-machines/workloads/oracle/oracle-overview
Sanity Context · GROQ
smaller model · 8 turns · 38 s · 57.7k in / 3.5k out✓ verdict ✓ grounded ✓ cited
Grader: Correct 18c/19c lifecycle and Blob plus metadata; 19c loss only implied
7 tool calls
- initial_context on groq · 4,126 chars back
- groq_query on groq · 1,683 chars back
*[_type=="oracleFeature" && (name match "*Multimedia*" || slug.current match "*multimedia*")]{_id, name, slug, category, introducedIn, deprecatedIn, desupportedIn, oracleReplacement, reviewStatus, "sources": sources[]->{title,url}} - groq_query on groq · 4,216 chars back
*[_type=="mapping" && oracleFeature._ref=="feature_oracle-multimedia"]{_id, fidelity, effort, rationale, appliesToOracleVersions, "azureTarget": azureTarget->{name, slug, service, tierNotes}, "sources": sources[]->{title,url}, "caveats": *[_type=="caveat" && references(^._id)]{severity, statement, appliesTo, firsthand, "evidence": evidence->{title,url}}} - array_field_reader on groq · 114 chars back
{ "mode": "outline", "documentId": "feature_oracle-multimedia", "field": "obituary" } - array_field_reader on groq · 147 chars back
{ "mode": "outline", "documentId": "feature_oracle-multimedia", "field": "summary" } - groq_query on groq · 387 chars back
*[_type=="dispute" && (claimA->_id=="caveat_sqlmi-no-filestream" || claimB->_id=="caveat_sqlmi-no-filestream")]{title, whatDisagrees, resolution} - array_field_reader on groq · 1,851 chars back
{ "mode": "range", "documentId": "feature_oracle-multimedia", "field": "summary", "range": { "startIndex": 0, "endIndex": 3 } }
Answer
Verdict: On Oracle 12.2, Oracle Multimedia has no direct Azure equivalent — the dataset records two partial/workaround paths (Azure SQL Database/MI with varbinary(max), or Blob Storage/ADLS with metadata in relational columns), both requiring you to rebuild the media-processing logic outside the database.
Feature status at 12.2: Oracle Multimedia (formerly interMedia) provided ORDImage/ORDAudio/ORDVideo/ORDDoc object types with in-database processing (thumbnails, format conversion, metadata extraction, DICOM). At 12.2, DICOM support and the Java APIs are already deprecated per the 12.1/12.2 Upgrade Guides; the feature as a whole isn't deprecated until 18c and is desupported in 19c (Oracle's replacement guidance: SecureFiles LOBs plus external media processing). Deprecated Features in Oracle Database 12c Release 2 (12.2), Deprecated Features in Oracle Database 18c, Oracle Database Changes, Desupports, and Deprecations (Upgrade Guide 19c)
Option 1 — Azure SQL Database / Managed Instance (fidelity: partial, effort: M, applies to 11.2–18c including 12.2)
The binary payload fits varbinary(max) (same mapping SSMA already uses for BLOB/BFILE), and full-text search can index varbinary via filters. But there is no in-database processing equivalent for the Multimedia methods themselves. SSMA for Oracle: Project Settings (Type Mapping)
- Major caveat: FILESTREAM and FileTables are not supported on Azure SQL Database or Managed Instance, and FILESTREAM-containing backups can't be restored to Managed Instance — so large media should go in
varbinary(max)or external Blob Storage instead. T-SQL differences between SQL Server and Azure SQL Managed Instance
Option 2 — Azure Blob Storage / Data Lake Storage Gen2 (fidelity: workaround, effort: L, applies to 11.2–18c including 12.2) Since Multimedia content is usually already stored as BLOBs/BFILEs under the hood, and Azure has no in-database media type, the pragmatic pattern is to move binaries to Blob/ADLS and keep path, content type, and extracted metadata in relational columns. Thumbnail generation and format conversion move to application code or Azure Functions. No caveats are recorded for this path in the dataset. Azure Data Lake Storage overview (built on Blob Storage), Azure Functions overview
Gaps: No dispute records touch this feature/mapping pair, and the dataset has no caveats recorded for the Blob/ADLS option.
GROQ + Knowledge Base
smaller model · 8 turns · 33 s · 62.9k in / 2.9k out✓ verdict ✓ grounded ✓ cited
Grader: Correct lifecycle, Blob plus metadata, explicit desupport in 19c
7 tool calls
- initial_context on groq · 4,126 chars back
- initial_context on kb · 7,679 chars back
- groq_query on groq · 1,683 chars back
*[_type=="oracleFeature" && (name match "*Multimedia*" || slug.current match "*multimedia*")]{_id, name, slug, category, introducedIn, deprecatedIn, desupportedIn, oracleReplacement, reviewStatus, "sources": sources[]->{title,url}} - groq_query on groq · 4,107 chars back
*[_type=="mapping" && oracleFeature->slug.current=="oracle-multimedia"]{_id, fidelity, effort, rationale, appliesToOracleVersions, "azureTarget": azureTarget->{name, service, tierNotes}, "sources": sources[]->{title,url}, "caveats": *[_type=="caveat" && references(^._id)]{severity, statement, appliesTo, firsthand, "evidence": evidence->{title,url}}} - array_field_reader on groq · 1,851 chars back
{ "mode": "range", "documentId": "feature_oracle-multimedia", "field": "summary", "range": { "startIndex": 0, "endIndex": 20 } } - array_field_reader on groq · 114 chars back
{ "mode": "range", "documentId": "feature_oracle-multimedia", "field": "obituary", "range": { "startIndex": 0, "endIndex": 20 } } - groq_query on groq · 439 chars back
*[_type=="dispute" && (claimA->mapping->oracleFeature->slug.current=="oracle-multimedia" || claimB->mapping->oracleFeature->slug.current=="oracle-multimedia")]{title, whatDisagrees, resolution}
Answer
No dispute in the dataset touches Oracle Multimedia. Here's the verdict.
Verdict: On Oracle 12.2, Oracle Multimedia has no direct equivalent on Azure. The dataset records two options — Azure SQL Database (partial fidelity) and Azure Blob Storage/ADLS Gen2 (workaround fidelity) — both requiring the media-processing logic to be rebuilt outside the database.
Lifecycle note (scoped to 12.2): Oracle Multimedia (formerly interMedia) is not yet deprecated at 12.2 — the 12.1/12.2 Upgrade Guides only deprecate parts of it (DICOM support, Java APIs). It is deprecated as a whole starting 18c and desupported in 19c (implementation removed; objects/packages remain but raise errors when used). Oracle's recorded replacement is "SecureFiles LOBs plus external media processing." Deprecated Features in Oracle Database 12c Release 2 (12.2), Deprecated Features in Oracle Database 18c, Oracle Database Changes, Desupports, and Deprecations (19c)
Option 1 — Azure SQL Database · fidelity: partial · effort: M (applies to Oracle 11.2, 12.1, 12.2, 18c)
- The binary payload of Multimedia objects (ORDImage/ORDAudio/ORDVideo/ORDDoc, LOBs wrapped in object types) fits
varbinary(max), the same type SSMA already uses for BLOB/BFILE; full-text search can index varbinary documents through filters. The Multimedia methods (thumbnailing, metadata extraction, format conversion) have no equivalent and must be rebuilt outside the database. SSMA for Oracle: Project Settings (Type Mapping), Compare SQL Database Engine features: Azure SQL Database vs Managed Instance - Caveat (major severity): FILESTREAM/FileTable are not supported on Azure SQL Database or Managed Instance, and a backup with FILESTREAM filegroups cannot be restored to Managed Instance — so very large media should use
varbinary(max)or external Blob Storage rather than FILESTREAM. T-SQL differences between SQL Server and Azure SQL Managed Instance
Option 2 — Azure Blob Storage / Data Lake Storage Gen2 · fidelity: workaround · effort: L (applies to Oracle 11.2, 12.1, 12.2, 18c)
- Recorded pattern: since Multimedia content usually already sits in BLOBs/BFILEs, move the binaries to Blob Storage/ADLS and keep path, content type, and extracted metadata in relational columns. Processing (thumbnails, format conversion) moves to application code or Azure Functions. No caveats recorded for this mapping. Azure Data Lake Storage overview, Azure Functions overview
Gaps: No mapping to Azure SQL Managed Instance, PostgreSQL Flexible Server, or Oracle Database@Azure is recorded for Oracle Multimedia specifically in this dataset, and no dispute or KB "pattern" entry addresses this feature — the two mappings above are the complete evidence set found.