Restrictions for Oracle AI Vector Search
The following are restrictions for Oracle AI Vector Search in Oracle AI Database 26ai.
- The feature Open Neural Network Exchange (ONNX) is only supported on the x86-64 Linux and Linux for Arm (aarch64) platforms. ONNX is not supported on Microsoft Windows.
 - To size the Vector Pool manually, use the 
VECTOR_MEMORY_SIZEinitialization parameter. You can dynamically modify this parameter at the following levels:- At the multitenant container database (CDB) level,
                            
VECTOR_MEMORY_SIZEspecifies the current size of the Vector Pool. Reducing the parameter value evicts vector usage that exceeds the new size. - At the pluggable database (PDB), level
                            
VECTOR_MEMORY_SIZEspecifies the maximum Vector Pool usage allowed by a PDB. Reducing the parameter value evicts vector usage that exceeds the new quota. 
Note:
WhenVECTOR_MEMORY_SIZEis set to 1 andsga_targetis greater than 0 upon CDB initialization, HNSW index creation will automatically grow the vector memory pool to satisfy the new index. In this configuration, the PDBVECTOR_MEMORY_SIZEvalue will default to 0 and cannot be changed using theALTER SYSTEMcommand. - At the multitenant container database (CDB) level,
                            
 - 
                     
Table-Level Support
- 
                           
Truncate or move table operations are supported but will mark global vector indexes unusable.
 - 
                           
Partition management (PMOP) operations (for example,
DROP,TRUNCATE,EXCHANGE,MERGE,MOVE,COALESCE, andSPLIT) are supported but will mark global vector indexes unusable. - 
                           
Adding a hash partition will also mark global vector indexes unusable. However, adding a range or list partition will not mark global vector indexes unusable.
 - 
                           
Vector columns are not supported either in or as the following:
- Index organized tables (IOTs) (neither as a primary key or as a non-key column)
 - Clusters or cluster tables
 - Global temporary tables
 - Blockchain tables
 - Immutable tables
 - Partitioning and subpartitioning keys
 - Primary and foreign keys
 - Unique and check constraints
 - Default value
 - Modify column
 - Manual segment space management (MSSM) tablespace (only a SYS user can create vectors as BasicFiles in MSSM tablespace)
 - Continuous Query Notification (CQN) queries
 - Non-vector indexes such as B-tree, bitmap, reverse key, text, spatial indexes
 
 - For local Inverted Flat File (IVF) indexes:
                           
ADDnon-hash vector indexes are supported but will mark vector indexes unusable.- All other PMOP operations are not supported and return an error when attempted.
 
 
 - 
                           
 - 
                     
Type-Level Support
Vector column specification does not support the following:
- Encryption clause
 - SecureFiles storage clause
 
 - 
                     
Query-Level Support
- 
                           
The partition row-limiting clause does not use vector indexes.
 - 
                           
There is limited cost-based optimization support for vector indexes.
 - 
                           
SQL constructs with vector columns do not support the following:
- Distinct, Count Distinct
 - Order By, Group By
 - Join condition
 - Comparison operators (for example, >, <, =)
 
 
 - 
                           
 - 
                     
Index-Level Support
- 
                           
Vector indexes do not support the following:
- External tables
 - IOTs
 - Clusters or cluster tables
 - Global temporary tables
 - Blockchain tables
 - Immutable tables
 - Materialized views
 
 - 
                           
There is no support for the following:
- Function-based vector index
 - Alter index DDL for vector indexes
 - Online creation of vector indexes
 
 
 - 
                           
 - The latest python-oracledb, node-oracledb, JDBC, ODP.NET, and OCI drivers enable native binds.
                     
- All other SQL drivers need to use CLOBs or VARCHAR2 for binds and for vector definitions.
 - Oracle clients from release 19c and release 21c will see vectors as CLOBs.
 
 - Integration with the following is not supported:
                     
- Vector indexes with transportable tablespaces are not supported with Oracle Data Pump.
 - Oracle AI Database Advanced Queuing
 - Oracle AI Database Gateways
 
 - A maximum of 65535 dimensions is supported.
 - Data redaction is not supported for the 
VECTORdata type. Specifically, you cannot:- Add a data redaction policy on a vector column.
 - Alter a table to modify a column to the 
VECTORdata type if the column has a redaction policy defined on it.