featurebyte 3.1.2__tar.gz → 3.3.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- featurebyte-3.3.0/PKG-INFO +548 -0
- featurebyte-3.3.0/README.md +385 -0
- featurebyte-3.3.0/featurebyte/__init__.py +637 -0
- featurebyte-3.3.0/featurebyte/api/aggregator/asat_aggregator.py +150 -0
- featurebyte-3.3.0/featurebyte/api/aggregator/base_asat_aggregator.py +68 -0
- featurebyte-3.3.0/featurebyte/api/aggregator/window_aggregator.py +394 -0
- featurebyte-3.3.0/featurebyte/api/base_table.py +1172 -0
- featurebyte-3.3.0/featurebyte/api/catalog.py +1538 -0
- featurebyte-3.3.0/featurebyte/api/deployment.py +657 -0
- featurebyte-3.3.0/featurebyte/api/event_table.py +597 -0
- featurebyte-3.3.0/featurebyte/api/event_view.py +468 -0
- featurebyte-3.3.0/featurebyte/api/feature_list.py +1527 -0
- featurebyte-3.3.0/featurebyte/api/feature_or_target_mixin.py +164 -0
- featurebyte-3.3.0/featurebyte/api/groupby.py +672 -0
- featurebyte-3.3.0/featurebyte/api/item_table.py +413 -0
- featurebyte-3.3.0/featurebyte/api/item_view.py +348 -0
- featurebyte-3.3.0/featurebyte/api/observation_table.py +570 -0
- featurebyte-3.3.0/featurebyte/api/scd_view.py +204 -0
- featurebyte-3.3.0/featurebyte/api/snapshots_table.py +339 -0
- featurebyte-3.3.0/featurebyte/api/snapshots_view.py +337 -0
- featurebyte-3.3.0/featurebyte/api/source_table.py +1718 -0
- featurebyte-3.3.0/featurebyte/api/table.py +148 -0
- featurebyte-3.3.0/featurebyte/api/time_series_table.py +355 -0
- featurebyte-3.3.0/featurebyte/api/time_series_view.py +172 -0
- featurebyte-3.3.0/featurebyte/api/view.py +2111 -0
- featurebyte-3.3.0/featurebyte/app.py +309 -0
- featurebyte-3.3.0/featurebyte/common/documentation/documentation_layout.py +1283 -0
- featurebyte-3.3.0/featurebyte/common/documentation/resource_extractor.py +499 -0
- featurebyte-3.3.0/featurebyte/common/utils.py +508 -0
- featurebyte-3.3.0/featurebyte/common/validator.py +411 -0
- featurebyte-3.3.0/featurebyte/docker/featurebyte.yml +170 -0
- featurebyte-3.3.0/featurebyte/enum.py +854 -0
- featurebyte-3.3.0/featurebyte/exception.py +613 -0
- featurebyte-3.3.0/featurebyte/feast/utils/materialize_helper.py +136 -0
- featurebyte-3.3.0/featurebyte/feast/utils/on_demand_view.py +135 -0
- featurebyte-3.3.0/featurebyte/list_utility.py +149 -0
- featurebyte-3.3.0/featurebyte/migration/service/feature_store_table_cleanup_task.py +123 -0
- featurebyte-3.3.0/featurebyte/migration/service/use_case.py +84 -0
- featurebyte-3.3.0/featurebyte/models/deployment.py +144 -0
- featurebyte-3.3.0/featurebyte/models/development_dataset.py +170 -0
- featurebyte-3.3.0/featurebyte/models/entity_universe.py +1050 -0
- featurebyte-3.3.0/featurebyte/models/entity_validation.py +165 -0
- featurebyte-3.3.0/featurebyte/models/event_table.py +115 -0
- featurebyte-3.3.0/featurebyte/models/feature_job_setting_analysis.py +177 -0
- featurebyte-3.3.0/featurebyte/models/feature_store.py +320 -0
- featurebyte-3.3.0/featurebyte/models/feature_store_cache.py +82 -0
- featurebyte-3.3.0/featurebyte/models/observation_table.py +257 -0
- featurebyte-3.3.0/featurebyte/models/parent_serving.py +223 -0
- featurebyte-3.3.0/featurebyte/models/proxy_table.py +47 -0
- featurebyte-3.3.0/featurebyte/models/request_input.py +398 -0
- featurebyte-3.3.0/featurebyte/models/snapshots_table.py +137 -0
- featurebyte-3.3.0/featurebyte/models/target_namespace.py +76 -0
- featurebyte-3.3.0/featurebyte/models/time_series_table.py +113 -0
- featurebyte-3.3.0/featurebyte/models/use_case.py +75 -0
- featurebyte-3.3.0/featurebyte/models/user_defined_function.py +343 -0
- featurebyte-3.3.0/featurebyte/models/warehouse_table.py +68 -0
- featurebyte-3.3.0/featurebyte/persistent/base.py +844 -0
- featurebyte-3.3.0/featurebyte/persistent/mongo.py +449 -0
- featurebyte-3.3.0/featurebyte/query_graph/enum.py +221 -0
- featurebyte-3.3.0/featurebyte/query_graph/model/common_table.py +360 -0
- featurebyte-3.3.0/featurebyte/query_graph/model/dtype.py +146 -0
- featurebyte-3.3.0/featurebyte/query_graph/model/feature_job_setting.py +737 -0
- featurebyte-3.3.0/featurebyte/query_graph/model/graph.py +718 -0
- featurebyte-3.3.0/featurebyte/query_graph/model/node_hash_util.py +209 -0
- featurebyte-3.3.0/featurebyte/query_graph/model/table.py +855 -0
- featurebyte-3.3.0/featurebyte/query_graph/model/window.py +88 -0
- featurebyte-3.3.0/featurebyte/query_graph/node/base.py +1323 -0
- featurebyte-3.3.0/featurebyte/query_graph/node/cleaning_operation.py +743 -0
- featurebyte-3.3.0/featurebyte/query_graph/node/count_dict.py +772 -0
- featurebyte-3.3.0/featurebyte/query_graph/node/generic.py +2631 -0
- featurebyte-3.3.0/featurebyte/query_graph/node/input.py +572 -0
- featurebyte-3.3.0/featurebyte/query_graph/node/metadata/operation.py +781 -0
- featurebyte-3.3.0/featurebyte/query_graph/node/metadata/sdk_code.py +655 -0
- featurebyte-3.3.0/featurebyte/query_graph/node/nested.py +1018 -0
- featurebyte-3.3.0/featurebyte/query_graph/node/schema.py +519 -0
- featurebyte-3.3.0/featurebyte/query_graph/sql/aggregator/base.py +730 -0
- featurebyte-3.3.0/featurebyte/query_graph/sql/aggregator/base_asat.py +340 -0
- featurebyte-3.3.0/featurebyte/query_graph/sql/aggregator/base_lookup.py +394 -0
- featurebyte-3.3.0/featurebyte/query_graph/sql/aggregator/lookup_target.py +39 -0
- featurebyte-3.3.0/featurebyte/query_graph/sql/aggregator/snapshots_request_table.py +214 -0
- featurebyte-3.3.0/featurebyte/query_graph/sql/aggregator/time_series_window.py +769 -0
- featurebyte-3.3.0/featurebyte/query_graph/sql/ast/base.py +439 -0
- featurebyte-3.3.0/featurebyte/query_graph/sql/ast/input.py +295 -0
- featurebyte-3.3.0/featurebyte/query_graph/sql/ast/join.py +253 -0
- featurebyte-3.3.0/featurebyte/query_graph/sql/builder.py +312 -0
- featurebyte-3.3.0/featurebyte/query_graph/sql/common.py +370 -0
- featurebyte-3.3.0/featurebyte/query_graph/sql/cron.py +254 -0
- featurebyte-3.3.0/featurebyte/query_graph/sql/entity_filter.py +207 -0
- featurebyte-3.3.0/featurebyte/query_graph/sql/feature_compute.py +1089 -0
- featurebyte-3.3.0/featurebyte/query_graph/sql/feature_historical.py +482 -0
- featurebyte-3.3.0/featurebyte/query_graph/sql/interpreter/preview.py +1247 -0
- featurebyte-3.3.0/featurebyte/query_graph/sql/interpreter/tile.py +492 -0
- featurebyte-3.3.0/featurebyte/query_graph/sql/online_serving.py +736 -0
- featurebyte-3.3.0/featurebyte/query_graph/sql/parent_serving.py +239 -0
- featurebyte-3.3.0/featurebyte/query_graph/sql/partition_filter.py +117 -0
- featurebyte-3.3.0/featurebyte/query_graph/sql/partition_filter_helper.py +550 -0
- featurebyte-3.3.0/featurebyte/query_graph/sql/specifications/base_aggregate_asat.py +101 -0
- featurebyte-3.3.0/featurebyte/query_graph/sql/specifications/base_lookup.py +98 -0
- featurebyte-3.3.0/featurebyte/query_graph/sql/specifications/lookup.py +61 -0
- featurebyte-3.3.0/featurebyte/query_graph/sql/specifications/lookup_target.py +64 -0
- featurebyte-3.3.0/featurebyte/query_graph/sql/specifications/time_series_window_aggregate.py +218 -0
- featurebyte-3.3.0/featurebyte/query_graph/sql/specs.py +745 -0
- featurebyte-3.3.0/featurebyte/query_graph/sql/timestamp_helper.py +343 -0
- featurebyte-3.3.0/featurebyte/query_graph/sql/validation_helper.py +48 -0
- featurebyte-3.3.0/featurebyte/query_graph/transform/decompose_point.py +594 -0
- featurebyte-3.3.0/featurebyte/query_graph/transform/null_filling_value.py +173 -0
- featurebyte-3.3.0/featurebyte/query_graph/transform/offline_store_ingest.py +383 -0
- featurebyte-3.3.0/featurebyte/routes/batch_feature_table/controller.py +248 -0
- featurebyte-3.3.0/featurebyte/routes/common/base.py +390 -0
- featurebyte-3.3.0/featurebyte/routes/common/base_table.py +517 -0
- featurebyte-3.3.0/featurebyte/routes/deployment/api.py +314 -0
- featurebyte-3.3.0/featurebyte/routes/deployment/controller.py +563 -0
- featurebyte-3.3.0/featurebyte/routes/development_dataset/controller.py +238 -0
- featurebyte-3.3.0/featurebyte/routes/feature_store/api.py +472 -0
- featurebyte-3.3.0/featurebyte/routes/feature_store/controller.py +636 -0
- featurebyte-3.3.0/featurebyte/routes/registry.py +599 -0
- featurebyte-3.3.0/featurebyte/routes/snapshots_table/api.py +252 -0
- featurebyte-3.3.0/featurebyte/routes/snapshots_table/controller.py +103 -0
- featurebyte-3.3.0/featurebyte/routes/system_metrics/api.py +124 -0
- featurebyte-3.3.0/featurebyte/routes/system_metrics/controller.py +59 -0
- featurebyte-3.3.0/featurebyte/routes/target_namespace/api.py +198 -0
- featurebyte-3.3.0/featurebyte/routes/target_namespace/controller.py +335 -0
- featurebyte-3.3.0/featurebyte/schema/batch_feature_table.py +104 -0
- featurebyte-3.3.0/featurebyte/schema/deployment.py +120 -0
- featurebyte-3.3.0/featurebyte/schema/development_dataset.py +130 -0
- featurebyte-3.3.0/featurebyte/schema/feature_namespace.py +74 -0
- featurebyte-3.3.0/featurebyte/schema/feature_store.py +215 -0
- featurebyte-3.3.0/featurebyte/schema/feature_store_cache.py +23 -0
- featurebyte-3.3.0/featurebyte/schema/info.py +594 -0
- featurebyte-3.3.0/featurebyte/schema/observation_table.py +96 -0
- featurebyte-3.3.0/featurebyte/schema/snapshots_table.py +68 -0
- featurebyte-3.3.0/featurebyte/schema/table.py +175 -0
- featurebyte-3.3.0/featurebyte/schema/target_namespace.py +99 -0
- featurebyte-3.3.0/featurebyte/schema/worker/task/feature_store_table_cleanup.py +24 -0
- featurebyte-3.3.0/featurebyte/schema/worker/task/observation_table.py +34 -0
- featurebyte-3.3.0/featurebyte/schema/worker/task/observation_table_upload.py +33 -0
- featurebyte-3.3.0/featurebyte/schema/worker/task/online_store_cleanup.py +25 -0
- featurebyte-3.3.0/featurebyte/schema/worker/task/query_cache_cleanup.py +24 -0
- featurebyte-3.3.0/featurebyte/schema/worker/task/table_validation.py +29 -0
- featurebyte-3.3.0/featurebyte/schema/worker/task/target_namespace_classification_metadata_update.py +19 -0
- featurebyte-3.3.0/featurebyte/service/base_document.py +1489 -0
- featurebyte-3.3.0/featurebyte/service/base_table_document.py +193 -0
- featurebyte-3.3.0/featurebyte/service/batch_external_feature_table.py +590 -0
- featurebyte-3.3.0/featurebyte/service/deploy.py +1084 -0
- featurebyte-3.3.0/featurebyte/service/deployment.py +162 -0
- featurebyte-3.3.0/featurebyte/service/development_dataset.py +408 -0
- featurebyte-3.3.0/featurebyte/service/entity_serving_names.py +182 -0
- featurebyte-3.3.0/featurebyte/service/entity_validation.py +427 -0
- featurebyte-3.3.0/featurebyte/service/feature_materialize.py +1562 -0
- featurebyte-3.3.0/featurebyte/service/feature_preview.py +576 -0
- featurebyte-3.3.0/featurebyte/service/feature_readiness.py +362 -0
- featurebyte-3.3.0/featurebyte/service/feature_store_cache.py +22 -0
- featurebyte-3.3.0/featurebyte/service/feature_store_table_cleanup.py +293 -0
- featurebyte-3.3.0/featurebyte/service/feature_store_table_cleanup_scheduler.py +112 -0
- featurebyte-3.3.0/featurebyte/service/feature_store_warehouse.py +656 -0
- featurebyte-3.3.0/featurebyte/service/feature_table_cache.py +1067 -0
- featurebyte-3.3.0/featurebyte/service/historical_features_and_target.py +649 -0
- featurebyte-3.3.0/featurebyte/service/materialized_table.py +229 -0
- featurebyte-3.3.0/featurebyte/service/observation_table.py +990 -0
- featurebyte-3.3.0/featurebyte/service/offline_store_feature_table.py +417 -0
- featurebyte-3.3.0/featurebyte/service/offline_store_feature_table_construction.py +317 -0
- featurebyte-3.3.0/featurebyte/service/offline_store_feature_table_manager.py +763 -0
- featurebyte-3.3.0/featurebyte/service/online_serving.py +502 -0
- featurebyte-3.3.0/featurebyte/service/parent_serving.py +169 -0
- featurebyte-3.3.0/featurebyte/service/preview.py +1066 -0
- featurebyte-3.3.0/featurebyte/service/scd_table_validation.py +235 -0
- featurebyte-3.3.0/featurebyte/service/session_manager.py +457 -0
- featurebyte-3.3.0/featurebyte/service/snapshots_table.py +96 -0
- featurebyte-3.3.0/featurebyte/service/snapshots_table_validation.py +80 -0
- featurebyte-3.3.0/featurebyte/service/table_columns_info.py +651 -0
- featurebyte-3.3.0/featurebyte/service/table_facade.py +309 -0
- featurebyte-3.3.0/featurebyte/service/table_info.py +94 -0
- featurebyte-3.3.0/featurebyte/service/target_helper/base_feature_or_target_computer.py +221 -0
- featurebyte-3.3.0/featurebyte/service/target_helper/compute_target.py +162 -0
- featurebyte-3.3.0/featurebyte/service/target_namespace.py +132 -0
- featurebyte-3.3.0/featurebyte/service/tile_cache.py +214 -0
- featurebyte-3.3.0/featurebyte/service/tile_cache_query_base.py +208 -0
- featurebyte-3.3.0/featurebyte/service/tile_manager.py +523 -0
- featurebyte-3.3.0/featurebyte/service/version.py +396 -0
- featurebyte-3.3.0/featurebyte/service/warehouse_table_service.py +157 -0
- featurebyte-3.3.0/featurebyte/session/base.py +1611 -0
- featurebyte-3.3.0/featurebyte/session/base_spark.py +621 -0
- featurebyte-3.3.0/featurebyte/session/bigquery.py +832 -0
- featurebyte-3.3.0/featurebyte/session/databricks.py +380 -0
- featurebyte-3.3.0/featurebyte/session/databricks_unity.py +119 -0
- featurebyte-3.3.0/featurebyte/session/session_helper.py +453 -0
- featurebyte-3.3.0/featurebyte/sql/tile_generate.py +326 -0
- featurebyte-3.3.0/featurebyte/typing.py +151 -0
- featurebyte-3.3.0/featurebyte/worker/registry.py +85 -0
- featurebyte-3.3.0/featurebyte/worker/task/batch_feature_table.py +202 -0
- featurebyte-3.3.0/featurebyte/worker/task/batch_request_table.py +108 -0
- featurebyte-3.3.0/featurebyte/worker/task/deployment_create_update.py +95 -0
- featurebyte-3.3.0/featurebyte/worker/task/feature_store_table_cleanup.py +41 -0
- featurebyte-3.3.0/featurebyte/worker/task/historical_feature_table.py +162 -0
- featurebyte-3.3.0/featurebyte/worker/task/observation_table.py +446 -0
- featurebyte-3.3.0/featurebyte/worker/task/observation_table_upload.py +141 -0
- featurebyte-3.3.0/featurebyte/worker/task/target_namespace_classification_metadata_update.py +70 -0
- featurebyte-3.3.0/featurebyte/worker/task/target_table.py +286 -0
- featurebyte-3.3.0/featurebyte/worker/util/__init__.py +0 -0
- featurebyte-3.3.0/featurebyte/worker/util/task_progress_updater.py +149 -0
- featurebyte-3.3.0/pyproject.toml +256 -0
- featurebyte-3.1.2/PKG-INFO +0 -462
- featurebyte-3.1.2/README.md +0 -386
- featurebyte-3.1.2/featurebyte/__init__.py +0 -635
- featurebyte-3.1.2/featurebyte/api/aggregator/asat_aggregator.py +0 -128
- featurebyte-3.1.2/featurebyte/api/aggregator/base_asat_aggregator.py +0 -61
- featurebyte-3.1.2/featurebyte/api/aggregator/window_aggregator.py +0 -387
- featurebyte-3.1.2/featurebyte/api/base_table.py +0 -1132
- featurebyte-3.1.2/featurebyte/api/catalog.py +0 -1538
- featurebyte-3.1.2/featurebyte/api/deployment.py +0 -642
- featurebyte-3.1.2/featurebyte/api/event_table.py +0 -576
- featurebyte-3.1.2/featurebyte/api/event_view.py +0 -466
- featurebyte-3.1.2/featurebyte/api/feature_list.py +0 -1527
- featurebyte-3.1.2/featurebyte/api/feature_or_target_mixin.py +0 -163
- featurebyte-3.1.2/featurebyte/api/groupby.py +0 -671
- featurebyte-3.1.2/featurebyte/api/item_table.py +0 -410
- featurebyte-3.1.2/featurebyte/api/item_view.py +0 -345
- featurebyte-3.1.2/featurebyte/api/observation_table.py +0 -495
- featurebyte-3.1.2/featurebyte/api/scd_view.py +0 -201
- featurebyte-3.1.2/featurebyte/api/source_table.py +0 -1548
- featurebyte-3.1.2/featurebyte/api/table.py +0 -146
- featurebyte-3.1.2/featurebyte/api/time_series_table.py +0 -351
- featurebyte-3.1.2/featurebyte/api/time_series_view.py +0 -169
- featurebyte-3.1.2/featurebyte/api/view.py +0 -2054
- featurebyte-3.1.2/featurebyte/app.py +0 -307
- featurebyte-3.1.2/featurebyte/common/documentation/documentation_layout.py +0 -1267
- featurebyte-3.1.2/featurebyte/common/documentation/resource_extractor.py +0 -498
- featurebyte-3.1.2/featurebyte/common/utils.py +0 -481
- featurebyte-3.1.2/featurebyte/common/validator.py +0 -382
- featurebyte-3.1.2/featurebyte/docker/featurebyte.yml +0 -170
- featurebyte-3.1.2/featurebyte/enum.py +0 -836
- featurebyte-3.1.2/featurebyte/exception.py +0 -607
- featurebyte-3.1.2/featurebyte/feast/utils/materialize_helper.py +0 -134
- featurebyte-3.1.2/featurebyte/feast/utils/on_demand_view.py +0 -135
- featurebyte-3.1.2/featurebyte/list_utility.py +0 -149
- featurebyte-3.1.2/featurebyte/models/deployment.py +0 -143
- featurebyte-3.1.2/featurebyte/models/development_dataset.py +0 -92
- featurebyte-3.1.2/featurebyte/models/entity_universe.py +0 -973
- featurebyte-3.1.2/featurebyte/models/entity_validation.py +0 -144
- featurebyte-3.1.2/featurebyte/models/event_table.py +0 -112
- featurebyte-3.1.2/featurebyte/models/feature_job_setting_analysis.py +0 -177
- featurebyte-3.1.2/featurebyte/models/feature_store.py +0 -320
- featurebyte-3.1.2/featurebyte/models/observation_table.py +0 -238
- featurebyte-3.1.2/featurebyte/models/parent_serving.py +0 -220
- featurebyte-3.1.2/featurebyte/models/proxy_table.py +0 -45
- featurebyte-3.1.2/featurebyte/models/request_input.py +0 -397
- featurebyte-3.1.2/featurebyte/models/target_namespace.py +0 -63
- featurebyte-3.1.2/featurebyte/models/time_series_table.py +0 -110
- featurebyte-3.1.2/featurebyte/models/use_case.py +0 -65
- featurebyte-3.1.2/featurebyte/models/user_defined_function.py +0 -342
- featurebyte-3.1.2/featurebyte/models/warehouse_table.py +0 -49
- featurebyte-3.1.2/featurebyte/persistent/base.py +0 -844
- featurebyte-3.1.2/featurebyte/persistent/mongo.py +0 -449
- featurebyte-3.1.2/featurebyte/query_graph/enum.py +0 -220
- featurebyte-3.1.2/featurebyte/query_graph/model/common_table.py +0 -356
- featurebyte-3.1.2/featurebyte/query_graph/model/dtype.py +0 -105
- featurebyte-3.1.2/featurebyte/query_graph/model/feature_job_setting.py +0 -737
- featurebyte-3.1.2/featurebyte/query_graph/model/graph.py +0 -715
- featurebyte-3.1.2/featurebyte/query_graph/model/node_hash_util.py +0 -175
- featurebyte-3.1.2/featurebyte/query_graph/model/table.py +0 -755
- featurebyte-3.1.2/featurebyte/query_graph/model/window.py +0 -92
- featurebyte-3.1.2/featurebyte/query_graph/node/base.py +0 -1323
- featurebyte-3.1.2/featurebyte/query_graph/node/cleaning_operation.py +0 -743
- featurebyte-3.1.2/featurebyte/query_graph/node/count_dict.py +0 -753
- featurebyte-3.1.2/featurebyte/query_graph/node/generic.py +0 -2528
- featurebyte-3.1.2/featurebyte/query_graph/node/input.py +0 -530
- featurebyte-3.1.2/featurebyte/query_graph/node/metadata/operation.py +0 -708
- featurebyte-3.1.2/featurebyte/query_graph/node/metadata/sdk_code.py +0 -654
- featurebyte-3.1.2/featurebyte/query_graph/node/nested.py +0 -987
- featurebyte-3.1.2/featurebyte/query_graph/node/schema.py +0 -493
- featurebyte-3.1.2/featurebyte/query_graph/sql/aggregator/base.py +0 -700
- featurebyte-3.1.2/featurebyte/query_graph/sql/aggregator/base_asat.py +0 -207
- featurebyte-3.1.2/featurebyte/query_graph/sql/aggregator/base_lookup.py +0 -346
- featurebyte-3.1.2/featurebyte/query_graph/sql/aggregator/lookup_target.py +0 -36
- featurebyte-3.1.2/featurebyte/query_graph/sql/aggregator/time_series_window.py +0 -758
- featurebyte-3.1.2/featurebyte/query_graph/sql/ast/base.py +0 -435
- featurebyte-3.1.2/featurebyte/query_graph/sql/ast/input.py +0 -282
- featurebyte-3.1.2/featurebyte/query_graph/sql/ast/join.py +0 -207
- featurebyte-3.1.2/featurebyte/query_graph/sql/builder.py +0 -224
- featurebyte-3.1.2/featurebyte/query_graph/sql/common.py +0 -361
- featurebyte-3.1.2/featurebyte/query_graph/sql/cron.py +0 -145
- featurebyte-3.1.2/featurebyte/query_graph/sql/entity_filter.py +0 -158
- featurebyte-3.1.2/featurebyte/query_graph/sql/feature_compute.py +0 -1084
- featurebyte-3.1.2/featurebyte/query_graph/sql/feature_historical.py +0 -470
- featurebyte-3.1.2/featurebyte/query_graph/sql/interpreter/preview.py +0 -1238
- featurebyte-3.1.2/featurebyte/query_graph/sql/interpreter/tile.py +0 -476
- featurebyte-3.1.2/featurebyte/query_graph/sql/online_serving.py +0 -682
- featurebyte-3.1.2/featurebyte/query_graph/sql/parent_serving.py +0 -191
- featurebyte-3.1.2/featurebyte/query_graph/sql/partition_filter.py +0 -165
- featurebyte-3.1.2/featurebyte/query_graph/sql/partition_filter_helper.py +0 -214
- featurebyte-3.1.2/featurebyte/query_graph/sql/specifications/base_aggregate_asat.py +0 -95
- featurebyte-3.1.2/featurebyte/query_graph/sql/specifications/base_lookup.py +0 -89
- featurebyte-3.1.2/featurebyte/query_graph/sql/specifications/lookup.py +0 -56
- featurebyte-3.1.2/featurebyte/query_graph/sql/specifications/lookup_target.py +0 -59
- featurebyte-3.1.2/featurebyte/query_graph/sql/specifications/time_series_window_aggregate.py +0 -205
- featurebyte-3.1.2/featurebyte/query_graph/sql/specs.py +0 -736
- featurebyte-3.1.2/featurebyte/query_graph/sql/timestamp_helper.py +0 -175
- featurebyte-3.1.2/featurebyte/query_graph/transform/decompose_point.py +0 -594
- featurebyte-3.1.2/featurebyte/query_graph/transform/null_filling_value.py +0 -164
- featurebyte-3.1.2/featurebyte/query_graph/transform/offline_store_ingest.py +0 -383
- featurebyte-3.1.2/featurebyte/routes/batch_feature_table/controller.py +0 -242
- featurebyte-3.1.2/featurebyte/routes/common/base.py +0 -388
- featurebyte-3.1.2/featurebyte/routes/common/base_table.py +0 -513
- featurebyte-3.1.2/featurebyte/routes/deployment/api.py +0 -287
- featurebyte-3.1.2/featurebyte/routes/deployment/controller.py +0 -523
- featurebyte-3.1.2/featurebyte/routes/development_dataset/controller.py +0 -234
- featurebyte-3.1.2/featurebyte/routes/feature_store/api.py +0 -430
- featurebyte-3.1.2/featurebyte/routes/feature_store/controller.py +0 -550
- featurebyte-3.1.2/featurebyte/routes/registry.py +0 -565
- featurebyte-3.1.2/featurebyte/routes/system_metrics/api.py +0 -87
- featurebyte-3.1.2/featurebyte/routes/system_metrics/controller.py +0 -20
- featurebyte-3.1.2/featurebyte/routes/target_namespace/api.py +0 -181
- featurebyte-3.1.2/featurebyte/routes/target_namespace/controller.py +0 -138
- featurebyte-3.1.2/featurebyte/schema/batch_feature_table.py +0 -99
- featurebyte-3.1.2/featurebyte/schema/deployment.py +0 -119
- featurebyte-3.1.2/featurebyte/schema/development_dataset.py +0 -99
- featurebyte-3.1.2/featurebyte/schema/feature_namespace.py +0 -74
- featurebyte-3.1.2/featurebyte/schema/feature_store.py +0 -204
- featurebyte-3.1.2/featurebyte/schema/info.py +0 -580
- featurebyte-3.1.2/featurebyte/schema/observation_table.py +0 -93
- featurebyte-3.1.2/featurebyte/schema/table.py +0 -199
- featurebyte-3.1.2/featurebyte/schema/target_namespace.py +0 -79
- featurebyte-3.1.2/featurebyte/schema/worker/task/observation_table.py +0 -33
- featurebyte-3.1.2/featurebyte/schema/worker/task/observation_table_upload.py +0 -32
- featurebyte-3.1.2/featurebyte/schema/worker/task/online_store_cleanup.py +0 -25
- featurebyte-3.1.2/featurebyte/schema/worker/task/query_cache_cleanup.py +0 -24
- featurebyte-3.1.2/featurebyte/schema/worker/task/table_validation.py +0 -28
- featurebyte-3.1.2/featurebyte/service/base_document.py +0 -1369
- featurebyte-3.1.2/featurebyte/service/base_table_document.py +0 -192
- featurebyte-3.1.2/featurebyte/service/batch_external_feature_table.py +0 -440
- featurebyte-3.1.2/featurebyte/service/deploy.py +0 -1064
- featurebyte-3.1.2/featurebyte/service/deployment.py +0 -107
- featurebyte-3.1.2/featurebyte/service/development_dataset.py +0 -306
- featurebyte-3.1.2/featurebyte/service/entity_serving_names.py +0 -182
- featurebyte-3.1.2/featurebyte/service/entity_validation.py +0 -395
- featurebyte-3.1.2/featurebyte/service/feature_materialize.py +0 -1556
- featurebyte-3.1.2/featurebyte/service/feature_preview.py +0 -555
- featurebyte-3.1.2/featurebyte/service/feature_readiness.py +0 -362
- featurebyte-3.1.2/featurebyte/service/feature_store_warehouse.py +0 -520
- featurebyte-3.1.2/featurebyte/service/feature_table_cache.py +0 -1018
- featurebyte-3.1.2/featurebyte/service/historical_features_and_target.py +0 -600
- featurebyte-3.1.2/featurebyte/service/materialized_table.py +0 -224
- featurebyte-3.1.2/featurebyte/service/observation_table.py +0 -854
- featurebyte-3.1.2/featurebyte/service/offline_store_feature_table.py +0 -417
- featurebyte-3.1.2/featurebyte/service/offline_store_feature_table_construction.py +0 -315
- featurebyte-3.1.2/featurebyte/service/offline_store_feature_table_manager.py +0 -763
- featurebyte-3.1.2/featurebyte/service/online_serving.py +0 -488
- featurebyte-3.1.2/featurebyte/service/parent_serving.py +0 -178
- featurebyte-3.1.2/featurebyte/service/preview.py +0 -972
- featurebyte-3.1.2/featurebyte/service/scd_table_validation.py +0 -250
- featurebyte-3.1.2/featurebyte/service/session_manager.py +0 -289
- featurebyte-3.1.2/featurebyte/service/table_columns_info.py +0 -649
- featurebyte-3.1.2/featurebyte/service/table_facade.py +0 -301
- featurebyte-3.1.2/featurebyte/service/table_info.py +0 -92
- featurebyte-3.1.2/featurebyte/service/target_helper/base_feature_or_target_computer.py +0 -216
- featurebyte-3.1.2/featurebyte/service/target_helper/compute_target.py +0 -143
- featurebyte-3.1.2/featurebyte/service/target_namespace.py +0 -19
- featurebyte-3.1.2/featurebyte/service/tile_cache.py +0 -210
- featurebyte-3.1.2/featurebyte/service/tile_cache_query_base.py +0 -194
- featurebyte-3.1.2/featurebyte/service/tile_manager.py +0 -523
- featurebyte-3.1.2/featurebyte/service/version.py +0 -396
- featurebyte-3.1.2/featurebyte/service/warehouse_table_service.py +0 -176
- featurebyte-3.1.2/featurebyte/session/base.py +0 -1611
- featurebyte-3.1.2/featurebyte/session/base_spark.py +0 -621
- featurebyte-3.1.2/featurebyte/session/bigquery.py +0 -827
- featurebyte-3.1.2/featurebyte/session/databricks.py +0 -254
- featurebyte-3.1.2/featurebyte/session/databricks_unity.py +0 -156
- featurebyte-3.1.2/featurebyte/session/session_helper.py +0 -450
- featurebyte-3.1.2/featurebyte/sql/spark/featurebyte-hive-udf-1.0.8-SNAPSHOT-all.jar +0 -0
- featurebyte-3.1.2/featurebyte/sql/tile_generate.py +0 -324
- featurebyte-3.1.2/featurebyte/typing.py +0 -150
- featurebyte-3.1.2/featurebyte/worker/registry.py +0 -79
- featurebyte-3.1.2/featurebyte/worker/task/batch_feature_table.py +0 -181
- featurebyte-3.1.2/featurebyte/worker/task/batch_request_table.py +0 -107
- featurebyte-3.1.2/featurebyte/worker/task/deployment_create_update.py +0 -99
- featurebyte-3.1.2/featurebyte/worker/task/historical_feature_table.py +0 -138
- featurebyte-3.1.2/featurebyte/worker/task/observation_table.py +0 -232
- featurebyte-3.1.2/featurebyte/worker/task/observation_table_upload.py +0 -137
- featurebyte-3.1.2/featurebyte/worker/task/target_table.py +0 -266
- featurebyte-3.1.2/featurebyte/worker/util/task_progress_updater.py +0 -102
- featurebyte-3.1.2/pyproject.toml +0 -254
- {featurebyte-3.1.2 → featurebyte-3.3.0}/LICENSE +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/__main__.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/_overrides/__init__.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/_overrides/typechecked_override.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/api/__init__.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/api/accessor/__init__.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/api/accessor/databricks.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/api/aggregator/__init__.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/api/aggregator/base_aggregator.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/api/aggregator/forward_aggregator.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/api/aggregator/forward_asat_aggregator.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/api/aggregator/simple_aggregator.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/api/aggregator/util.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/api/aggregator/vector_validator.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/api/api_handler/base.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/api/api_handler/catalog.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/api/api_handler/feature.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/api/api_handler/feature_job_setting_analysis.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/api/api_handler/feature_list.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/api/api_handler/feature_namespace.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/api/api_handler/target_namespace.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/api/api_handler/user_defined_function.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/api/api_object.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/api/api_object_util.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/api/batch_feature_table.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/api/batch_request_table.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/api/catalog_decorator.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/api/catalog_get_by_id_mixin.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/api/change_view.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/api/context.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/api/credential.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/api/data_source.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/api/dimension_table.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/api/dimension_view.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/api/entity.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/api/feature.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/api/feature_group.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/api/feature_job.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/api/feature_job_setting_analysis.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/api/feature_namespace.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/api/feature_or_target_namespace_mixin.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/api/feature_store.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/api/feature_util.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/api/historical_feature_table.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/api/lag.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/api/materialized_table.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/api/mixin.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/api/obs_table/__init__.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/api/obs_table/utils.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/api/online_store.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/api/periodic_task.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/api/primary_entity_mixin.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/api/relationship.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/api/request_column.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/api/savable_api_object.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/api/scd_table.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/api/static_source_table.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/api/target.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/api/target_namespace.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/api/templates/__init__.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/api/templates/doc_util.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/api/templates/entity_doc.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/api/templates/feature_or_target_doc.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/api/templates/series_doc.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/api/use_case.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/api/use_case_or_context_mixin.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/api/user_defined_function.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/api/user_defined_function_injector.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/api/utils.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/api/window_validator.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/common/__init__.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/common/date_util.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/common/descriptor.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/common/dict_util.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/common/doc_util.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/common/documentation/allowed_classes.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/common/documentation/autodoc_processor.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/common/documentation/constants.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/common/documentation/custom_nav.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/common/documentation/doc_types.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/common/documentation/extract_csv.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/common/documentation/formatters.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/common/documentation/gen_ref_pages_docs_builder.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/common/documentation/markdown_extension/extension.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/common/documentation/pydantic_field_docs.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/common/documentation/resource_util.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/common/documentation/util.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/common/env_util.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/common/formatting_util.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/common/join_utils.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/common/model_util.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/common/path_util.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/common/progress.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/common/singleton.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/common/string.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/config.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/conftest.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/core/__init__.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/core/accessor/__init__.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/core/accessor/count_dict.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/core/accessor/datetime.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/core/accessor/feature_datetime.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/core/accessor/feature_string.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/core/accessor/string.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/core/accessor/target_datetime.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/core/accessor/target_string.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/core/accessor/vector.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/core/datetime.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/core/distance.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/core/frame.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/core/generic.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/core/mixin.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/core/series.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/core/timedelta.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/core/util.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/datasets/__init__.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/datasets/__main__.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/datasets/app.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/datasets/creditcard.sql +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/datasets/doctest_grocery.sql +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/datasets/grocery.sql +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/datasets/healthcare.sql +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/docker/__init__.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/docker/manager.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/feast/__init__.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/feast/enum.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/feast/infra/__init__.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/feast/infra/offline_stores/__init__.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/feast/infra/offline_stores/bigquery.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/feast/infra/offline_stores/databricks.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/feast/infra/offline_stores/spark_thrift.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/feast/infra/offline_stores/spark_thrift_source.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/feast/model/__init__.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/feast/model/feature_store.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/feast/model/online_store.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/feast/model/registry.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/feast/online_store/mysql.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/feast/patch.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/feast/registry_store.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/feast/schema/__init__.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/feast/schema/registry.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/feast/service/__init__.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/feast/service/feature_store.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/feast/service/registry.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/feast/utils/__init__.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/feast/utils/registry_construction.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/feature_manager/__init__.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/feature_manager/model.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/logging.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/middleware.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/migration/__init__.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/migration/migration_data_service.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/migration/model.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/migration/run.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/migration/service/__init__.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/migration/service/data_warehouse.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/migration/service/deployment.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/migration/service/event_table.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/migration/service/feature.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/migration/service/feature_job_setting_analysis.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/migration/service/feature_list.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/migration/service/feature_namespace.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/migration/service/mixin.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/migration/service/offline_store_feature_table.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/models/__init__.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/models/base.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/models/base_feature_or_target_table.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/models/batch_feature_table.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/models/batch_request_table.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/models/catalog.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/models/column_statistics.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/models/context.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/models/credential.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/models/deployed_tile_table.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/models/dimension_table.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/models/entity.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/models/entity_lookup_feature_table.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/models/feature.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/models/feature_list.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/models/feature_list_namespace.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/models/feature_list_store_info.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/models/feature_materialize_prerequisite.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/models/feature_materialize_run.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/models/feature_namespace.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/models/feature_query_set.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/models/feature_table_cache_metadata.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/models/historical_feature_table.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/models/item_table.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/models/managed_view.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/models/materialized_table.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/models/mixin.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/models/offline_store_feature_table.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/models/offline_store_ingest_query.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/models/online_store.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/models/online_store_compute_query.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/models/online_store_table_version.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/models/periodic_task.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/models/persistent.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/models/precomputed_lookup_feature_table.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/models/query_cache.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/models/relationship.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/models/relationship_analysis.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/models/scd_table.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/models/semantic.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/models/sqlglot_expression.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/models/static_source_table.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/models/system_metrics.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/models/target.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/models/target_table.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/models/task.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/models/tile.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/models/tile_cache.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/models/tile_compute_query.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/models/tile_job_log.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/models/tile_registry.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/models/utils.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/persistent/__init__.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/persistent/audit.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/__init__.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/algorithm.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/graph.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/graph_node/__init__.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/graph_node/base.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/model/__init__.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/model/column_info.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/model/critical_data_info.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/model/entity_lookup_plan.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/model/entity_relationship_info.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/model/time_series_table.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/model/timestamp_schema.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/node/__init__.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/node/agg_func.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/node/binary.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/node/date.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/node/distance.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/node/function.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/node/metadata/__init__.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/node/metadata/column.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/node/metadata/config.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/node/metadata/templates/databricks_feature_spec.tpl +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/node/metadata/templates/on_demand_function.tpl +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/node/metadata/templates/on_demand_function_sql.tpl +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/node/metadata/templates/on_demand_view.tpl +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/node/metadata/templates/sdk_code.tpl +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/node/mixin.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/node/request.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/node/scalar.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/node/string.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/node/unary.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/node/utils.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/node/validator.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/node/vector.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/pruning_util.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/sql/__init__.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/sql/adapter/__init__.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/sql/adapter/base.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/sql/adapter/bigquery.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/sql/adapter/databricks.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/sql/adapter/databricks_unity.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/sql/adapter/snowflake.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/sql/adapter/spark.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/sql/aggregator/__init__.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/sql/aggregator/asat.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/sql/aggregator/forward.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/sql/aggregator/forward_asat.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/sql/aggregator/helper.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/sql/aggregator/item.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/sql/aggregator/latest.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/sql/aggregator/lookup.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/sql/aggregator/non_tile_window.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/sql/aggregator/range_join.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/sql/aggregator/request_table.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/sql/aggregator/window.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/sql/asat_helper.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/sql/ast/__init__.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/sql/ast/aggregate.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/sql/ast/binary.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/sql/ast/count_dict.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/sql/ast/datetime.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/sql/ast/distance.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/sql/ast/function.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/sql/ast/generic.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/sql/ast/groupby.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/sql/ast/is_in.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/sql/ast/join_feature.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/sql/ast/literal.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/sql/ast/request.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/sql/ast/string.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/sql/ast/tile.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/sql/ast/track_changes.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/sql/ast/unary.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/sql/ast/util.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/sql/ast/vector.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/sql/ast/zip_timestamp.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/sql/batch_helper.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/sql/dataframe.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/sql/deduplication.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/sql/dialects.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/sql/entity.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/sql/expression.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/sql/feature_job.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/sql/feature_preview.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/sql/groupby_helper.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/sql/interpreter/__init__.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/sql/interpreter/base.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/sql/materialisation.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/sql/offset.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/sql/online_serving_util.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/sql/online_store_compute_query.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/sql/query_graph_util.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/sql/scd_helper.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/sql/source_info.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/sql/specifications/__init__.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/sql/specifications/aggregate_asat.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/sql/specifications/forward_aggregate_asat.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/sql/specifications/non_tile_window_aggregate.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/sql/template.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/sql/tile_compute.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/sql/tile_compute_combine.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/sql/tile_compute_spec.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/sql/tile_util.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/sql/tiling.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/sql/vector_helper.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/transform/__init__.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/transform/base.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/transform/definition.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/transform/flattening.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/transform/on_demand_function.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/transform/on_demand_view.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/transform/operation_structure.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/transform/pruning.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/transform/quick_pruning.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/transform/reconstruction.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/transform/sdk_code.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/ttl_handling_util.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/query_graph/util.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/__init__.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/app_container_config.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/base_materialized_table_router.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/base_router.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/batch_feature_table/__init__.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/batch_feature_table/api.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/batch_request_table/__init__.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/batch_request_table/api.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/batch_request_table/controller.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/block_modification_handler.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/catalog/__init__.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/catalog/api.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/catalog/catalog_name_injector.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/catalog/controller.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/common/__init__.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/common/base_materialized_table.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/common/derive_primary_entity_helper.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/common/feature_metadata_extractor.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/common/feature_or_target_helper.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/common/feature_or_target_table.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/common/primary_entity_validator.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/common/schema.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/context/__init__.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/context/api.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/context/controller.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/credential/__init__.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/credential/api.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/credential/controller.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/deployment/__init__.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/development_dataset/__init__.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/development_dataset/api.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/dimension_table/__init__.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/dimension_table/api.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/dimension_table/controller.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/entity/__init__.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/entity/api.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/entity/controller.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/event_table/__init__.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/event_table/api.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/event_table/controller.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/feature/__init__.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/feature/api.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/feature/controller.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/feature_job_setting_analysis/__init__.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/feature_job_setting_analysis/api.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/feature_job_setting_analysis/controller.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/feature_list/__init__.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/feature_list/api.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/feature_list/controller.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/feature_list_namespace/__init__.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/feature_list_namespace/api.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/feature_list_namespace/controller.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/feature_namespace/__init__.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/feature_namespace/api.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/feature_namespace/controller.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/feature_store/__init__.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/historical_feature_table/__init__.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/historical_feature_table/api.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/historical_feature_table/controller.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/item_table/__init__.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/item_table/api.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/item_table/controller.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/lazy_app_container.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/managed_view/__init__.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/managed_view/api.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/managed_view/controller.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/observation_table/__init__.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/observation_table/api.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/observation_table/controller.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/online_store/__init__.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/online_store/api.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/online_store/controller.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/periodic_tasks/__init__.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/periodic_tasks/api.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/periodic_tasks/controller.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/relationship_info/__init__.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/relationship_info/api.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/relationship_info/controller.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/scd_table/__init__.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/scd_table/api.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/scd_table/controller.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/semantic/__init__.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/semantic/api.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/semantic/controller.py +0 -0
- {featurebyte-3.1.2/featurebyte/routes/static_source_table → featurebyte-3.3.0/featurebyte/routes/snapshots_table}/__init__.py +0 -0
- {featurebyte-3.1.2/featurebyte/routes/system_metrics → featurebyte-3.3.0/featurebyte/routes/static_source_table}/__init__.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/static_source_table/api.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/static_source_table/controller.py +0 -0
- {featurebyte-3.1.2/featurebyte/routes/table → featurebyte-3.3.0/featurebyte/routes/system_metrics}/__init__.py +0 -0
- {featurebyte-3.1.2/featurebyte/routes/target → featurebyte-3.3.0/featurebyte/routes/table}/__init__.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/table/api.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/table/controller.py +0 -0
- {featurebyte-3.1.2/featurebyte/routes/target_namespace → featurebyte-3.3.0/featurebyte/routes/target}/__init__.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/target/api.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/target/controller.py +0 -0
- {featurebyte-3.1.2/featurebyte/routes/target_table → featurebyte-3.3.0/featurebyte/routes/target_namespace}/__init__.py +0 -0
- {featurebyte-3.1.2/featurebyte/routes/task → featurebyte-3.3.0/featurebyte/routes/target_table}/__init__.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/target_table/api.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/target_table/controller.py +0 -0
- {featurebyte-3.1.2/featurebyte/routes/temp_data → featurebyte-3.3.0/featurebyte/routes/task}/__init__.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/task/api.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/task/controller.py +0 -0
- {featurebyte-3.1.2/featurebyte/routes/time_series_table → featurebyte-3.3.0/featurebyte/routes/temp_data}/__init__.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/temp_data/api.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/temp_data/controller.py +0 -0
- {featurebyte-3.1.2/featurebyte/routes/use_case → featurebyte-3.3.0/featurebyte/routes/time_series_table}/__init__.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/time_series_table/api.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/time_series_table/controller.py +0 -0
- {featurebyte-3.1.2/featurebyte/routes/user_defined_function → featurebyte-3.3.0/featurebyte/routes/use_case}/__init__.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/use_case/api.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/use_case/controller.py +0 -0
- {featurebyte-3.1.2/featurebyte/schema/common → featurebyte-3.3.0/featurebyte/routes/user_defined_function}/__init__.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/user_defined_function/api.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/routes/user_defined_function/controller.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/schema/__init__.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/schema/batch_request_table.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/schema/catalog.py +0 -0
- {featurebyte-3.1.2/featurebyte/schema/worker → featurebyte-3.3.0/featurebyte/schema/common}/__init__.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/schema/common/base.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/schema/common/feature_or_target.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/schema/common/operation.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/schema/constant.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/schema/context.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/schema/credential.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/schema/dimension_table.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/schema/entity.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/schema/event_table.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/schema/feature.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/schema/feature_job_setting_analysis.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/schema/feature_list.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/schema/feature_list_namespace.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/schema/feature_table_cache_metadata.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/schema/historical_feature_table.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/schema/item_table.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/schema/managed_view.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/schema/materialized_table.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/schema/online_store.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/schema/periodic_task.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/schema/preview.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/schema/relationship_info.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/schema/request_table.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/schema/scd_table.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/schema/semantic.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/schema/static_source_table.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/schema/system_metrics.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/schema/target.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/schema/target_table.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/schema/task.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/schema/time_series_table.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/schema/use_case.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/schema/user_defined_function.py +0 -0
- {featurebyte-3.1.2/featurebyte/schema/worker/task → featurebyte-3.3.0/featurebyte/schema/worker}/__init__.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/schema/worker/progress.py +0 -0
- {featurebyte-3.1.2/featurebyte/service → featurebyte-3.3.0/featurebyte/schema/worker/task}/__init__.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/schema/worker/task/base.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/schema/worker/task/batch_feature_create.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/schema/worker/task/batch_feature_table.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/schema/worker/task/batch_request_table.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/schema/worker/task/catalog_cleanup.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/schema/worker/task/data_description.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/schema/worker/task/deployment_create_update.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/schema/worker/task/development_dataset.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/schema/worker/task/feature_job_setting_analysis.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/schema/worker/task/feature_list_batch_feature_create.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/schema/worker/task/feature_list_create.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/schema/worker/task/feature_list_make_production_ready.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/schema/worker/task/feature_materialize_sync.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/schema/worker/task/historical_feature_table.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/schema/worker/task/materialized_table_delete.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/schema/worker/task/online_store_initialize.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/schema/worker/task/scheduled_feature_materialize.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/schema/worker/task/static_source_table.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/schema/worker/task/target_table.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/schema/worker/task/test.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/schema/worker/task/tile.py +0 -0
- {featurebyte-3.1.2/featurebyte/service/templates → featurebyte-3.3.0/featurebyte/service}/__init__.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/service/base_feature_service.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/service/base_table_validation.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/service/batch_feature_table.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/service/batch_request_table.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/service/catalog.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/service/column_statistics.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/service/context.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/service/credential.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/service/cron_helper.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/service/deployed_tile_table.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/service/deployed_tile_table_manager.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/service/dimension_table.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/service/dimension_table_validation.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/service/entity.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/service/entity_lookup_feature_table.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/service/entity_relationship_extractor.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/service/event_table.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/service/event_table_validation.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/service/exception.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/service/feature.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/service/feature_facade.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/service/feature_job_history_service.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/service/feature_job_setting_analysis.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/service/feature_list.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/service/feature_list_facade.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/service/feature_list_namespace.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/service/feature_list_status.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/service/feature_manager.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/service/feature_materialize_prerequisite.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/service/feature_materialize_run.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/service/feature_materialize_scheduler.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/service/feature_materialize_sync.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/service/feature_namespace.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/service/feature_offline_store_info.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/service/feature_store.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/service/feature_table_cache_metadata.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/service/feature_type.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/service/historical_feature_table.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/service/historical_features.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/service/item_table.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/service/item_table_validation.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/service/managed_view.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/service/mixin.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/service/namespace_handler.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/service/offline_store_feature_table_comment.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/service/online_enable.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/service/online_store.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/service/online_store_cleanup.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/service/online_store_cleanup_scheduler.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/service/online_store_compute_query_service.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/service/online_store_table_version.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/service/periodic_task.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/service/query_cache.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/service/query_cache_cleanup.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/service/query_cache_cleanup_scheduler.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/service/query_cache_manager.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/service/relationship.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/service/relationship_info.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/service/sanitizer.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/service/scd_table.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/service/semantic.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/service/session_helper.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/service/specialized_dtype.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/service/static_source_table.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/service/system_metrics.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/service/table.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/service/table_status.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/service/target.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/service/target_table.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/service/task_manager.py +0 -0
- {featurebyte-3.1.2/featurebyte/service/templates/online_serving → featurebyte-3.3.0/featurebyte/service/templates}/__init__.py +0 -0
- {featurebyte-3.1.2/featurebyte/service/tile → featurebyte-3.3.0/featurebyte/service/templates/online_serving}/__init__.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/service/templates/online_serving/python.tpl +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/service/templates/online_serving/sh.tpl +0 -0
- {featurebyte-3.1.2/featurebyte/service/validator → featurebyte-3.3.0/featurebyte/service/tile}/__init__.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/service/tile/tile_task_executor.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/service/tile_cache_query_by_observation_table.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/service/tile_job_log.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/service/tile_registry_service.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/service/tile_scheduler.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/service/time_series_table.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/service/time_series_table_validation.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/service/use_case.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/service/user_defined_function.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/service/user_service.py +0 -0
- {featurebyte-3.1.2/featurebyte/session → featurebyte-3.3.0/featurebyte/service/validator}/__init__.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/service/validator/entity_relationship_validator.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/service/validator/materialized_table_delete.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/service/validator/production_ready_validator.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/service/view_construction.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/service/working_schema.py +0 -0
- {featurebyte-3.1.2/featurebyte/sql → featurebyte-3.3.0/featurebyte/session}/__init__.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/session/enum.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/session/hive.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/session/simple_storage.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/session/snowflake.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/session/spark.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/session/sqlite.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/session/time_formatter.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/session/webhdfs.py +0 -0
- {featurebyte-3.1.2/featurebyte/sql/spark → featurebyte-3.3.0/featurebyte/sql}/__init__.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/sql/base.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/sql/bigquery/F_COUNT_DICT_COSINE_SIMILARITY.sql +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/sql/bigquery/F_COUNT_DICT_ENTROPY.sql +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/sql/bigquery/F_COUNT_DICT_LEAST_FREQUENT.sql +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/sql/bigquery/F_COUNT_DICT_MOST_FREQUENT.sql +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/sql/bigquery/F_COUNT_DICT_MOST_FREQUENT_KEY_VALUE.sql +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/sql/bigquery/F_COUNT_DICT_MOST_FREQUENT_VALUE.sql +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/sql/bigquery/F_COUNT_DICT_NUM_UNIQUE.sql +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/sql/bigquery/F_GET_RANK.sql +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/sql/bigquery/F_GET_RELATIVE_FREQUENCY.sql +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/sql/bigquery/F_GET_VALUE.sql +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/sql/bigquery/F_INDEX_TO_TIMESTAMP.sql +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/sql/bigquery/F_OBJECT_DELETE.sql +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/sql/bigquery/F_TIMESTAMP_TO_INDEX.sql +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/sql/bigquery/F_TIMEZONE_OFFSET_TO_SECOND.sql +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/sql/bigquery/F_VECTOR_AGGREGATE_MAX.sql +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/sql/bigquery/F_VECTOR_AGGREGATE_SIMPLE_AVERAGE.sql +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/sql/bigquery/F_VECTOR_AGGREGATE_SIMPLE_AVG.sql +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/sql/bigquery/F_VECTOR_AGGREGATE_SUM.sql +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/sql/bigquery/F_VECTOR_COSINE_SIMILARITY.sql +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/sql/common.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/sql/databricks/.gitignore +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/sql/databricks_unity/F_COUNT_DICT_COSINE_SIMILARITY.sql +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/sql/databricks_unity/F_COUNT_DICT_ENTROPY.sql +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/sql/databricks_unity/F_COUNT_DICT_LEAST_FREQUENT.sql +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/sql/databricks_unity/F_COUNT_DICT_MOST_FREQUENT.sql +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/sql/databricks_unity/F_COUNT_DICT_MOST_FREQUENT_KEY_VALUE.sql +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/sql/databricks_unity/F_COUNT_DICT_MOST_FREQUENT_VALUE.sql +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/sql/databricks_unity/F_COUNT_DICT_NUM_UNIQUE.sql +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/sql/databricks_unity/F_GET_RANK.sql +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/sql/databricks_unity/F_GET_RELATIVE_FREQUENCY.sql +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/sql/databricks_unity/F_INDEX_TO_TIMESTAMP.sql +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/sql/databricks_unity/F_OBJECT_DELETE.sql +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/sql/databricks_unity/F_TIMESTAMP_TO_INDEX.sql +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/sql/databricks_unity/F_TIMEZONE_OFFSET_TO_SECOND.sql +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/sql/databricks_unity/F_VECTOR_COSINE_SIMILARITY.sql +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/sql/snowflake/F_COUNT_DICT_COSINE_SIMILARITY.sql +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/sql/snowflake/F_COUNT_DICT_ENTROPY.sql +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/sql/snowflake/F_COUNT_DICT_LEAST_FREQUENT.sql +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/sql/snowflake/F_COUNT_DICT_MOST_FREQUENT.sql +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/sql/snowflake/F_COUNT_DICT_MOST_FREQUENT_KEY_VALUE.sql +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/sql/snowflake/F_COUNT_DICT_MOST_FREQUENT_VALUE.sql +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/sql/snowflake/F_COUNT_DICT_NUM_UNIQUE.sql +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/sql/snowflake/F_GET_RANK.sql +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/sql/snowflake/F_GET_RELATIVE_FREQUENCY.sql +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/sql/snowflake/F_INDEX_TO_TIMESTAMP.sql +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/sql/snowflake/F_TIMESTAMP_TO_INDEX.sql +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/sql/snowflake/F_TIMEZONE_OFFSET_TO_SECOND.sql +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/sql/snowflake/F_VECTOR_AGGREGATE_AVG.sql +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/sql/snowflake/F_VECTOR_AGGREGATE_MAX.sql +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/sql/snowflake/F_VECTOR_AGGREGATE_SIMPLE_AVERAGE.sql +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/sql/snowflake/F_VECTOR_AGGREGATE_SUM.sql +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/sql/snowflake/F_VECTOR_COSINE_SIMILARITY.sql +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/sql/spark/.gitignore +0 -0
- {featurebyte-3.1.2/featurebyte/tile → featurebyte-3.3.0/featurebyte/sql/spark}/__init__.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/sql/tile_common.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/sql/tile_registry.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/sql/tile_schedule_online_store.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/storage/__init__.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/storage/azure.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/storage/base.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/storage/local.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/storage/local_temp.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/storage/s3.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/storage/webdav.py +0 -0
- {featurebyte-3.1.2/featurebyte/utils → featurebyte-3.3.0/featurebyte/tile}/__init__.py +0 -0
- {featurebyte-3.1.2/featurebyte/utils/snowflake → featurebyte-3.3.0/featurebyte/utils}/__init__.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/utils/async_helper.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/utils/messaging.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/utils/persistent.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/utils/redis.py +0 -0
- {featurebyte-3.1.2/featurebyte/worker/test_util → featurebyte-3.3.0/featurebyte/utils/snowflake}/__init__.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/utils/snowflake/sql.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/utils/storage.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/warning.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/worker/__init__.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/worker/loader.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/worker/schedulers.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/worker/start.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/worker/task/__init__.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/worker/task/base.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/worker/task/batch_feature_create.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/worker/task/catalog_cleanup.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/worker/task/catalog_online_store_update.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/worker/task/data_description.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/worker/task/development_dataset.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/worker/task/feature_job_setting_analysis.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/worker/task/feature_job_setting_analysis_backtest.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/worker/task/feature_list_batch_feature_create.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/worker/task/feature_list_create.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/worker/task/feature_list_make_production_ready.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/worker/task/feature_materialize_sync.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/worker/task/materialized_table_delete.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/worker/task/mixin.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/worker/task/online_store_cleanup.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/worker/task/query_cache_cleanup.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/worker/task/scheduled_feature_materialize.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/worker/task/static_source_table.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/worker/task/table_validation.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/worker/task/test_task.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/worker/task/tile_task.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/worker/task_executor.py +0 -0
- {featurebyte-3.1.2/featurebyte/worker/util → featurebyte-3.3.0/featurebyte/worker/test_util}/__init__.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/worker/test_util/random_task.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/worker/util/batch_feature_creator.py +0 -0
- {featurebyte-3.1.2 → featurebyte-3.3.0}/featurebyte/worker/util/observation_set_helper.py +0 -0
|
@@ -0,0 +1,548 @@
|
|
|
1
|
+
Metadata-Version: 2.3
|
|
2
|
+
Name: featurebyte
|
|
3
|
+
Version: 3.3.0
|
|
4
|
+
Summary: Python Library for FeatureOps
|
|
5
|
+
Author: FeatureByte
|
|
6
|
+
Author-email: FeatureByte <it-admin@featurebyte.com>
|
|
7
|
+
License: Elastic License 2.0
|
|
8
|
+
|
|
9
|
+
URL: https://www.elastic.co/licensing/elastic-license
|
|
10
|
+
|
|
11
|
+
## Acceptance
|
|
12
|
+
|
|
13
|
+
By using the software, you agree to all of the terms and conditions below.
|
|
14
|
+
|
|
15
|
+
## Copyright License
|
|
16
|
+
|
|
17
|
+
The licensor grants you a non-exclusive, royalty-free, worldwide,
|
|
18
|
+
non-sublicensable, non-transferable license to use, copy, distribute, make
|
|
19
|
+
available, and prepare derivative works of the software, in each case subject to
|
|
20
|
+
the limitations and conditions below.
|
|
21
|
+
|
|
22
|
+
## Limitations
|
|
23
|
+
|
|
24
|
+
You may not provide the software to third parties as a hosted or managed
|
|
25
|
+
service, where the service provides users with access to any substantial set of
|
|
26
|
+
the features or functionality of the software.
|
|
27
|
+
|
|
28
|
+
You may not move, change, disable, or circumvent the license key functionality
|
|
29
|
+
in the software, and you may not remove or obscure any functionality in the
|
|
30
|
+
software that is protected by the license key.
|
|
31
|
+
|
|
32
|
+
You may not alter, remove, or obscure any licensing, copyright, or other notices
|
|
33
|
+
of the licensor in the software. Any use of the licensor’s trademarks is subject
|
|
34
|
+
to applicable law.
|
|
35
|
+
|
|
36
|
+
## Patents
|
|
37
|
+
|
|
38
|
+
The licensor grants you a license, under any patent claims the licensor can
|
|
39
|
+
license, or becomes able to license, to make, have made, use, sell, offer for
|
|
40
|
+
sale, import and have imported the software, in each case subject to the
|
|
41
|
+
limitations and conditions in this license. This license does not cover any
|
|
42
|
+
patent claims that you cause to be infringed by modifications or additions to
|
|
43
|
+
the software. If you or your company make any written claim that the software
|
|
44
|
+
infringes or contributes to infringement of any patent, your patent license for
|
|
45
|
+
the software granted under these terms ends immediately. If your company makes
|
|
46
|
+
such a claim, your patent license ends immediately for work on behalf of your
|
|
47
|
+
company.
|
|
48
|
+
|
|
49
|
+
## Notices
|
|
50
|
+
|
|
51
|
+
You must ensure that anyone who gets a copy of any part of the software from you
|
|
52
|
+
also gets a copy of these terms.
|
|
53
|
+
|
|
54
|
+
If you modify the software, you must include in any modified copies of the
|
|
55
|
+
software prominent notices stating that you have modified the software.
|
|
56
|
+
|
|
57
|
+
## No Other Rights
|
|
58
|
+
|
|
59
|
+
These terms do not imply any licenses other than those expressly granted in
|
|
60
|
+
these terms.
|
|
61
|
+
|
|
62
|
+
## Termination
|
|
63
|
+
|
|
64
|
+
If you use the software in violation of these terms, such use is not licensed,
|
|
65
|
+
and your licenses will automatically terminate. If the licensor provides you
|
|
66
|
+
with a notice of your violation, and you cease all violation of this license no
|
|
67
|
+
later than 30 days after you receive that notice, your licenses will be
|
|
68
|
+
reinstated retroactively. However, if you violate these terms after such
|
|
69
|
+
reinstatement, any additional violation of these terms will cause your licenses
|
|
70
|
+
to terminate automatically and permanently.
|
|
71
|
+
|
|
72
|
+
## No Liability
|
|
73
|
+
|
|
74
|
+
*As far as the law allows, the software comes as is, without any warranty or
|
|
75
|
+
condition, and the licensor will not be liable to you for any damages arising
|
|
76
|
+
out of these terms or the use or nature of the software, under any kind of
|
|
77
|
+
legal claim.*
|
|
78
|
+
|
|
79
|
+
## Definitions
|
|
80
|
+
|
|
81
|
+
The **licensor** is the entity offering these terms, and the **software** is the
|
|
82
|
+
software the licensor makes available under these terms, including any portion
|
|
83
|
+
of it.
|
|
84
|
+
|
|
85
|
+
**you** refers to the individual or entity agreeing to these terms.
|
|
86
|
+
|
|
87
|
+
**your company** is any legal entity, sole proprietorship, or other kind of
|
|
88
|
+
organization that you work for, plus all organizations that have control over,
|
|
89
|
+
are under the control of, or are under common control with that
|
|
90
|
+
organization. **control** means ownership of substantially all the assets of an
|
|
91
|
+
entity, or the power to direct its management and policies by vote, contract, or
|
|
92
|
+
otherwise. Control can be direct or indirect.
|
|
93
|
+
|
|
94
|
+
**your licenses** are all the licenses granted to you for the software under
|
|
95
|
+
these terms.
|
|
96
|
+
|
|
97
|
+
**use** means anything you do with the software requiring one of your licenses.
|
|
98
|
+
|
|
99
|
+
**trademark** means trademarks, service marks, and similar rights.
|
|
100
|
+
Classifier: Development Status :: 5 - Production/Stable
|
|
101
|
+
Classifier: Intended Audience :: Developers
|
|
102
|
+
Classifier: Operating System :: OS Independent
|
|
103
|
+
Classifier: Topic :: Software Development :: Libraries :: Python Modules
|
|
104
|
+
Classifier: License :: Other/Proprietary License
|
|
105
|
+
Classifier: Programming Language :: Python :: 3
|
|
106
|
+
Classifier: Programming Language :: Python :: 3.10
|
|
107
|
+
Classifier: Programming Language :: Python :: 3.11
|
|
108
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
109
|
+
Requires-Dist: aiofiles>=24
|
|
110
|
+
Requires-Dist: alive-progress>=3
|
|
111
|
+
Requires-Dist: black>=24
|
|
112
|
+
Requires-Dist: cachetools>=5
|
|
113
|
+
Requires-Dist: croniter>=5
|
|
114
|
+
Requires-Dist: cryptography>=45
|
|
115
|
+
Requires-Dist: grapheme>=0.6
|
|
116
|
+
Requires-Dist: humanize>=4
|
|
117
|
+
Requires-Dist: importlib-metadata>=8
|
|
118
|
+
Requires-Dist: jinja2>=3
|
|
119
|
+
Requires-Dist: lazy-object-proxy>=1
|
|
120
|
+
Requires-Dist: numpy
|
|
121
|
+
Requires-Dist: orjson>=3
|
|
122
|
+
Requires-Dist: pandas>=2
|
|
123
|
+
Requires-Dist: pillow>=10
|
|
124
|
+
Requires-Dist: pyarrow>=18
|
|
125
|
+
Requires-Dist: pydantic-extra-types>=2
|
|
126
|
+
Requires-Dist: pydantic-settings>=2
|
|
127
|
+
Requires-Dist: pydantic~=2.8
|
|
128
|
+
Requires-Dist: pymongo>=4
|
|
129
|
+
Requires-Dist: pyopenssl>=23
|
|
130
|
+
Requires-Dist: python-multipart
|
|
131
|
+
Requires-Dist: python-on-whales
|
|
132
|
+
Requires-Dist: pyyaml>=5
|
|
133
|
+
Requires-Dist: requests>=2
|
|
134
|
+
Requires-Dist: rich>=13
|
|
135
|
+
Requires-Dist: sqlglot~=25.0
|
|
136
|
+
Requires-Dist: typeguard>=4
|
|
137
|
+
Requires-Dist: typer
|
|
138
|
+
Requires-Dist: websocket-client>=1
|
|
139
|
+
Requires-Dist: aioboto3 ; extra == 'server'
|
|
140
|
+
Requires-Dist: asyncache ; extra == 'server'
|
|
141
|
+
Requires-Dist: celery[redis] ; extra == 'server'
|
|
142
|
+
Requires-Dist: celerybeat-mongo ; extra == 'server'
|
|
143
|
+
Requires-Dist: databricks-sdk ; extra == 'server'
|
|
144
|
+
Requires-Dist: databricks-sql-connector~=4.0.0 ; extra == 'server'
|
|
145
|
+
Requires-Dist: fastapi ; extra == 'server'
|
|
146
|
+
Requires-Dist: feast[snowflake,redis,mysql,gcp]==0.40.1 ; extra == 'server'
|
|
147
|
+
Requires-Dist: featurebyte-freeware ; extra == 'server'
|
|
148
|
+
Requires-Dist: gevent ; extra == 'server'
|
|
149
|
+
Requires-Dist: google-cloud-bigquery ; extra == 'server'
|
|
150
|
+
Requires-Dist: google-cloud-bigquery-storage ; extra == 'server'
|
|
151
|
+
Requires-Dist: motor ; extra == 'server'
|
|
152
|
+
Requires-Dist: pdfkit ; extra == 'server'
|
|
153
|
+
Requires-Dist: pyhive[hive-pure-sasl] ; extra == 'server'
|
|
154
|
+
Requires-Dist: redis ; extra == 'server'
|
|
155
|
+
Requires-Dist: requests-kerberos ; extra == 'server'
|
|
156
|
+
Requires-Dist: smart-open[azure,gcs] ; extra == 'server'
|
|
157
|
+
Requires-Dist: snowflake-connector-python ; extra == 'server'
|
|
158
|
+
Requires-Dist: thrift-sasl ; extra == 'server'
|
|
159
|
+
Requires-Dist: uvicorn[standard] ; extra == 'server'
|
|
160
|
+
Requires-Python: >=3.10
|
|
161
|
+
Provides-Extra: server
|
|
162
|
+
Description-Content-Type: text/markdown
|
|
163
|
+
|
|
164
|
+
<h1 align="center"> FeatureByte's Declarative Feature Engineering Framework</h1>
|
|
165
|
+
<div align="center">
|
|
166
|
+
|
|
167
|
+
[](https://github.com/featurebyte/featurebyte/actions?query=workflow%3Abuild)
|
|
168
|
+
[](https://pypi.org/project/featurebyte/)
|
|
169
|
+
[](https://github.com/featurebyte/featurebyte/pulls?utf8=%E2%9C%93&q=is%3Apr%20author%3Aapp%2Fdependabot)
|
|
170
|
+
|
|
171
|
+
[](https://github.com/psf/black)
|
|
172
|
+
[](https://github.com/PyCQA/bandit)
|
|
173
|
+
[](https://github.com/featurebyte/featurebyte/releases)
|
|
174
|
+
[](https://github.com/featurebyte/featurebyte/blob/main/LICENSE)
|
|
175
|
+

|
|
176
|
+
|
|
177
|
+
</div>
|
|
178
|
+
|
|
179
|
+
FeatureByte SDK is the core engine of FeatureByte's [Self-Service Feature Platform](https://featurebyte.com/). It is a **free and source available feature platform** designed to:
|
|
180
|
+
|
|
181
|
+
* **Create state-of-the-art features, not data pipelines:** Create features for Machine Learning with just a few lines of code. Leave the plumbing and pipelining to FeatureByte. We take care of orchestrating the data ops - whether it’s time-window aggs or backfilling, so you can deliver more value from data.
|
|
182
|
+
* **Improve Accuracy through data:** Use the intuitive feature declaration framework to transform creative ideas into training data in minutes. Ditch the limitations of ad-hoc pipelines for features with much more scale, complexity and freshness.
|
|
183
|
+
* **Streamline machine learning data pipelines:** Get more value from AI. Faster. Deploy and serve features in minutes, instead of weeks or months. Declare features in Python and automatically generate optimized data pipelines — all using tools you love like Jupyter Notebooks.
|
|
184
|
+
|
|
185
|
+
|
|
186
|
+
|
|
187
|
+
|
|
188
|
+
## Take charge of the entire ML feature lifecycle
|
|
189
|
+
|
|
190
|
+
Feature Engineering and management doesn’t have to be complicated. Take charge of the entire ML feature lifecycle. With FeatureByte, you can **create, experiment, serve and manage your features in one tool**.
|
|
191
|
+
|
|
192
|
+
### Create
|
|
193
|
+
- Create and share state-of-the-art ML features effortlessly
|
|
194
|
+
- Search and reuse features to create feature lists tailored to your use case
|
|
195
|
+
|
|
196
|
+
``` python
|
|
197
|
+
# Get view from catalog
|
|
198
|
+
invoice_view = catalog.get_view("GROCERYINVOICE")
|
|
199
|
+
# Declare features of total spent by customer in the past 7 and 28 days
|
|
200
|
+
customer_purchases = invoice_view.groupby("GroceryCustomerGuid").aggregate_over(
|
|
201
|
+
"Amount",
|
|
202
|
+
method="sum",
|
|
203
|
+
feature_names=["CustomerTotalSpent_7d", "CustomerTotalSpent_28d"],
|
|
204
|
+
fill_value=0,
|
|
205
|
+
windows=['7d', '28d']
|
|
206
|
+
)
|
|
207
|
+
customer_purchases.save()
|
|
208
|
+
```
|
|
209
|
+
|
|
210
|
+
### Experiment
|
|
211
|
+
- Immediately access historical features through automated backfilling - let FeatureByte handle the complexity of time-aware SQL
|
|
212
|
+
- Experiment on live data at scale, innovating faster
|
|
213
|
+
- Iterate rapidly with different feature lists to create more accurate models
|
|
214
|
+
|
|
215
|
+
``` python
|
|
216
|
+
# Get feature list from the catalog
|
|
217
|
+
feature_list = catalog.get_feature_list(
|
|
218
|
+
"200 Features on Active Customers"
|
|
219
|
+
)
|
|
220
|
+
# Get an observation set from the catalog
|
|
221
|
+
observation_set = catalog.get_observation_table(
|
|
222
|
+
"5M rows of active Customers in 2021-2022"
|
|
223
|
+
)
|
|
224
|
+
# Compute training data and
|
|
225
|
+
# store it in the feature store for reuse and audit
|
|
226
|
+
training = \
|
|
227
|
+
feature_list.compute_historical_feature_table(
|
|
228
|
+
observation_set,
|
|
229
|
+
name="Training set to predict purchases next 2w"
|
|
230
|
+
)
|
|
231
|
+
```
|
|
232
|
+
|
|
233
|
+
### Serve
|
|
234
|
+
- Deploy AI data pipelines and serve features in minutes
|
|
235
|
+
- Access features with low latency
|
|
236
|
+
- Reduce costs and security risk by performing computations in your existing data platform
|
|
237
|
+
- Ensure data consistency between model training and inferencing
|
|
238
|
+
|
|
239
|
+
``` python
|
|
240
|
+
# Get feature list from the catalog
|
|
241
|
+
feature_list = catalog.get_feature_list(
|
|
242
|
+
"200 Features on Active Customers"
|
|
243
|
+
)
|
|
244
|
+
# Create deployment
|
|
245
|
+
deployment = feature_list.deploy(
|
|
246
|
+
name="Features for customer purchases next 2w",
|
|
247
|
+
)
|
|
248
|
+
# Activate deployment
|
|
249
|
+
deployment.enable()
|
|
250
|
+
# Get shell script template for online serving
|
|
251
|
+
deployment.get_online_serving_code(language="sh")
|
|
252
|
+
```
|
|
253
|
+
|
|
254
|
+
### Manage
|
|
255
|
+
- Organize feature engineering assets with domain-specific catalogs
|
|
256
|
+
- Centralize cleaning operations and feature job configurations
|
|
257
|
+
- Differentiate features that are prototype versus production ready
|
|
258
|
+
- Create new versions of your features to handle changes in data
|
|
259
|
+
- Keep full lineage of your training data and features in production
|
|
260
|
+
- Monitor the health of feature pipelines centrally
|
|
261
|
+
|
|
262
|
+
``` python
|
|
263
|
+
# Get table from catalog
|
|
264
|
+
items_table = catalog.get_table("GROCERYITEMS")
|
|
265
|
+
|
|
266
|
+
# Discount must not be negative
|
|
267
|
+
items_table.Discount.update_critical_data_info(
|
|
268
|
+
cleaning_operations=[
|
|
269
|
+
fb.MissingValueImputation(
|
|
270
|
+
imputed_value=0
|
|
271
|
+
),
|
|
272
|
+
fb.ValueBeyondEndpointImputation(
|
|
273
|
+
type="less_than",
|
|
274
|
+
end_point=0,
|
|
275
|
+
imputed_value=0
|
|
276
|
+
),
|
|
277
|
+
]
|
|
278
|
+
)
|
|
279
|
+
```
|
|
280
|
+
|
|
281
|
+
Get an [overview of the typical workflow](https://docs.featurebyte.com/latest/about/workflow/) in FeatureByte.
|
|
282
|
+
|
|
283
|
+
## Get started with Quick-Start and Deep-Dive Tutorials
|
|
284
|
+
Discover FeatureByte via its tutorials. All you need is to install the FeatureByte SDK.
|
|
285
|
+
|
|
286
|
+
Install FeatureByte SDK with pip:
|
|
287
|
+
```shell
|
|
288
|
+
pip install featurebyte
|
|
289
|
+
```
|
|
290
|
+
**Note**: To avoid potential conflicts with other packages we strongly recommend using a [virtual environment](https://docs.python.org/3/tutorial/venv.html) or a [conda environment](https://docs.conda.io/projects/conda/en/latest/user-guide/tasks/manage-environments.html).
|
|
291
|
+
|
|
292
|
+
Sign up for access to the Hosted Tutorial server [here](https://tutorials.featurebyte.com/tutorial/sign-up) and register your credentials with FeatureByte SDK:
|
|
293
|
+
``` python
|
|
294
|
+
import featurebyte as fb
|
|
295
|
+
|
|
296
|
+
# replace <api_token> with your API token you received after registering
|
|
297
|
+
fb.register_tutorial_api_token("<api_token>")
|
|
298
|
+
```
|
|
299
|
+
This will create a "tutorial" profile that uses the hosted tutorial server.
|
|
300
|
+
You can now [download](https://docs.featurebyte.com/latest/get_started/tutorials/overview/#download-tutorials) and run notebooks from the [tutorials](https://docs.featurebyte.com/latest/get_started/tutorials/overview/) section.
|
|
301
|
+
|
|
302
|
+
## Leverage your data warehouse
|
|
303
|
+
|
|
304
|
+
FeatureByte integrates seamlessly with your **Snowflake, Databricks, or Spark** data warehouses, enhancing security and efficiency by bypassing large-scale outbound data transfers. This integration allows feature calculations to be performed within the data warehouse, leveraging scalability, stability, and efficiency.
|
|
305
|
+
|
|
306
|
+
<div align="center">
|
|
307
|
+
<img src="https://github.com/featurebyte/featurebyte/blob/main/assets/images/Data%20Warehouse.png" width="600" alt="Warehouse Diagram">
|
|
308
|
+
</div>
|
|
309
|
+
|
|
310
|
+
FeatureByte utilizes your data warehouse as a:
|
|
311
|
+
|
|
312
|
+
* data source.
|
|
313
|
+
* compute engine to leverage its scalability, stability, and efficiency.
|
|
314
|
+
* storage of partial aggregates (tiles) and precomputed feature values to support feature serving.
|
|
315
|
+
|
|
316
|
+
## Architecture
|
|
317
|
+
|
|
318
|
+

|
|
319
|
+
The FeatureByte platform comprises the following components:
|
|
320
|
+
- **FeatureByte SDK** (Python Package): Connects to the API service to provide feature authoring and management functionality through python classes and functions.
|
|
321
|
+
- **FeatureByte Service** (Docker Containers):
|
|
322
|
+
- **API Service**: REST-API service that validates and executes requests, queries data warehouses, and stores data.
|
|
323
|
+
- **Worker**: Executes asynchronous or scheduled tasks.
|
|
324
|
+
- **MongoDB**: Store metadata for created assets.
|
|
325
|
+
- **Redis**: Broker and queue for workers, messenger service for publishing progress updates.
|
|
326
|
+
- **Query Graph Transpiler** (Python Package): Construct data transformation steps as a query graph, which can be transpiled to platform-specific SQL.
|
|
327
|
+
- **Source Tables** (Data Warehouse): Tables used as data sources for feature engineering.
|
|
328
|
+
- **Feature Store** (Data Warehouse): Database that store data used to support feature serving.
|
|
329
|
+
|
|
330
|
+
## FeatureByte Service Deployment Options
|
|
331
|
+
The **FeatureByte Service** can be installed in three different modes:
|
|
332
|
+
|
|
333
|
+
* **Local installation:** The easiest way to get started with the FeatureByte SDK. It is a single-user installation that can be used to prototype features locally with your data warehouse.
|
|
334
|
+
|
|
335
|
+
|
|
336
|
+
* **Hosted on a single server:** A light-weight option to support collaboration and job scheduling with limited scalability and availability. Multiple users can connect to the service using the FeatureByte SDK, and deploy features for production.
|
|
337
|
+
|
|
338
|
+
|
|
339
|
+
* **High availability installation (coming soon):** The recommended way to run the service in production. Scale to a large number of users and deployed features, and provide highly available services.
|
|
340
|
+
|
|
341
|
+
The FeatureByte Service runs on **Docker** for the first two installation modes, and is deployed on a **Kubernetes Cluster** for the high availability installation mode.
|
|
342
|
+
|
|
343
|
+
Refer to the [installation](https://docs.featurebyte.com/latest/get_started/installation/) section of the documentation for more details.
|
|
344
|
+
|
|
345
|
+
## FeatureByte SDK
|
|
346
|
+
|
|
347
|
+
The FeatureByte Python SDK offers a comprehensive set of objects for feature engineering, simplifying the management and manipulation of tables, entities, views, features, feature lists and other necessary objects for feature serving.
|
|
348
|
+
|
|
349
|
+
* [**Catalog**](https://docs.featurebyte.com/latest/reference/core/catalog/) objects help you organize your feature engineering assets per domain and maintain clarity and easy access to these assets.
|
|
350
|
+
* [**Entity**](https://docs.featurebyte.com/latest/reference/core/entity/) objects contain metadata on entity types represented or referenced by tables within your data warehouse.
|
|
351
|
+
* [**Table**](https://docs.featurebyte.com/latest/reference/core/table/) objects centralize key metadata about the table type, important columns, default cleaning operations and default feature job configurations.
|
|
352
|
+
* [**View**](https://docs.featurebyte.com/latest/reference/core/view/) objects work like SQL views and are local virtual tables that can be modified and joined to other views to prepare data before feature definition.
|
|
353
|
+
* [**Feature**](https://docs.featurebyte.com/latest/reference/core/feature/) objects contain the logical plan to compute a feature in the form of a feature definition file.
|
|
354
|
+
* [**FeatureList**](https://docs.featurebyte.com/latest/reference/core/feature_list/) objects are collection of Feature objects tailored to meet the needs of a particular use case.
|
|
355
|
+
|
|
356
|
+
Refer to the [SDK overview](https://docs.featurebyte.com/latest/about/sdk_overview/) for a complete list of the objects supported by the SDK and the SDK reference for more information about each object.
|
|
357
|
+
|
|
358
|
+
## Feature Creation
|
|
359
|
+
|
|
360
|
+
The SDK offers an intuitive declarative framework to create feature objects with different signal types, including timing, regularity, stability, diversity, and similarity in addition to the traditional recency, frequency and monetary types.
|
|
361
|
+
|
|
362
|
+
### Examples
|
|
363
|
+
Features can be as simple as an entity’s attribute:
|
|
364
|
+
|
|
365
|
+
``` python
|
|
366
|
+
customer_view = catalog.get_view("GROCERYCUSTOMER")
|
|
367
|
+
# Extract operating system from BrowserUserAgent column
|
|
368
|
+
customer_view["OperatingSystemIsWindows"] = \
|
|
369
|
+
customer_view.BrowserUserAgent.str.contains("Windows")
|
|
370
|
+
# Create a feature indicating whether the customer is using Windows
|
|
371
|
+
uses_windows = customer_view.OperatingSystemIsWindows.as_feature("UsesWindows")
|
|
372
|
+
```
|
|
373
|
+
|
|
374
|
+
Features can be more complex such as aggregations over a window:
|
|
375
|
+
|
|
376
|
+
``` python
|
|
377
|
+
invoice_view = catalog.get_view("GROCERYINVOICE")
|
|
378
|
+
# Group invoices by the column GroceryCustomerGuid that references the customer entity
|
|
379
|
+
invoices_by_customer = invoice_view.groupby("GroceryCustomerGuid")
|
|
380
|
+
# Declare features of total spent by customer over the past 7 days and 28 days
|
|
381
|
+
customer_purchases = invoices_by_customer.aggregate_over(
|
|
382
|
+
"Amount",
|
|
383
|
+
method=fb.AggFunc.SUM,
|
|
384
|
+
feature_names=["CustomerTotalSpent_7d", "CustomerTotalSpent_28d"],
|
|
385
|
+
fill_value=0,
|
|
386
|
+
windows=['7d', '28d']
|
|
387
|
+
)
|
|
388
|
+
```
|
|
389
|
+
|
|
390
|
+
To capture more complex signals, features can involve a series of joins and aggregates and be derived from multiple features:
|
|
391
|
+
|
|
392
|
+
``` python
|
|
393
|
+
# Get items and product view from the catalog
|
|
394
|
+
items_view = catalog.get_view("INVOICEITEMS")
|
|
395
|
+
product_view = catalog.get_view("GROCERYPRODUCT")
|
|
396
|
+
# Join product view to items view
|
|
397
|
+
items_view = items_view.join(product_view)
|
|
398
|
+
# Get Customer purchases across product group in the past 4 weeks
|
|
399
|
+
customer_basket_28d = items_view.groupby(
|
|
400
|
+
by_keys = "GroceryCustomerGuid", category=”ProductGroup”
|
|
401
|
+
).aggregate_over(
|
|
402
|
+
"TotalCost",
|
|
403
|
+
method=fb.AggFunc.SUM,
|
|
404
|
+
feature_names=["CustomerBasket_28d"],
|
|
405
|
+
windows=['28d']
|
|
406
|
+
)
|
|
407
|
+
# Get customer view and join it to items view
|
|
408
|
+
customer_view = catalog.get_view("GROCERYCUSTOMER")
|
|
409
|
+
items_view = items_view.join(customer_view)
|
|
410
|
+
# Get Purchases of Customers living in the same state
|
|
411
|
+
# across product group in the past 4 weeks
|
|
412
|
+
state_basket_28d = items_view.groupby(
|
|
413
|
+
by_keys="State", category="ProductGroup"
|
|
414
|
+
).aggregate_over(
|
|
415
|
+
"TotalCost",
|
|
416
|
+
method=fb.AggFunc.SUM,
|
|
417
|
+
feature_names=["StateBasket_28d"],
|
|
418
|
+
windows=['28d']
|
|
419
|
+
)
|
|
420
|
+
# Create a feature that measures the similarity of a customer purchases
|
|
421
|
+
# and purchases of customers living in the same state
|
|
422
|
+
customer_state_similarity_28d = \
|
|
423
|
+
customer_basket_28d["CustomerBasket_28d"].cd.cosine_similarity(
|
|
424
|
+
state_basket_28d["StateBasket_28d"]
|
|
425
|
+
)
|
|
426
|
+
# save the new feature
|
|
427
|
+
customer_state_similarity_28d.name = \
|
|
428
|
+
"Customer Similarity with purchases in the same state over 28 days"
|
|
429
|
+
customer_state_similarity_28d.save()
|
|
430
|
+
```
|
|
431
|
+
|
|
432
|
+
### Feature Definition
|
|
433
|
+
Once a feature is defined, you can obtain its feature definition file that is the source of truth and provides an explicit outline of the intended operations of the feature declaration, including those inherited but not explicitly declared by you.
|
|
434
|
+
|
|
435
|
+
``` python
|
|
436
|
+
customer_state_similarity_28d.definition
|
|
437
|
+
```
|
|
438
|
+
|
|
439
|
+
Refer to the SDK reference for the [Feature](https://docs.featurebyte.com/latest/reference/core/feature/) object for more information.
|
|
440
|
+
|
|
441
|
+
## Time Travel
|
|
442
|
+
|
|
443
|
+
Great Machine Learning models require great training data. Great training data require great features (columns) and great observation data points (rows). Great observation data points are historical data points that replicate the production environment. If predictions are expected to be any time, observation points-in-time should also be any time during a period covering at least one seasonal cycle.
|
|
444
|
+
|
|
445
|
+
Observation data points are in FeatureByte in the form of observation sets that combine entity values and any past points-in-time you want to learn from.
|
|
446
|
+
|
|
447
|
+
You can choose to get training data as a Pandas DataFrame or as a Table in the feature store that contains metadata on how the table was created for reuse or audit.
|
|
448
|
+
|
|
449
|
+
``` python
|
|
450
|
+
# Get feature list from the catalog
|
|
451
|
+
feature_list = catalog.get_feature_list(
|
|
452
|
+
"200 Features on Active Customers"
|
|
453
|
+
)
|
|
454
|
+
# Create a new feature list that includes a new feature
|
|
455
|
+
customer_state_similarity_28d = catalog.get_feature(
|
|
456
|
+
"Customer Similarity with purchases in the same state over 28 days"
|
|
457
|
+
)
|
|
458
|
+
new_feature_list = fb.FeatureList(
|
|
459
|
+
[feature_list, customer_state_similarity_28d],
|
|
460
|
+
name="Improved feature list with Customer State similarity"
|
|
461
|
+
)
|
|
462
|
+
# Get an observation set from the catalog
|
|
463
|
+
observation_set = catalog.get_observation_table(
|
|
464
|
+
"5M of active Customers in 2021-2022"
|
|
465
|
+
)
|
|
466
|
+
# Compute training data and store it in the feature store for reuse and audit
|
|
467
|
+
training_table = new_feature_list.compute_historical_feature_table(
|
|
468
|
+
observation_set,
|
|
469
|
+
name="Improved Data to predict purchases next 2w with 2021-2022 history"
|
|
470
|
+
)
|
|
471
|
+
# Download training data as a Pandas DataFrame
|
|
472
|
+
training_df = training_table.to_pandas()
|
|
473
|
+
```
|
|
474
|
+
|
|
475
|
+
Refer to the SDK reference for the [FeatureList](https://docs.featurebyte.com/latest/reference/core/feature_list/), [ObservationTable](https://docs.featurebyte.com/latest/reference/core/observation_table/) and [HistoricalFeatureTable](https://docs.featurebyte.com/latest/reference/core/historical_feature_table/) objects, for more information.
|
|
476
|
+
|
|
477
|
+
## Deploy when needed
|
|
478
|
+
|
|
479
|
+
Once a feature list is deployed, the FeatureByte Service automatically orchestrates the pre-computation of feature values and stores them in an online feature store for online and batch serving.
|
|
480
|
+
|
|
481
|
+
``` python
|
|
482
|
+
# Get feature list from the catalog
|
|
483
|
+
feature_list = catalog.get_feature_list(
|
|
484
|
+
"200 Features on Active Customers"
|
|
485
|
+
)
|
|
486
|
+
# Check Feature objects are PRODUCTION_READY.
|
|
487
|
+
# A readiness metric of 100% should be returned.
|
|
488
|
+
print(feature_list.production_ready_fraction)
|
|
489
|
+
# Create deployment
|
|
490
|
+
my_deployment = feature_list.deploy(
|
|
491
|
+
name="Deployment of 200 Features to predict customers purchases amount next 2 weeks",
|
|
492
|
+
)
|
|
493
|
+
# Activate deployment
|
|
494
|
+
my_deployment.enable()
|
|
495
|
+
```
|
|
496
|
+
|
|
497
|
+
Use the REST API service to retrieve feature values from the online feature store for online serving or use the SDK to retrieve batch of feature values from the online feature store for batch serving.
|
|
498
|
+
|
|
499
|
+
### Online Serving
|
|
500
|
+
For online serving, the Deployment object provides REST API service templates that can be used to serve features. Python or shell script templates for the REST API service are retrieved from the Deployment object.
|
|
501
|
+
|
|
502
|
+
Get online scoring code as a Python script:
|
|
503
|
+
``` python
|
|
504
|
+
deployment = catalog.get_deployment(
|
|
505
|
+
"Deployment of 200 Features to predict customers purchases amount next 2 weeks"
|
|
506
|
+
)
|
|
507
|
+
deployment.get_online_serving_code(language="python")
|
|
508
|
+
```
|
|
509
|
+
|
|
510
|
+
Get online scoring code as a Shell script:
|
|
511
|
+
``` python
|
|
512
|
+
deployment.get_online_serving_code(language="sh")
|
|
513
|
+
```
|
|
514
|
+
|
|
515
|
+
### Batch Serving
|
|
516
|
+
For batch serving, the Deployment object is used to retrieve feature values for a batch request table containing entities values.
|
|
517
|
+
|
|
518
|
+
``` python
|
|
519
|
+
from datetime import datetime
|
|
520
|
+
batch_features = deployment.compute_batch_feature_table(
|
|
521
|
+
batch_request_table=batch_request_table,
|
|
522
|
+
batch_feature_table_name=
|
|
523
|
+
"Data to predict customers purchases next 2 w as of " +
|
|
524
|
+
datetime.utcnow().strftime('%Y-%m-%dT%H:%M:%SZ')
|
|
525
|
+
)
|
|
526
|
+
# Download batch feature values as a Pandas DataFrame
|
|
527
|
+
batch_features_df = batch_features.to_pandas()
|
|
528
|
+
```
|
|
529
|
+
|
|
530
|
+
Refer to the SDK reference for the [Deployment](https://docs.featurebyte.com/latest/reference/core/deployment/), [BatchRequestTable](https://docs.featurebyte.com/latest/reference/core/batch_request_table/) and [BatchFeatureTable](https://docs.featurebyte.com/latest/reference/core/batch_feature_table/) objects, for more information.
|
|
531
|
+
|
|
532
|
+
|
|
533
|
+
## Releases
|
|
534
|
+
|
|
535
|
+
You can see the list of available releases on the [Change Log](https://github.com/featurebyte/featurebyte/blob/main/CHANGELOG.md) page.
|
|
536
|
+
Releases are versioned using the [Semantic Versions](https://semver.org/) specification.
|
|
537
|
+
|
|
538
|
+
## License
|
|
539
|
+
|
|
540
|
+
[](https://github.com/featurebyte/featurebyte/blob/main/LICENSE)
|
|
541
|
+
|
|
542
|
+
This project is licensed under the terms of the `Elastic License 2.0` license. See [LICENSE](https://github.com/featurebyte/featurebyte/blob/main/LICENSE) for more details.
|
|
543
|
+
|
|
544
|
+
## Contributing
|
|
545
|
+
[](code_of_conduct.md)
|
|
546
|
+
|
|
547
|
+
All contributions are welcomed. Please adhere to the [Code of Conduct](https://github.com/featurebyte/featurebyte/blob/main/CODE_OF_CONDUCT.md) and read the
|
|
548
|
+
[Developer's Guide](https://github.com/featurebyte/featurebyte/blob/main/CONTRIBUTING.md) to get started.
|