Changes in This Release for This Guide
This topic contains the following.
Changes in Oracle Database Release 23ai
The following are the changes in Oracle Database Graph Developer's Guide for RDF Graph for Oracle Database Release 23ai.
Note:
Before you get started with the RDF features, you must install the database patch listed in the MOS note 3030523.1, currently available on My Oracle Support. The patch can be applied for all revision versions of Oracle Database Release 23.4.x.Enhanced Support for Querying Semantic Data
In addition to the SEM_MATCH table function, you can also query semantic data in the following order:
- Use the SEM_APIS.GET_SQL function to obtain the SQL translation for a SPARQL query.
- Run the SEM_APIS.CREATE_SEM_SQL as a one-time setup procedure to create the SEM_SQL SQL Macro.
- Compile the SQL (SEM_APIS.SEM_SQL_COMPILE) and query the semantic data using the SEM_SQL SQL Macro.
See Using the SEM_APIS.GET_SQL Function and SEM_SQL SQL Macro to Query RDF Data for more information.
Support for In-Memory Subject-Property-Matrix Tables
You can create in-memory Subject-Property-Matrix (SPM) tables by using the
INMEMORY=T
option in SEM_APIS.BUILD_SPM_TAB.
See In-Memory Result Tables for more information.
Support for GeoSPARQL 1.1
The Open Geospatial Consortium (OGC) has proposed GeoSPARQL 1.1 as an update to the original OGC GeoSPARQL standard. This update includes new literal data types based on GeoJSON and KML geometry serializations and several new spatial query functions and spatial aggregates.
These new GeoSPARQL 1.1 geometry literals, query functions and aggregates can be used in SPARQL queries through SPARQL APIs provided by the RDF feature of Oracle Database.
See Spatial Support for more information.
Support for Auto-List Subpartitioning of RDF_LINK$ table
To improve the performance of SPARQL update (CLEAR
,
MOVE
, COPY
, or DROP
query
constructs, using keywords such as, DEFAULT
,
NAMED
, GRAPH
, and ALL
), you can
create the RDF_LINK$ table as a list-list composite partitioned table where
subpartitions are automatically maintained on the graph ID
. You can
create the auto-list subpartitioned table by using the
MODEL_PARTITIONING=BY_LIST_G
option in SEM_APIS.CREATE_SEM_NETWORK.
See RDF Networks for more information.
Support for Retrieving Query Execution Plan Cost
You can use the SEM_APIS.GET_PLAN_COST API procedure to get the cost of a query execution plan.
See SEM_APIS.GET_PLAN_COST for more information.
Support for 32K VARCHAR RDF Values
You can now store RDF values up to 32767 bytes in length as VARCHAR
values in your semantic network if your database has extended VARCHAR support
enabled (MAX_STRING_SIZE=EXTENDED
). In previous releases, only RDF
values up to 4000 bytes in length were stored as VARCHAR values. RDF values larger
than this limit (4K or 32K bytes), are stored as CLOBs. A 32K VARCHAR network
results in less values being stored as CLOBs, which increases performance for
queries, DMLs, and bulk load operations on large RDF literals.
To control the maximum VARCHAR size in your semantic network, you can pass
NETWORK_MAX_STRING_SIZE=EXTENDED
for 32k VARCHAR or
NETWORK_MAX_STRING_SIZE=STANDARD
(default) for 4K VARCHAR in
the options argument of SEM_APIS.CREATE_SEM_NETWORK.
A pre-existing 4K VARCHAR semantic network cannot be migrated to a 32K VARCHAR
semantic network. You must create a new semantic network using
NETWORK_MAX_STRING_SIZE=EXTENDED
and reload your data into the
new network.
Deprecation of MDSYS-Owned Semantic Network
Creation of RDF graph networks in the MDSYS schema is deprecated. Oracle recommends that you create RDF graph networks in a user schema, which was enabled in Oracle Database 19c.
An existing MDSYS-owned semantic network can be migrated to a shared schema-private semantic network by using the SEM_APIS.MOVE_SEM_NETWORK_DATA and SEM_APIS.APPEND_SEM_NETWORK_DATA procedures.
See MDSYS-Owned Semantic Network in Appendix D for more information on MDSYS-owned semantic networks.
Running Graph Analytics Algorithms with RDF Graphs
You can create property graph views from an RDF graph. You can first run SEM_MATCH queries to create database views that represent vertex and edge tables, and then create a PGQL property graph from those views. This property graph can be loaded into the graph server for running graph analytics algorithms.
See Property Graph Views on RDF Graphs for more information.
Parent topic: Changes in This Release for This Guide