Oracle 23ai New Features: AI Vector Search, JSON Duality, and Why It Matters for DBAs
Oracle Database 23ai brings native AI vector search, JSON Relational Duality, and True Cache to the enterprise. Here is what actually changes for multi-platform DBAs.
Oracle 23ai New Features: AI Vector Search, JSON Duality, and Why It Matters for DBAs
Oracle Database 23ai brings native AI vector search, JSON Relational Duality, and True Cache to the enterprise. Here is what actually changes for multi-platform DBAs.
---
Oracle Database 23ai landed in May 2024, and for the first time in a long while, Oracle shipped something that actually changes how you would design a system — not just how you would tune one. After spending time with the documentation, here is what I think matters most if you are running Oracle as part of a multi-platform DBA operation.
This is not a feature parade. I will skip the things that are incremental polish and focus on the ones that change the decision calculus.
1. AI Vector Search — Native Embeddings in the Database
This is the headline feature, and for once, Oracle did not just bolt something on. Oracle 23ai introduces a native VECTOR datatype, a VECTOR_DISTANCE() function, and HNSW / IVF index support — meaning you can store embeddings, search them, and do it inside the same transaction boundary as your relational data. No ETL to a separate vector store. No eventual consistency between your Postgres vector extension and your source of truth.
CREATE TABLE product_embeddings (\n product_id NUMBER PRIMARY KEY,\n name VARCHAR2(200),\n description VARCHAR2(2000),\n embedding VECTOR(768) -- 768-dimension float vector\n);\n\nCREATE SEARCH INDEX emb_idx ON product_embeddings(embedding)\n FOR VECTOR\n PARAMETERS (type HNSW, neighbors 16, construction 32);\n\nSELECT name, description,\n VECTOR_DISTANCE(embedding, :query_embedding, COSINE) AS score\nFROM product_embeddings\nORDER BY score\nFETCH FIRST 10 ROWS ONLY;
The VECTOR_DISTANCE function supports cosine, Euclidean, and dot product. If you are already running Oracle Exadata or Autonomous Database, this makes the "should we move our vector workload to a separate Pinecone/Milvus instance" question largely moot for greenfield work.
2. JSON Relational Duality — The Most Interesting Architecture Decision in 23ai
Free · 2 Minutes
How healthy is your database, really?
Get your free database health score — spot risks before they become incidents.
JSON Relational Duality lets you define a single table that simultaneously behaves as structured relational rows and as JSON documents. Oracle generates a dual-access view automatically — you can query it with SQL or read it as JSON without maintaining two separate data stores.
The use case is the dual-write pattern: an application that needs to serve both a transactional workload (SQL, foreign keys, joins) and a document-oriented API against the same underlying data, without duplication or sync jobs.
CREATE JSON RELATIONAL DUALITY VIEW order_dv AS\nSELECT o.order_id, o.customer_id, o.order_date,\n o.status,\n (SELECT ROW j FROM JSON_TABLE(\n o.line_items, '
Free · Takes 2 Minutes
Get your free database health score
Find out exactly where your database is vulnerable before it causes an incident. 30+ years of DBA expertise, distilled into a single assessment.
##
← All posts