-
Notifications
You must be signed in to change notification settings - Fork 36
feat: basic table scan planning #112
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
namespace iceberg { | ||
|
||
/// \brief Builder class for creating TableScan instances. | ||
class ICEBERG_EXPORT TableScanBuilder { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do we need an abstraction for common parts of other scan builders? We may need more scan types for incremental, append-only, changelog, etc. If there's not much to abstract, I'm fine to keep it as is for now and refactor them later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes, in the Java implementation, the hierarchy of Scan and ScanTask has been defined. I will review this part and try to make it more abstract.
}; | ||
|
||
/// \brief Represents a task to scan a portion of a data file. | ||
struct ICEBERG_EXPORT FileScanTask { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Before defining FileScanTask
, should we abstract it a little bit? I haven't looked at other implementations yet. From the java impl, there's a hierarchy of ScanTask
and FileScanTask
is a combination of ContentScanTask
and PartitionScanTask
.
I'm not sure if we want to take the complexity to support the java SplittableScanTask
, MergableScanTask
, and ScanTaskGroup
. We can revisit these later.
Co-authored-by: Gang Wu <[email protected]>
Co-authored-by: Gang Wu <[email protected]>
Introducing basic scan table data interface