Source code for splicemachine.features.training_view

from typing import List

[docs]class TrainingView: def __init__(self, *, pk_columns: List[str], ts_column, label_column, view_sql, name, description, view_id = None, **kwargs): self.pk_columns = pk_columns self.ts_column = ts_column self.label_column = label_column self.view_sql = view_sql self.name = name self.description = description self.view_id = view_id args = {k.lower(): kwargs[k] for k in kwargs} # Make all keys lowercase args = {k: args[k].split(',') if 'columns' in k and isinstance(args[k], str) else args[k] for k in args} # Make value a list for specific pkcolumns and contextcolumns because Splice doesn't support Arrays self.__dict__.update(args) def __repr__(self): return f'TrainingView(' \ f'PKColumns={self.pk_columns}, ' \ f'TSColumn={self.ts_column}, ' \ f'LabelColumn={self.label_column}, \n' \ f'ViewSQL={self.view_sql}, \n' \ f'ViewID={self.view_id}' def __str__(self): return self.__repr__()