Source: factory.core/extend.edit/ObjFeatureStoreEdit.py
Feature store editing and management class.
Provides functionality for:
| Method | Signature | Description |
|---|---|---|
| add_feature_entry | add_feature_entry(feature_code: str, package: str, module: str, source_query: str = '', source_query_pk: str = '', input_table_1: str = '', constant_table: str = '', input_globals_1: str = '', input_globals_2: str = '', input_globals_3: str = '') -> None |
Adds a new feature entry to def_feature. |
| add_feature_definition | add_feature_definition(feature_code: str, package: str, feature: str, feature_type: FeatureTypeEnum, feature_definition: str, feature_data_type: FeatureDataTypeEnum, is_global: bool = False, is_active: bool = True, notes: str = '', input_table: str = '', input_table_pk: str = '', input_table_null_strategy: str = 'KEEP_NULL', input_table_constants: str = '') -> None |
Adds or updates a single feature's definition to def_features. |
| add_expectation_definition | add_expectation_definition(feature_code: str, package: str, feature: str, expectation_name: str, expectation_config_json: str, severity: str = 'ERROR', notes: str = '') -> None |
Adds or updates a Great Expectations rule for a feature. |
| add_feature_dependency | add_feature_dependency(feature_code: str, package: str, feature: str, depends_on_feature: str) -> None |
Adds a dependency relationship between features. |
| display_feature_set | display_feature_set(feature_code: str, package: str) -> None |
Displays the feature set in a rich table format. |
| create_feature_version | create_feature_version(feature_code: str, package: str, created_by: str = '', notes: str = '') -> int |
Creates a new version of feature definitions for A/B testing. |
| activate_version | activate_version(feature_code: str, package: str, version: int) -> None |
Activates a specific feature version. |
| get_active_version | get_active_version(feature_code: str, package: str) -> int |
Gets the currently active version number. |
| track_feature_lineage | track_feature_lineage(feature_code: str, package: str, feature: str, source_table: str, source_column: str, lineage_type: str = 'DIRECT') -> None |
Records feature lineage information. |
| get_affected_features | get_affected_features(source_table: str, source_column: str) -> List[str] |
Finds all features that depend on a source column. |
| generate_feature_documentation | generate_feature_documentation(feature_code: str, package: str, include_stats: bool = True) -> str |
Generates comprehensive markdown documentation for features. |
| save_to_yaml | save_to_yaml(feature_code: str, package: str, output_file: str) -> None |
Saves complete feature set definition to a YAML file. |
| load_from_yaml | load_from_yaml(input_file: str, overwrite: bool = False) -> None |
Loads complete feature set definition from a YAML file. |
| get_expectations | get_expectations(feature_code: str, package: str, feature: str = '*') -> List[Dict] |
Retrieves expectation definitions from def_feature_expectation. |
| validate_feature_set | validate_feature_set(feature_code: str, package: str, feature: str = '*') -> Dict |
Validates features against Great Expectations rules. |
| compute_feature_statistics | compute_feature_statistics(feature_code: str, package: str) -> Dict[str, Dict] |
Computes comprehensive statistics for all features. |
| record_feature_usage | record_feature_usage(feature_code: str, package: str, feature: str, model_name: Optional[str] = None, application_name: Optional[str] = None, response_time_ms: Optional[float] = None, error: bool = False) -> None |
Records feature usage for analytics. |
| get_usage_analytics_json | get_usage_analytics_json(feature_code: str, package: str, days: int = 30) -> str |
Generates JSON report of feature usage analytics. |
| assess_feature_quality_json | assess_feature_quality_json(feature_code: str, package: str, feature: Optional[str] = None) -> str |
Assesses feature quality across multiple dimensions |
| get_query_info_for | get_query_info_for(feature_code: str, package: str) -> Dict[str, str] |
Gets query info for a specific feature code and |
| get_feature_lineage | get_feature_lineage(feature_code: str, package: str, feature: str) -> list |
Gets all source columns that a specific feature |
| get_column_impact | get_column_impact(feature_code: str, package: str, column: str) -> list |
Gets all features that depend on a specific source |
| export_lineage_data | export_lineage_data(feature_code: str, package: str, format: str = 'text') -> str |
Exports complete lineage for a feature set. |
Creates the feature store table for the specified feature code and package.
Triggers Great Expectations validation for a feature set.
Computes comprehensive statistics for all features.
Adds a new feature store entry to def_feature.
Adds or updates a single feature's definition to def_features.
Adds or updates a Great Expectations rule for a feature or feature set.
Adds a dependency relationship between two features.
Loads and displays the feature set definition and all associated features.
Displays the feature set in a rich table format.
Saves feature set definition to YAML file.
Loads feature set definition from YAML file.
Creates a new version of feature definitions for A/B testing.
Activates a specific feature version.
Generates comprehensive markdown documentation for features.
Shows all features that depend on a specific source column.
Shows all source columns that a specific feature depends on.
Exports complete lineage for a feature set as JSON or text.
Generates JSON report of feature usage analytics.
Assesses feature quality and generates JSON report.
Lists all features using input tables with their
Validates all input table configurations for a feature set.
Shows statistics about input table usage for a feature set.
Computes features and displays detailed performance