-
Notifications
You must be signed in to change notification settings - Fork 10
Read Path Flow
Harish Butani edited this page Jan 13, 2022
·
4 revisions
This document contains the structures and functions for read plans.
- Responsible for setting up an OraScan
- for an OracleTable
with optional filter pushdowns and
requiredSchema
. It sets up an OraPlan, that is passed to the OraScan.- It is not required for the OraPlan to apply all filters, as these are applied on top of the DataSourceV2ScanRelation Ensuring these can be pushed to Oracle will be done in the Oracle pushdown rules.
OraScan :
- Acts like a FileScan, so the PruneFileSourcePartitions rule can apply on this scan, and partition and data filter. Expressions can be pushed to it.
- But implementation behavior is completely overridden.
- It has an empty
fileIndex
. - It reports
partitionFilters
anddataFilters
to be empty. The filters pushed into the OraPlan are reapplied on top of the DataSourceV2ScanRelation. - For physical planning:
- It uses OraQuerySplitting to infer how to parallelize the OraPlan.
- Each OracleDBSplit has an enhanced OraPlan.
- An OraPartition is set up for each split with its Oracle query, bind values and preferred locations.
- Statistics estimation: Try to use a table's statistics; otherwise the estimate is unknown.
- Quick Start
- Latest Demo
- Configuration
- Catalog
- Translation
- Query Splitting details
- DML Operations
- Language Integration
- Dockerized Demo env.
- Sharded Database
- Developer Notes