easy_sql.sql_processor.step

Module Contents

Classes

ExecutedSqlTransformer

ReportCollector

SqlCleaner

Step

StepConfig

StepFactory

StepType

class easy_sql.sql_processor.step.ExecutedSqlTransformer
abstract transform_create_view_sql(self, view_name, select_sql)
Parameters
  • view_name (str) –

  • select_sql (str) –

transform_func_ref_sql(self, func_ref_sql)
Parameters

func_ref_sql (Optional[str]) –

abstract transform_save_table_sql(self, table_name, select_sql)
Parameters
  • table_name (str) –

  • select_sql (str) –

class easy_sql.sql_processor.step.ReportCollector
abstract collect_report(self, step, status=None, message=None)
Parameters
  • step (Step) –

  • status (Optional[str]) –

  • message (Optional[str]) –

class easy_sql.sql_processor.step.SqlCleaner
clean_sql(self, sql)

Clean a sql with comments and semicolon to form a clean select sql, in order to be used to construct a new sql. It works as below: - remove leading comments - remove tail comments - remove the last semicolon

Parameters

sql (str) –

Return type

str

class easy_sql.sql_processor.step.Step(id, reporter_collector, func_runner, target_config=None, select_sql=None, debug_var_tmpl_replace=False, *, executed_sql_transformer=None)
Parameters
collect_report(self, status=None, message=None)
get_executed_sql(self)
Return type

str

is_template_statement(self)
preprocess_select_sql(self, context)
Parameters

context (easy_sql.sql_processor.context.ProcessorContext) –

read(self, backend, context)
Parameters
Return type

Optional[easy_sql.sql_processor.backend.Table]

should_run(self, context)
Parameters

context (easy_sql.sql_processor.context.ProcessorContext) –

write(self, backend, table, context, dry_run=False)
Parameters
class easy_sql.sql_processor.step.StepConfig(step_type, step_name, condition, line_no, step_config_str='')
Parameters
  • step_type (str) –

  • step_name (Optional[str]) –

  • condition (Optional[str]) –

  • line_no (int) –

  • step_config_str (str) –

STEP_CONFIG_PATTERN = ^-- target\s*=\s*(\w+)(.*)$
static from_config_line(config_line, line_no)
Parameters
  • config_line (str) –

  • line_no (int) –

Return type

StepConfig

has_condition(self)
is_target_name_a_func(self)
class easy_sql.sql_processor.step.StepFactory(reporter, func_runner, executed_sql_transformer=None)
Parameters
create_from_sql(self, sql, includes=None)
Parameters
  • sql (str) –

  • includes (Optional[Dict[str, str]]) –

Return type

List[Step]

class easy_sql.sql_processor.step.StepType
ACTION = action
BROADCAST = broadcast
CACHE = cache
CHECK = check
FUNC = func
HIVE = hive
LIST_VARIABLES = list_variables
LOG = log
OUTPUT = output
TEMP = temp
TEMPLATE = template
VARIABLES = variables
static all()
Return type

List[str]