Skip to content

Oracle

The Oracle connector is based on the node-oracledb library.

The Oracle connector need some attention to install correctly. See the api/Dockerfile for more information.

As a minimum, the connection user needs read access to the data dictionary views in the left column below. Where a faster DBA_* alternative exists, the connector uses it automatically when the user has catalog-read access (SELECT_CATALOG_ROLE or SELECT ANY DICTIONARY), and falls back to the ALL_* view otherwise. The ALL_* views run a per-row privilege check that is slow on large data dictionaries; the DBA_* twins carry no such check and are substantially faster.

Minimum (ALL_*)Faster alternative (DBA_*)
sys.ALL_OBJECTSDBA_OBJECTS
sys.ALL_TABLESDBA_TABLES
sys.ALL_VIEWSDBA_VIEWS
sys.ALL_TAB_COLUMNSDBA_TAB_COLUMNS
sys.ALL_CONSTRAINTSDBA_CONSTRAINTS
sys.ALL_CONS_COLUMNSDBA_CONS_COLUMNS
sys.ALL_USERSDBA_USERS
sys.ALL_TAB_COMMENTSDBA_TAB_COMMENTS
sys.ALL_COL_COMMENTSDBA_COL_COMMENTS
sys.GLOBAL_NAME

The faster path requires read access to all of the DBA_* views; a partial grant falls back to ALL_*. Note the scope difference: ALL_* exposes only the objects the user has privileges on, whereas DBA_* exposes every schema in the database (Oracle’s own system schemas are always excluded). With catalog-read access the import therefore covers all non-system schemas — use Datasource Filters to narrow the scope if needed.

To populate the disk size property (dataset_size_bytes), read access to the following is also required. The connector works without them, but the property will be null.

  • sys.dba_segments
  • sys.dba_indexes
  • sys.v$pdbs (only if PDB database)
  • sys.v$database (only if not PDB database)

Note that other permissions might be required if custom import queries are used.

Datasource filters are applied in the source database as a WHERE clause before metadata is fetched, so filtered-out data never leaves the datasource. See Datasource Filters.

The Oracle connector does not provide dataset/table lineage out of the box as this is missing in the information schema.