@@ -413,13 +413,17 @@ def list_training_sets(self) -> Dict[str, Optional[str]]:
413413 """
414414 raise NotImplementedError ("To see available training views, run fs.describe_training_views()" )
415415
416- def _validate_feature_set (self , schema_name , table_name ):
416+ def _validate_feature_set (self , schema_name : str , table_name : str ):
417417 """
418418 Asserts a feature set doesn't already exist in the database
419419 :param schema_name: schema name of the feature set
420420 :param table_name: table name of the feature set
421421 :return: None
422422 """
423+ # database stores object names in upper case
424+ schema_name = schema_name .upper ()
425+ table_name = table_name .upper ()
426+
423427 str = f'Feature Set { schema_name } .{ table_name } already exists. Use a different schema and/or table name.'
424428 # Validate Table
425429 assert not self .splice_ctx .tableExists (schema_name , table_name = table_name ), str
@@ -502,6 +506,7 @@ def create_feature(self, schema_name: str, table_name: str, name: str, feature_d
502506 # database stores object names in upper case
503507 schema_name = schema_name .upper ()
504508 table_name = table_name .upper ()
509+
505510 if self .splice_ctx .tableExists (schema_name , table_name ):
506511 raise SpliceMachineException (f"Feature Set { schema_name } .{ table_name } is already deployed. You cannot "
507512 f"add features to a deployed feature set." )
@@ -612,7 +617,7 @@ def _process_features(self, features: List[Union[Feature, str]]) -> List[Feature
612617 " a feature name (string) or a Feature object"
613618 return all_features
614619
615- def deploy_feature_set (self , schema_name , table_name ):
620+ def deploy_feature_set (self , schema_name : str , table_name : str ):
616621 """
617622 Deploys a feature set to the database. This persists the feature stores existence.
618623 As of now, once deployed you cannot delete the feature set or add/delete features.
@@ -622,6 +627,9 @@ def deploy_feature_set(self, schema_name, table_name):
622627 :param table_name: The table of the created feature set
623628 """
624629 try :
630+ # database stores object names in upper case
631+ schema_name = schema_name .upper ()
632+ table_name = table_name .upper ()
625633 fset = self .get_feature_sets (_filter = {'schema_name' : schema_name , 'table_name' : table_name })[0 ]
626634 except :
627635 raise SpliceMachineException (
@@ -701,13 +709,17 @@ def describe_training_view(self, training_view: str) -> None:
701709 def set_feature_description (self ):
702710 raise NotImplementedError
703711
704- def get_training_set_from_deployment (self , schema_name , table_name ):
712+ def get_training_set_from_deployment (self , schema_name : str , table_name : str ):
705713 """
706714 Reads Feature Store metadata to rebuild orginal training data set used for the given deployed model.
707715 :param schema_name: model schema name
708716 :param table_name: model table name
709717 :return:
710718 """
719+ # database stores object names in upper case
720+ schema_name = schema_name .upper ()
721+ table_name = table_name .upper ()
722+
711723 metadata = self ._retrieve_training_set_metadata_from_deployement (schema_name , table_name )
712724 features = metadata ['FEATURES' ].split (',' )
713725 tv_name = metadata ['NAME' ]
@@ -720,13 +732,17 @@ def get_training_set_from_deployment(self, schema_name, table_name):
720732 training_set_df = self .get_training_set (features = features , start_time = start_time , end_time = end_time )
721733 return training_set_df
722734
723- def _retrieve_model_data_sets (self , schema_name , table_name ):
735+ def _retrieve_model_data_sets (self , schema_name : str , table_name : str ):
724736 """
725737 Returns the training set dataframe and model table dataframe for a given deployed model.
726738 :param schema_name: model schema name
727739 :param table_name: model table name
728740 :return:
729741 """
742+ # database stores object names in upper case
743+ schema_name = schema_name .upper ()
744+ table_name = table_name .upper ()
745+
730746 training_set_df = self .get_training_set_from_deployment (schema_name , table_name )
731747 model_table_df = self .splice_ctx .df (f'SELECT * FROM { schema_name } .{ table_name } ' )
732748 return training_set_df , model_table_df
@@ -785,6 +801,7 @@ def display_model_drift(self, schema_name: str, table_name: str, time_intervals:
785801 # database stores object names in upper case
786802 schema_name = schema_name .upper ()
787803 table_name = table_name .upper ()
804+
788805 # set default timeframe if not specified
789806 if not start_time :
790807 start_time = datetime (1900 , 1 , 1 , 0 , 0 , 0 )
0 commit comments