Class TableScan

Inheritance Relationships

Base Type

Class Documentation

class ral::batch::TableScan : public ral::cache::kernel

This kernel loads the data from the specified data source.

Public Functions

TableScan(std::size_t kernel_id, const std::string &queryString, std::shared_ptr<ral::io::data_provider> provider, std::shared_ptr<ral::io::data_parser> parser, ral::io::Schema &schema, std::shared_ptr<Context> context, std::shared_ptr<ral::cache::graph> query_graph)

Constructor for TableScan

Parameters
  • kernel_id: Kernel identifier.

  • queryString: Original logical expression that the kernel will execute.

  • loader: Data loader responsible for executing the batching load.

  • schema: Table schema associated to the data to be loaded.

  • context: Shared context associated to the running query.

  • query_graph: Shared pointer of the current execution graph.

inline virtual std::string kernel_name()
ral::execution::task_result do_process(std::vector<std::unique_ptr<ral::frame::BlazingTable>> inputs, std::shared_ptr<ral::cache::CacheMachine> output, cudaStream_t stream, const std::map<std::string, std::string> &args) override
virtual kstatus run() override

Executes the batch processing. Loads the data from their input port, and after processing it, the results are stored in their output port.

Return

kstatus ‘stop’ to halt processing, or ‘proceed’ to continue processing.

virtual std::pair<bool, uint64_t> get_estimated_output_num_rows() override

Returns the estimated num_rows for the output at one point.

Return

A pair representing that there is no data to be processed, or the estimated number of output rows.