From cca11e0e63c5b2b304f4aa5b4e9170788ba468e9 Mon Sep 17 00:00:00 2001 From: danielsalvador Date: Tue, 17 Oct 2023 21:55:34 +0300 Subject: [PATCH 1/7] Fix materialization from Postgres + Postgres registry creds --- .../contrib/postgres_offline_store/postgres.py | 2 +- .../registry/contrib/postgres/postgres_registry_store.py | 5 +++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/sdk/python/feast/infra/offline_stores/contrib/postgres_offline_store/postgres.py b/sdk/python/feast/infra/offline_stores/contrib/postgres_offline_store/postgres.py index c2e95a8648..84c799e76a 100644 --- a/sdk/python/feast/infra/offline_stores/contrib/postgres_offline_store/postgres.py +++ b/sdk/python/feast/infra/offline_stores/contrib/postgres_offline_store/postgres.py @@ -94,7 +94,7 @@ def pull_latest_from_table_or_query( FROM ( SELECT {a_field_string}, ROW_NUMBER() OVER({partition_by_join_key_string} ORDER BY {timestamp_desc_string}) AS _feast_row - FROM ({from_expression}) a + FROM {from_expression} a WHERE a."{timestamp_field}" BETWEEN '{start_date}'::timestamptz AND '{end_date}'::timestamptz ) b WHERE _feast_row = 1 diff --git a/sdk/python/feast/infra/registry/contrib/postgres/postgres_registry_store.py b/sdk/python/feast/infra/registry/contrib/postgres/postgres_registry_store.py index 362ec9f485..f990e151d7 100644 --- a/sdk/python/feast/infra/registry/contrib/postgres/postgres_registry_store.py +++ b/sdk/python/feast/infra/registry/contrib/postgres/postgres_registry_store.py @@ -1,3 +1,4 @@ +import os from typing import Optional import psycopg2 @@ -30,8 +31,8 @@ def __init__(self, config: PostgresRegistryConfig, registry_path: str): port=config.port, database=config.database, db_schema=config.db_schema, - user=config.user, - password=config.password, + user=os.environ.get("FEAST_REGISTRY_PSQL_USER", config.user), + password=os.environ.get("FEAST_REGISTRY_PSQL_PASSWORD", config.password), sslmode=getattr(config, "sslmode", None), sslkey_path=getattr(config, "sslkey_path", None), sslcert_path=getattr(config, "sslcert_path", None), From 53411a99c889f80146f59c1bfbc1dd2792c31ec4 Mon Sep 17 00:00:00 2001 From: danielsalvador Date: Tue, 17 Oct 2023 22:19:12 +0300 Subject: [PATCH 2/7] relax dependencies --- setup.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/setup.py b/setup.py index 7cc54992ae..2825911b52 100644 --- a/setup.py +++ b/setup.py @@ -150,13 +150,13 @@ "virtualenv==20.23.0", "cryptography>=35.0,<42", "flake8>=6.0.0,<6.1.0", - "black>=22.6.0,<23", + "black>=22.6.0,<24", "isort>=5,<6", "grpcio-testing>=1.56.2,<2", "minio==7.1.0", "mock==2.0.0", "moto", - "mypy>=0.981,<0.990", + "mypy>=0.981,<2", "avro==1.10.0", "gcsfs>=0.4.0,<=2022.01.0", "urllib3>=1.25.4,<2", From 62b454c7b630b04af7a55d8114521a736444dd95 Mon Sep 17 00:00:00 2001 From: danielsalvador Date: Tue, 17 Oct 2023 22:19:56 +0300 Subject: [PATCH 3/7] relax dependencies --- setup.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/setup.py b/setup.py index 2825911b52..13c3decd53 100644 --- a/setup.py +++ b/setup.py @@ -149,7 +149,7 @@ "build", "virtualenv==20.23.0", "cryptography>=35.0,<42", - "flake8>=6.0.0,<6.1.0", + "flake8>=6.0.0,<6.2.0", "black>=22.6.0,<24", "isort>=5,<6", "grpcio-testing>=1.56.2,<2", From e93434e3d3031c55d3ce3413e7b1640c9524c0fb Mon Sep 17 00:00:00 2001 From: danielsalvador Date: Tue, 17 Oct 2023 23:47:44 +0300 Subject: [PATCH 4/7] add sdk/python/feast/protos --- .gitignore | 4 +- sdk/python/feast/protos/__init__.py | 0 sdk/python/feast/protos/feast/__init__.py | 0 .../protos/feast/core/Aggregation_pb2.py | 28 + .../protos/feast/core/Aggregation_pb2.pyi | 35 ++ .../protos/feast/core/Aggregation_pb2_grpc.py | 4 + .../feast/protos/feast/core/DataFormat_pb2.py | 37 ++ .../protos/feast/core/DataFormat_pb2.pyi | 95 ++++ .../protos/feast/core/DataFormat_pb2_grpc.py | 4 + .../feast/protos/feast/core/DataSource_pb2.py | 72 +++ .../protos/feast/core/DataSource_pb2.pyi | 529 ++++++++++++++++++ .../protos/feast/core/DataSource_pb2_grpc.py | 4 + .../protos/feast/core/DatastoreTable_pb2.py | 28 + .../protos/feast/core/DatastoreTable_pb2.pyi | 44 ++ .../feast/core/DatastoreTable_pb2_grpc.py | 4 + .../protos/feast/core/DynamoDBTable_pb2.py | 27 + .../protos/feast/core/DynamoDBTable_pb2.pyi | 30 + .../feast/core/DynamoDBTable_pb2_grpc.py | 4 + .../feast/protos/feast/core/Entity_pb2.py | 37 ++ .../feast/protos/feast/core/Entity_pb2.pyi | 109 ++++ .../protos/feast/core/Entity_pb2_grpc.py | 4 + .../protos/feast/core/FeatureService_pb2.py | 55 ++ .../protos/feast/core/FeatureService_pb2.pyi | 249 +++++++++ .../feast/core/FeatureService_pb2_grpc.py | 4 + .../protos/feast/core/FeatureTable_pb2.py | 39 ++ .../protos/feast/core/FeatureTable_pb2.pyi | 150 +++++ .../feast/core/FeatureTable_pb2_grpc.py | 4 + .../feast/core/FeatureViewProjection_pb2.py | 32 ++ .../feast/core/FeatureViewProjection_pb2.pyi | 59 ++ .../core/FeatureViewProjection_pb2_grpc.py | 4 + .../protos/feast/core/FeatureView_pb2.py | 41 ++ .../protos/feast/core/FeatureView_pb2.pyi | 177 ++++++ .../protos/feast/core/FeatureView_pb2_grpc.py | 4 + .../feast/protos/feast/core/Feature_pb2.py | 32 ++ .../feast/protos/feast/core/Feature_pb2.pyi | 57 ++ .../protos/feast/core/Feature_pb2_grpc.py | 4 + .../protos/feast/core/InfraObject_pb2.py | 34 ++ .../protos/feast/core/InfraObject_pb2.pyi | 73 +++ .../protos/feast/core/InfraObject_pb2_grpc.py | 4 + .../feast/core/OnDemandFeatureView_pb2.py | 48 ++ .../feast/core/OnDemandFeatureView_pb2.pyi | 183 ++++++ .../core/OnDemandFeatureView_pb2_grpc.py | 4 + .../feast/protos/feast/core/Registry_pb2.py | 41 ++ .../feast/protos/feast/core/Registry_pb2.pyi | 112 ++++ .../protos/feast/core/Registry_pb2_grpc.py | 4 + .../feast/core/RequestFeatureView_pb2.py | 34 ++ .../feast/core/RequestFeatureView_pb2.pyi | 83 +++ .../feast/core/RequestFeatureView_pb2_grpc.py | 4 + .../protos/feast/core/SavedDataset_pb2.py | 39 ++ .../protos/feast/core/SavedDataset_pb2.pyi | 170 ++++++ .../feast/core/SavedDataset_pb2_grpc.py | 4 + .../protos/feast/core/SqliteTable_pb2.py | 27 + .../protos/feast/core/SqliteTable_pb2.pyi | 30 + .../protos/feast/core/SqliteTable_pb2_grpc.py | 4 + .../feast/protos/feast/core/Store_pb2.py | 37 ++ .../feast/protos/feast/core/Store_pb2.pyi | 220 ++++++++ .../feast/protos/feast/core/Store_pb2_grpc.py | 4 + .../feast/core/StreamFeatureView_pb2.py | 39 ++ .../feast/core/StreamFeatureView_pb2.pyi | 153 +++++ .../feast/core/StreamFeatureView_pb2_grpc.py | 4 + .../feast/core/ValidationProfile_pb2.py | 37 ++ .../feast/core/ValidationProfile_pb2.pyi | 110 ++++ .../feast/core/ValidationProfile_pb2_grpc.py | 4 + .../feast/protos/feast/core/__init__.py | 0 .../protos/feast/serving/Connector_pb2.py | 39 ++ .../protos/feast/serving/Connector_pb2.pyi | 80 +++ .../feast/serving/Connector_pb2_grpc.py | 66 +++ .../protos/feast/serving/GrpcServer_pb2.py | 42 ++ .../protos/feast/serving/GrpcServer_pb2.pyi | 99 ++++ .../feast/serving/GrpcServer_pb2_grpc.py | 99 ++++ .../feast/serving/ServingService_pb2.py | 63 +++ .../feast/serving/ServingService_pb2.pyi | 309 ++++++++++ .../feast/serving/ServingService_pb2_grpc.py | 101 ++++ .../serving/TransformationService_pb2.py | 39 ++ .../serving/TransformationService_pb2.pyi | 105 ++++ .../serving/TransformationService_pb2_grpc.py | 99 ++++ .../feast/protos/feast/serving/__init__.py | 0 .../feast/protos/feast/storage/Redis_pb2.py | 28 + .../feast/protos/feast/storage/Redis_pb2.pyi | 32 ++ .../protos/feast/storage/Redis_pb2_grpc.py | 4 + .../feast/protos/feast/storage/__init__.py | 0 .../feast/protos/feast/types/EntityKey_pb2.py | 28 + .../protos/feast/types/EntityKey_pb2.pyi | 29 + .../protos/feast/types/EntityKey_pb2_grpc.py | 4 + .../feast/protos/feast/types/Field_pb2.py | 32 ++ .../feast/protos/feast/types/Field_pb2.pyi | 51 ++ .../protos/feast/types/Field_pb2_grpc.py | 4 + .../feast/protos/feast/types/Value_pb2.py | 49 ++ .../feast/protos/feast/types/Value_pb2.pyi | 245 ++++++++ .../protos/feast/types/Value_pb2_grpc.py | 4 + .../feast/protos/feast/types/__init__.py | 0 91 files changed, 5165 insertions(+), 2 deletions(-) create mode 100644 sdk/python/feast/protos/__init__.py create mode 100644 sdk/python/feast/protos/feast/__init__.py create mode 100644 sdk/python/feast/protos/feast/core/Aggregation_pb2.py create mode 100644 sdk/python/feast/protos/feast/core/Aggregation_pb2.pyi create mode 100644 sdk/python/feast/protos/feast/core/Aggregation_pb2_grpc.py create mode 100644 sdk/python/feast/protos/feast/core/DataFormat_pb2.py create mode 100644 sdk/python/feast/protos/feast/core/DataFormat_pb2.pyi create mode 100644 sdk/python/feast/protos/feast/core/DataFormat_pb2_grpc.py create mode 100644 sdk/python/feast/protos/feast/core/DataSource_pb2.py create mode 100644 sdk/python/feast/protos/feast/core/DataSource_pb2.pyi create mode 100644 sdk/python/feast/protos/feast/core/DataSource_pb2_grpc.py create mode 100644 sdk/python/feast/protos/feast/core/DatastoreTable_pb2.py create mode 100644 sdk/python/feast/protos/feast/core/DatastoreTable_pb2.pyi create mode 100644 sdk/python/feast/protos/feast/core/DatastoreTable_pb2_grpc.py create mode 100644 sdk/python/feast/protos/feast/core/DynamoDBTable_pb2.py create mode 100644 sdk/python/feast/protos/feast/core/DynamoDBTable_pb2.pyi create mode 100644 sdk/python/feast/protos/feast/core/DynamoDBTable_pb2_grpc.py create mode 100644 sdk/python/feast/protos/feast/core/Entity_pb2.py create mode 100644 sdk/python/feast/protos/feast/core/Entity_pb2.pyi create mode 100644 sdk/python/feast/protos/feast/core/Entity_pb2_grpc.py create mode 100644 sdk/python/feast/protos/feast/core/FeatureService_pb2.py create mode 100644 sdk/python/feast/protos/feast/core/FeatureService_pb2.pyi create mode 100644 sdk/python/feast/protos/feast/core/FeatureService_pb2_grpc.py create mode 100644 sdk/python/feast/protos/feast/core/FeatureTable_pb2.py create mode 100644 sdk/python/feast/protos/feast/core/FeatureTable_pb2.pyi create mode 100644 sdk/python/feast/protos/feast/core/FeatureTable_pb2_grpc.py create mode 100644 sdk/python/feast/protos/feast/core/FeatureViewProjection_pb2.py create mode 100644 sdk/python/feast/protos/feast/core/FeatureViewProjection_pb2.pyi create mode 100644 sdk/python/feast/protos/feast/core/FeatureViewProjection_pb2_grpc.py create mode 100644 sdk/python/feast/protos/feast/core/FeatureView_pb2.py create mode 100644 sdk/python/feast/protos/feast/core/FeatureView_pb2.pyi create mode 100644 sdk/python/feast/protos/feast/core/FeatureView_pb2_grpc.py create mode 100644 sdk/python/feast/protos/feast/core/Feature_pb2.py create mode 100644 sdk/python/feast/protos/feast/core/Feature_pb2.pyi create mode 100644 sdk/python/feast/protos/feast/core/Feature_pb2_grpc.py create mode 100644 sdk/python/feast/protos/feast/core/InfraObject_pb2.py create mode 100644 sdk/python/feast/protos/feast/core/InfraObject_pb2.pyi create mode 100644 sdk/python/feast/protos/feast/core/InfraObject_pb2_grpc.py create mode 100644 sdk/python/feast/protos/feast/core/OnDemandFeatureView_pb2.py create mode 100644 sdk/python/feast/protos/feast/core/OnDemandFeatureView_pb2.pyi create mode 100644 sdk/python/feast/protos/feast/core/OnDemandFeatureView_pb2_grpc.py create mode 100644 sdk/python/feast/protos/feast/core/Registry_pb2.py create mode 100644 sdk/python/feast/protos/feast/core/Registry_pb2.pyi create mode 100644 sdk/python/feast/protos/feast/core/Registry_pb2_grpc.py create mode 100644 sdk/python/feast/protos/feast/core/RequestFeatureView_pb2.py create mode 100644 sdk/python/feast/protos/feast/core/RequestFeatureView_pb2.pyi create mode 100644 sdk/python/feast/protos/feast/core/RequestFeatureView_pb2_grpc.py create mode 100644 sdk/python/feast/protos/feast/core/SavedDataset_pb2.py create mode 100644 sdk/python/feast/protos/feast/core/SavedDataset_pb2.pyi create mode 100644 sdk/python/feast/protos/feast/core/SavedDataset_pb2_grpc.py create mode 100644 sdk/python/feast/protos/feast/core/SqliteTable_pb2.py create mode 100644 sdk/python/feast/protos/feast/core/SqliteTable_pb2.pyi create mode 100644 sdk/python/feast/protos/feast/core/SqliteTable_pb2_grpc.py create mode 100644 sdk/python/feast/protos/feast/core/Store_pb2.py create mode 100644 sdk/python/feast/protos/feast/core/Store_pb2.pyi create mode 100644 sdk/python/feast/protos/feast/core/Store_pb2_grpc.py create mode 100644 sdk/python/feast/protos/feast/core/StreamFeatureView_pb2.py create mode 100644 sdk/python/feast/protos/feast/core/StreamFeatureView_pb2.pyi create mode 100644 sdk/python/feast/protos/feast/core/StreamFeatureView_pb2_grpc.py create mode 100644 sdk/python/feast/protos/feast/core/ValidationProfile_pb2.py create mode 100644 sdk/python/feast/protos/feast/core/ValidationProfile_pb2.pyi create mode 100644 sdk/python/feast/protos/feast/core/ValidationProfile_pb2_grpc.py create mode 100644 sdk/python/feast/protos/feast/core/__init__.py create mode 100644 sdk/python/feast/protos/feast/serving/Connector_pb2.py create mode 100644 sdk/python/feast/protos/feast/serving/Connector_pb2.pyi create mode 100644 sdk/python/feast/protos/feast/serving/Connector_pb2_grpc.py create mode 100644 sdk/python/feast/protos/feast/serving/GrpcServer_pb2.py create mode 100644 sdk/python/feast/protos/feast/serving/GrpcServer_pb2.pyi create mode 100644 sdk/python/feast/protos/feast/serving/GrpcServer_pb2_grpc.py create mode 100644 sdk/python/feast/protos/feast/serving/ServingService_pb2.py create mode 100644 sdk/python/feast/protos/feast/serving/ServingService_pb2.pyi create mode 100644 sdk/python/feast/protos/feast/serving/ServingService_pb2_grpc.py create mode 100644 sdk/python/feast/protos/feast/serving/TransformationService_pb2.py create mode 100644 sdk/python/feast/protos/feast/serving/TransformationService_pb2.pyi create mode 100644 sdk/python/feast/protos/feast/serving/TransformationService_pb2_grpc.py create mode 100644 sdk/python/feast/protos/feast/serving/__init__.py create mode 100644 sdk/python/feast/protos/feast/storage/Redis_pb2.py create mode 100644 sdk/python/feast/protos/feast/storage/Redis_pb2.pyi create mode 100644 sdk/python/feast/protos/feast/storage/Redis_pb2_grpc.py create mode 100644 sdk/python/feast/protos/feast/storage/__init__.py create mode 100644 sdk/python/feast/protos/feast/types/EntityKey_pb2.py create mode 100644 sdk/python/feast/protos/feast/types/EntityKey_pb2.pyi create mode 100644 sdk/python/feast/protos/feast/types/EntityKey_pb2_grpc.py create mode 100644 sdk/python/feast/protos/feast/types/Field_pb2.py create mode 100644 sdk/python/feast/protos/feast/types/Field_pb2.pyi create mode 100644 sdk/python/feast/protos/feast/types/Field_pb2_grpc.py create mode 100644 sdk/python/feast/protos/feast/types/Value_pb2.py create mode 100644 sdk/python/feast/protos/feast/types/Value_pb2.pyi create mode 100644 sdk/python/feast/protos/feast/types/Value_pb2_grpc.py create mode 100644 sdk/python/feast/protos/feast/types/__init__.py diff --git a/.gitignore b/.gitignore index e4e82bfce4..88c6b50a76 100644 --- a/.gitignore +++ b/.gitignore @@ -185,7 +185,7 @@ dmypy.json # Protos sdk/python/docs/html -sdk/python/feast/protos/ +#sdk/python/feast/protos/ sdk/go/protos/ go/protos/ @@ -223,4 +223,4 @@ ui/.vercel **/yarn-error.log* # Go subprocess binaries (built during feast pip package building) -sdk/python/feast/binaries/ \ No newline at end of file +sdk/python/feast/binaries/ diff --git a/sdk/python/feast/protos/__init__.py b/sdk/python/feast/protos/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/sdk/python/feast/protos/feast/__init__.py b/sdk/python/feast/protos/feast/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/sdk/python/feast/protos/feast/core/Aggregation_pb2.py b/sdk/python/feast/protos/feast/core/Aggregation_pb2.py new file mode 100644 index 0000000000..25b68bfc49 --- /dev/null +++ b/sdk/python/feast/protos/feast/core/Aggregation_pb2.py @@ -0,0 +1,28 @@ +# -*- coding: utf-8 -*- +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: feast/core/Aggregation.proto +"""Generated protocol buffer code.""" +from google.protobuf import descriptor as _descriptor +from google.protobuf import descriptor_pool as _descriptor_pool +from google.protobuf import symbol_database as _symbol_database +from google.protobuf.internal import builder as _builder +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +from google.protobuf import duration_pb2 as google_dot_protobuf_dot_duration__pb2 + + +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1c\x66\x65\x61st/core/Aggregation.proto\x12\nfeast.core\x1a\x1egoogle/protobuf/duration.proto\"\x92\x01\n\x0b\x41ggregation\x12\x0e\n\x06\x63olumn\x18\x01 \x01(\t\x12\x10\n\x08\x66unction\x18\x02 \x01(\t\x12.\n\x0btime_window\x18\x03 \x01(\x0b\x32\x19.google.protobuf.Duration\x12\x31\n\x0eslide_interval\x18\x04 \x01(\x0b\x32\x19.google.protobuf.DurationBU\n\x10\x66\x65\x61st.proto.coreB\x10\x41ggregationProtoZ/github.com/feast-dev/feast/go/protos/feast/coreb\x06proto3') + +_globals = globals() +_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) +_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'feast.core.Aggregation_pb2', _globals) +if _descriptor._USE_C_DESCRIPTORS == False: + + DESCRIPTOR._options = None + DESCRIPTOR._serialized_options = b'\n\020feast.proto.coreB\020AggregationProtoZ/github.com/feast-dev/feast/go/protos/feast/core' + _globals['_AGGREGATION']._serialized_start=77 + _globals['_AGGREGATION']._serialized_end=223 +# @@protoc_insertion_point(module_scope) diff --git a/sdk/python/feast/protos/feast/core/Aggregation_pb2.pyi b/sdk/python/feast/protos/feast/core/Aggregation_pb2.pyi new file mode 100644 index 0000000000..d81e4c25cf --- /dev/null +++ b/sdk/python/feast/protos/feast/core/Aggregation_pb2.pyi @@ -0,0 +1,35 @@ +""" +@generated by mypy-protobuf. Do not edit manually! +isort:skip_file +""" +import builtins +import google.protobuf.descriptor +import google.protobuf.duration_pb2 +import google.protobuf.message +import typing +import typing_extensions + +DESCRIPTOR: google.protobuf.descriptor.FileDescriptor = ... + +class Aggregation(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + COLUMN_FIELD_NUMBER: builtins.int + FUNCTION_FIELD_NUMBER: builtins.int + TIME_WINDOW_FIELD_NUMBER: builtins.int + SLIDE_INTERVAL_FIELD_NUMBER: builtins.int + column: typing.Text = ... + function: typing.Text = ... + @property + def time_window(self) -> google.protobuf.duration_pb2.Duration: ... + @property + def slide_interval(self) -> google.protobuf.duration_pb2.Duration: ... + def __init__(self, + *, + column : typing.Text = ..., + function : typing.Text = ..., + time_window : typing.Optional[google.protobuf.duration_pb2.Duration] = ..., + slide_interval : typing.Optional[google.protobuf.duration_pb2.Duration] = ..., + ) -> None: ... + def HasField(self, field_name: typing_extensions.Literal["slide_interval",b"slide_interval","time_window",b"time_window"]) -> builtins.bool: ... + def ClearField(self, field_name: typing_extensions.Literal["column",b"column","function",b"function","slide_interval",b"slide_interval","time_window",b"time_window"]) -> None: ... +global___Aggregation = Aggregation diff --git a/sdk/python/feast/protos/feast/core/Aggregation_pb2_grpc.py b/sdk/python/feast/protos/feast/core/Aggregation_pb2_grpc.py new file mode 100644 index 0000000000..2daafffebf --- /dev/null +++ b/sdk/python/feast/protos/feast/core/Aggregation_pb2_grpc.py @@ -0,0 +1,4 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +"""Client and server classes corresponding to protobuf-defined services.""" +import grpc + diff --git a/sdk/python/feast/protos/feast/core/DataFormat_pb2.py b/sdk/python/feast/protos/feast/core/DataFormat_pb2.py new file mode 100644 index 0000000000..b155aa8967 --- /dev/null +++ b/sdk/python/feast/protos/feast/core/DataFormat_pb2.py @@ -0,0 +1,37 @@ +# -*- coding: utf-8 -*- +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: feast/core/DataFormat.proto +"""Generated protocol buffer code.""" +from google.protobuf import descriptor as _descriptor +from google.protobuf import descriptor_pool as _descriptor_pool +from google.protobuf import symbol_database as _symbol_database +from google.protobuf.internal import builder as _builder +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + + + +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1b\x66\x65\x61st/core/DataFormat.proto\x12\nfeast.core\"g\n\nFileFormat\x12>\n\x0eparquet_format\x18\x01 \x01(\x0b\x32$.feast.core.FileFormat.ParquetFormatH\x00\x1a\x0f\n\rParquetFormatB\x08\n\x06\x66ormat\"\xb7\x02\n\x0cStreamFormat\x12:\n\x0b\x61vro_format\x18\x01 \x01(\x0b\x32#.feast.core.StreamFormat.AvroFormatH\x00\x12<\n\x0cproto_format\x18\x02 \x01(\x0b\x32$.feast.core.StreamFormat.ProtoFormatH\x00\x12:\n\x0bjson_format\x18\x03 \x01(\x0b\x32#.feast.core.StreamFormat.JsonFormatH\x00\x1a!\n\x0bProtoFormat\x12\x12\n\nclass_path\x18\x01 \x01(\t\x1a!\n\nAvroFormat\x12\x13\n\x0bschema_json\x18\x01 \x01(\t\x1a!\n\nJsonFormat\x12\x13\n\x0bschema_json\x18\x01 \x01(\tB\x08\n\x06\x66ormatBT\n\x10\x66\x65\x61st.proto.coreB\x0f\x44\x61taFormatProtoZ/github.com/feast-dev/feast/go/protos/feast/coreb\x06proto3') + +_globals = globals() +_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) +_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'feast.core.DataFormat_pb2', _globals) +if _descriptor._USE_C_DESCRIPTORS == False: + + DESCRIPTOR._options = None + DESCRIPTOR._serialized_options = b'\n\020feast.proto.coreB\017DataFormatProtoZ/github.com/feast-dev/feast/go/protos/feast/core' + _globals['_FILEFORMAT']._serialized_start=43 + _globals['_FILEFORMAT']._serialized_end=146 + _globals['_FILEFORMAT_PARQUETFORMAT']._serialized_start=121 + _globals['_FILEFORMAT_PARQUETFORMAT']._serialized_end=136 + _globals['_STREAMFORMAT']._serialized_start=149 + _globals['_STREAMFORMAT']._serialized_end=460 + _globals['_STREAMFORMAT_PROTOFORMAT']._serialized_start=347 + _globals['_STREAMFORMAT_PROTOFORMAT']._serialized_end=380 + _globals['_STREAMFORMAT_AVROFORMAT']._serialized_start=382 + _globals['_STREAMFORMAT_AVROFORMAT']._serialized_end=415 + _globals['_STREAMFORMAT_JSONFORMAT']._serialized_start=417 + _globals['_STREAMFORMAT_JSONFORMAT']._serialized_end=450 +# @@protoc_insertion_point(module_scope) diff --git a/sdk/python/feast/protos/feast/core/DataFormat_pb2.pyi b/sdk/python/feast/protos/feast/core/DataFormat_pb2.pyi new file mode 100644 index 0000000000..ae10905a17 --- /dev/null +++ b/sdk/python/feast/protos/feast/core/DataFormat_pb2.pyi @@ -0,0 +1,95 @@ +""" +@generated by mypy-protobuf. Do not edit manually! +isort:skip_file +""" +import builtins +import google.protobuf.descriptor +import google.protobuf.message +import typing +import typing_extensions + +DESCRIPTOR: google.protobuf.descriptor.FileDescriptor = ... + +class FileFormat(google.protobuf.message.Message): + """Defines the file format encoding the features/entity data in files""" + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + class ParquetFormat(google.protobuf.message.Message): + """Defines options for the Parquet data format""" + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + def __init__(self, + ) -> None: ... + + PARQUET_FORMAT_FIELD_NUMBER: builtins.int + @property + def parquet_format(self) -> global___FileFormat.ParquetFormat: ... + def __init__(self, + *, + parquet_format : typing.Optional[global___FileFormat.ParquetFormat] = ..., + ) -> None: ... + def HasField(self, field_name: typing_extensions.Literal["format",b"format","parquet_format",b"parquet_format"]) -> builtins.bool: ... + def ClearField(self, field_name: typing_extensions.Literal["format",b"format","parquet_format",b"parquet_format"]) -> None: ... + def WhichOneof(self, oneof_group: typing_extensions.Literal["format",b"format"]) -> typing.Optional[typing_extensions.Literal["parquet_format"]]: ... +global___FileFormat = FileFormat + +class StreamFormat(google.protobuf.message.Message): + """Defines the data format encoding features/entity data in data streams""" + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + class ProtoFormat(google.protobuf.message.Message): + """Defines options for the protobuf data format""" + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + CLASS_PATH_FIELD_NUMBER: builtins.int + class_path: typing.Text = ... + """Classpath to the generated Java Protobuf class that can be used to decode + Feature data from the obtained stream message + """ + + def __init__(self, + *, + class_path : typing.Text = ..., + ) -> None: ... + def ClearField(self, field_name: typing_extensions.Literal["class_path",b"class_path"]) -> None: ... + + class AvroFormat(google.protobuf.message.Message): + """Defines options for the avro data format""" + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + SCHEMA_JSON_FIELD_NUMBER: builtins.int + schema_json: typing.Text = ... + """Optional if used in a File DataSource as schema is embedded in avro file. + Specifies the schema of the Avro message as JSON string. + """ + + def __init__(self, + *, + schema_json : typing.Text = ..., + ) -> None: ... + def ClearField(self, field_name: typing_extensions.Literal["schema_json",b"schema_json"]) -> None: ... + + class JsonFormat(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + SCHEMA_JSON_FIELD_NUMBER: builtins.int + schema_json: typing.Text = ... + def __init__(self, + *, + schema_json : typing.Text = ..., + ) -> None: ... + def ClearField(self, field_name: typing_extensions.Literal["schema_json",b"schema_json"]) -> None: ... + + AVRO_FORMAT_FIELD_NUMBER: builtins.int + PROTO_FORMAT_FIELD_NUMBER: builtins.int + JSON_FORMAT_FIELD_NUMBER: builtins.int + @property + def avro_format(self) -> global___StreamFormat.AvroFormat: ... + @property + def proto_format(self) -> global___StreamFormat.ProtoFormat: ... + @property + def json_format(self) -> global___StreamFormat.JsonFormat: ... + def __init__(self, + *, + avro_format : typing.Optional[global___StreamFormat.AvroFormat] = ..., + proto_format : typing.Optional[global___StreamFormat.ProtoFormat] = ..., + json_format : typing.Optional[global___StreamFormat.JsonFormat] = ..., + ) -> None: ... + def HasField(self, field_name: typing_extensions.Literal["avro_format",b"avro_format","format",b"format","json_format",b"json_format","proto_format",b"proto_format"]) -> builtins.bool: ... + def ClearField(self, field_name: typing_extensions.Literal["avro_format",b"avro_format","format",b"format","json_format",b"json_format","proto_format",b"proto_format"]) -> None: ... + def WhichOneof(self, oneof_group: typing_extensions.Literal["format",b"format"]) -> typing.Optional[typing_extensions.Literal["avro_format","proto_format","json_format"]]: ... +global___StreamFormat = StreamFormat diff --git a/sdk/python/feast/protos/feast/core/DataFormat_pb2_grpc.py b/sdk/python/feast/protos/feast/core/DataFormat_pb2_grpc.py new file mode 100644 index 0000000000..2daafffebf --- /dev/null +++ b/sdk/python/feast/protos/feast/core/DataFormat_pb2_grpc.py @@ -0,0 +1,4 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +"""Client and server classes corresponding to protobuf-defined services.""" +import grpc + diff --git a/sdk/python/feast/protos/feast/core/DataSource_pb2.py b/sdk/python/feast/protos/feast/core/DataSource_pb2.py new file mode 100644 index 0000000000..0704279d12 --- /dev/null +++ b/sdk/python/feast/protos/feast/core/DataSource_pb2.py @@ -0,0 +1,72 @@ +# -*- coding: utf-8 -*- +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: feast/core/DataSource.proto +"""Generated protocol buffer code.""" +from google.protobuf import descriptor as _descriptor +from google.protobuf import descriptor_pool as _descriptor_pool +from google.protobuf import symbol_database as _symbol_database +from google.protobuf.internal import builder as _builder +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +from google.protobuf import duration_pb2 as google_dot_protobuf_dot_duration__pb2 +from google.protobuf import timestamp_pb2 as google_dot_protobuf_dot_timestamp__pb2 +from feast.protos.feast.core import DataFormat_pb2 as feast_dot_core_dot_DataFormat__pb2 +from feast.protos.feast.types import Value_pb2 as feast_dot_types_dot_Value__pb2 +from feast.protos.feast.core import Feature_pb2 as feast_dot_core_dot_Feature__pb2 + + +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1b\x66\x65\x61st/core/DataSource.proto\x12\nfeast.core\x1a\x1egoogle/protobuf/duration.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x1b\x66\x65\x61st/core/DataFormat.proto\x1a\x17\x66\x65\x61st/types/Value.proto\x1a\x18\x66\x65\x61st/core/Feature.proto\"\xc0\x16\n\nDataSource\x12\x0c\n\x04name\x18\x14 \x01(\t\x12\x0f\n\x07project\x18\x15 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x17 \x01(\t\x12.\n\x04tags\x18\x18 \x03(\x0b\x32 .feast.core.DataSource.TagsEntry\x12\r\n\x05owner\x18\x19 \x01(\t\x12/\n\x04type\x18\x01 \x01(\x0e\x32!.feast.core.DataSource.SourceType\x12?\n\rfield_mapping\x18\x02 \x03(\x0b\x32(.feast.core.DataSource.FieldMappingEntry\x12\x17\n\x0ftimestamp_field\x18\x03 \x01(\t\x12\x1d\n\x15\x64\x61te_partition_column\x18\x04 \x01(\t\x12 \n\x18\x63reated_timestamp_column\x18\x05 \x01(\t\x12\x1e\n\x16\x64\x61ta_source_class_type\x18\x11 \x01(\t\x12,\n\x0c\x62\x61tch_source\x18\x1a \x01(\x0b\x32\x16.feast.core.DataSource\x12/\n\x04meta\x18\x32 \x01(\x0b\x32!.feast.core.DataSource.SourceMeta\x12:\n\x0c\x66ile_options\x18\x0b \x01(\x0b\x32\".feast.core.DataSource.FileOptionsH\x00\x12\x42\n\x10\x62igquery_options\x18\x0c \x01(\x0b\x32&.feast.core.DataSource.BigQueryOptionsH\x00\x12<\n\rkafka_options\x18\r \x01(\x0b\x32#.feast.core.DataSource.KafkaOptionsH\x00\x12@\n\x0fkinesis_options\x18\x0e \x01(\x0b\x32%.feast.core.DataSource.KinesisOptionsH\x00\x12\x42\n\x10redshift_options\x18\x0f \x01(\x0b\x32&.feast.core.DataSource.RedshiftOptionsH\x00\x12I\n\x14request_data_options\x18\x12 \x01(\x0b\x32).feast.core.DataSource.RequestDataOptionsH\x00\x12\x44\n\x0e\x63ustom_options\x18\x10 \x01(\x0b\x32*.feast.core.DataSource.CustomSourceOptionsH\x00\x12\x44\n\x11snowflake_options\x18\x13 \x01(\x0b\x32\'.feast.core.DataSource.SnowflakeOptionsH\x00\x12:\n\x0cpush_options\x18\x16 \x01(\x0b\x32\".feast.core.DataSource.PushOptionsH\x00\x12<\n\rspark_options\x18\x1b \x01(\x0b\x32#.feast.core.DataSource.SparkOptionsH\x00\x12<\n\rtrino_options\x18\x1e \x01(\x0b\x32#.feast.core.DataSource.TrinoOptionsH\x00\x12>\n\x0e\x61thena_options\x18# \x01(\x0b\x32$.feast.core.DataSource.AthenaOptionsH\x00\x1a+\n\tTagsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x1a\x33\n\x11\x46ieldMappingEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x1a\x82\x01\n\nSourceMeta\x12:\n\x16\x65\x61rliestEventTimestamp\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x38\n\x14latestEventTimestamp\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x1a\x65\n\x0b\x46ileOptions\x12+\n\x0b\x66ile_format\x18\x01 \x01(\x0b\x32\x16.feast.core.FileFormat\x12\x0b\n\x03uri\x18\x02 \x01(\t\x12\x1c\n\x14s3_endpoint_override\x18\x03 \x01(\t\x1a/\n\x0f\x42igQueryOptions\x12\r\n\x05table\x18\x01 \x01(\t\x12\r\n\x05query\x18\x02 \x01(\t\x1a,\n\x0cTrinoOptions\x12\r\n\x05table\x18\x01 \x01(\t\x12\r\n\x05query\x18\x02 \x01(\t\x1a\xae\x01\n\x0cKafkaOptions\x12\x1f\n\x17kafka_bootstrap_servers\x18\x01 \x01(\t\x12\r\n\x05topic\x18\x02 \x01(\t\x12\x30\n\x0emessage_format\x18\x03 \x01(\x0b\x32\x18.feast.core.StreamFormat\x12<\n\x19watermark_delay_threshold\x18\x04 \x01(\x0b\x32\x19.google.protobuf.Duration\x1a\x66\n\x0eKinesisOptions\x12\x0e\n\x06region\x18\x01 \x01(\t\x12\x13\n\x0bstream_name\x18\x02 \x01(\t\x12/\n\rrecord_format\x18\x03 \x01(\x0b\x32\x18.feast.core.StreamFormat\x1aQ\n\x0fRedshiftOptions\x12\r\n\x05table\x18\x01 \x01(\t\x12\r\n\x05query\x18\x02 \x01(\t\x12\x0e\n\x06schema\x18\x03 \x01(\t\x12\x10\n\x08\x64\x61tabase\x18\x04 \x01(\t\x1aT\n\rAthenaOptions\x12\r\n\x05table\x18\x01 \x01(\t\x12\r\n\x05query\x18\x02 \x01(\t\x12\x10\n\x08\x64\x61tabase\x18\x03 \x01(\t\x12\x13\n\x0b\x64\x61ta_source\x18\x04 \x01(\t\x1aX\n\x10SnowflakeOptions\x12\r\n\x05table\x18\x01 \x01(\t\x12\r\n\x05query\x18\x02 \x01(\t\x12\x0e\n\x06schema\x18\x03 \x01(\t\x12\x10\n\x08\x64\x61tabase\x18\x04 \x01(\tJ\x04\x08\x05\x10\x06\x1aO\n\x0cSparkOptions\x12\r\n\x05table\x18\x01 \x01(\t\x12\r\n\x05query\x18\x02 \x01(\t\x12\x0c\n\x04path\x18\x03 \x01(\t\x12\x13\n\x0b\x66ile_format\x18\x04 \x01(\t\x1a,\n\x13\x43ustomSourceOptions\x12\x15\n\rconfiguration\x18\x01 \x01(\x0c\x1a\xf7\x01\n\x12RequestDataOptions\x12Z\n\x11\x64\x65precated_schema\x18\x02 \x03(\x0b\x32?.feast.core.DataSource.RequestDataOptions.DeprecatedSchemaEntry\x12)\n\x06schema\x18\x03 \x03(\x0b\x32\x19.feast.core.FeatureSpecV2\x1aT\n\x15\x44\x65precatedSchemaEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12*\n\x05value\x18\x02 \x01(\x0e\x32\x1b.feast.types.ValueType.Enum:\x02\x38\x01J\x04\x08\x01\x10\x02\x1a\x13\n\x0bPushOptionsJ\x04\x08\x01\x10\x02\"\xf8\x01\n\nSourceType\x12\x0b\n\x07INVALID\x10\x00\x12\x0e\n\nBATCH_FILE\x10\x01\x12\x13\n\x0f\x42\x41TCH_SNOWFLAKE\x10\x08\x12\x12\n\x0e\x42\x41TCH_BIGQUERY\x10\x02\x12\x12\n\x0e\x42\x41TCH_REDSHIFT\x10\x05\x12\x10\n\x0cSTREAM_KAFKA\x10\x03\x12\x12\n\x0eSTREAM_KINESIS\x10\x04\x12\x11\n\rCUSTOM_SOURCE\x10\x06\x12\x12\n\x0eREQUEST_SOURCE\x10\x07\x12\x0f\n\x0bPUSH_SOURCE\x10\t\x12\x0f\n\x0b\x42\x41TCH_TRINO\x10\n\x12\x0f\n\x0b\x42\x41TCH_SPARK\x10\x0b\x12\x10\n\x0c\x42\x41TCH_ATHENA\x10\x0c\x42\t\n\x07optionsJ\x04\x08\x06\x10\x0b\x42T\n\x10\x66\x65\x61st.proto.coreB\x0f\x44\x61taSourceProtoZ/github.com/feast-dev/feast/go/protos/feast/coreb\x06proto3') + +_globals = globals() +_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) +_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'feast.core.DataSource_pb2', _globals) +if _descriptor._USE_C_DESCRIPTORS == False: + + DESCRIPTOR._options = None + DESCRIPTOR._serialized_options = b'\n\020feast.proto.coreB\017DataSourceProtoZ/github.com/feast-dev/feast/go/protos/feast/core' + _DATASOURCE_TAGSENTRY._options = None + _DATASOURCE_TAGSENTRY._serialized_options = b'8\001' + _DATASOURCE_FIELDMAPPINGENTRY._options = None + _DATASOURCE_FIELDMAPPINGENTRY._serialized_options = b'8\001' + _DATASOURCE_REQUESTDATAOPTIONS_DEPRECATEDSCHEMAENTRY._options = None + _DATASOURCE_REQUESTDATAOPTIONS_DEPRECATEDSCHEMAENTRY._serialized_options = b'8\001' + _globals['_DATASOURCE']._serialized_start=189 + _globals['_DATASOURCE']._serialized_end=3069 + _globals['_DATASOURCE_TAGSENTRY']._serialized_start=1436 + _globals['_DATASOURCE_TAGSENTRY']._serialized_end=1479 + _globals['_DATASOURCE_FIELDMAPPINGENTRY']._serialized_start=1481 + _globals['_DATASOURCE_FIELDMAPPINGENTRY']._serialized_end=1532 + _globals['_DATASOURCE_SOURCEMETA']._serialized_start=1535 + _globals['_DATASOURCE_SOURCEMETA']._serialized_end=1665 + _globals['_DATASOURCE_FILEOPTIONS']._serialized_start=1667 + _globals['_DATASOURCE_FILEOPTIONS']._serialized_end=1768 + _globals['_DATASOURCE_BIGQUERYOPTIONS']._serialized_start=1770 + _globals['_DATASOURCE_BIGQUERYOPTIONS']._serialized_end=1817 + _globals['_DATASOURCE_TRINOOPTIONS']._serialized_start=1819 + _globals['_DATASOURCE_TRINOOPTIONS']._serialized_end=1863 + _globals['_DATASOURCE_KAFKAOPTIONS']._serialized_start=1866 + _globals['_DATASOURCE_KAFKAOPTIONS']._serialized_end=2040 + _globals['_DATASOURCE_KINESISOPTIONS']._serialized_start=2042 + _globals['_DATASOURCE_KINESISOPTIONS']._serialized_end=2144 + _globals['_DATASOURCE_REDSHIFTOPTIONS']._serialized_start=2146 + _globals['_DATASOURCE_REDSHIFTOPTIONS']._serialized_end=2227 + _globals['_DATASOURCE_ATHENAOPTIONS']._serialized_start=2229 + _globals['_DATASOURCE_ATHENAOPTIONS']._serialized_end=2313 + _globals['_DATASOURCE_SNOWFLAKEOPTIONS']._serialized_start=2315 + _globals['_DATASOURCE_SNOWFLAKEOPTIONS']._serialized_end=2403 + _globals['_DATASOURCE_SPARKOPTIONS']._serialized_start=2405 + _globals['_DATASOURCE_SPARKOPTIONS']._serialized_end=2484 + _globals['_DATASOURCE_CUSTOMSOURCEOPTIONS']._serialized_start=2486 + _globals['_DATASOURCE_CUSTOMSOURCEOPTIONS']._serialized_end=2530 + _globals['_DATASOURCE_REQUESTDATAOPTIONS']._serialized_start=2533 + _globals['_DATASOURCE_REQUESTDATAOPTIONS']._serialized_end=2780 + _globals['_DATASOURCE_REQUESTDATAOPTIONS_DEPRECATEDSCHEMAENTRY']._serialized_start=2690 + _globals['_DATASOURCE_REQUESTDATAOPTIONS_DEPRECATEDSCHEMAENTRY']._serialized_end=2774 + _globals['_DATASOURCE_PUSHOPTIONS']._serialized_start=2782 + _globals['_DATASOURCE_PUSHOPTIONS']._serialized_end=2801 + _globals['_DATASOURCE_SOURCETYPE']._serialized_start=2804 + _globals['_DATASOURCE_SOURCETYPE']._serialized_end=3052 +# @@protoc_insertion_point(module_scope) diff --git a/sdk/python/feast/protos/feast/core/DataSource_pb2.pyi b/sdk/python/feast/protos/feast/core/DataSource_pb2.pyi new file mode 100644 index 0000000000..fa7721a669 --- /dev/null +++ b/sdk/python/feast/protos/feast/core/DataSource_pb2.pyi @@ -0,0 +1,529 @@ +""" +@generated by mypy-protobuf. Do not edit manually! +isort:skip_file +""" +import builtins +import feast.core.DataFormat_pb2 +import feast.core.Feature_pb2 +import feast.types.Value_pb2 +import google.protobuf.descriptor +import google.protobuf.duration_pb2 +import google.protobuf.internal.containers +import google.protobuf.internal.enum_type_wrapper +import google.protobuf.message +import google.protobuf.timestamp_pb2 +import typing +import typing_extensions + +DESCRIPTOR: google.protobuf.descriptor.FileDescriptor = ... + +class DataSource(google.protobuf.message.Message): + """Defines a Data Source that can be used source Feature data + Next available id: 28 + """ + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + class _SourceType: + ValueType = typing.NewType('ValueType', builtins.int) + V: typing_extensions.TypeAlias = ValueType + class _SourceTypeEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_SourceType.ValueType], builtins.type): + DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor = ... + INVALID: DataSource.SourceType.ValueType = ... # 0 + BATCH_FILE: DataSource.SourceType.ValueType = ... # 1 + BATCH_SNOWFLAKE: DataSource.SourceType.ValueType = ... # 8 + BATCH_BIGQUERY: DataSource.SourceType.ValueType = ... # 2 + BATCH_REDSHIFT: DataSource.SourceType.ValueType = ... # 5 + STREAM_KAFKA: DataSource.SourceType.ValueType = ... # 3 + STREAM_KINESIS: DataSource.SourceType.ValueType = ... # 4 + CUSTOM_SOURCE: DataSource.SourceType.ValueType = ... # 6 + REQUEST_SOURCE: DataSource.SourceType.ValueType = ... # 7 + PUSH_SOURCE: DataSource.SourceType.ValueType = ... # 9 + BATCH_TRINO: DataSource.SourceType.ValueType = ... # 10 + BATCH_SPARK: DataSource.SourceType.ValueType = ... # 11 + BATCH_ATHENA: DataSource.SourceType.ValueType = ... # 12 + class SourceType(_SourceType, metaclass=_SourceTypeEnumTypeWrapper): + """Type of Data Source. + Next available id: 12 + """ + pass + + INVALID: DataSource.SourceType.ValueType = ... # 0 + BATCH_FILE: DataSource.SourceType.ValueType = ... # 1 + BATCH_SNOWFLAKE: DataSource.SourceType.ValueType = ... # 8 + BATCH_BIGQUERY: DataSource.SourceType.ValueType = ... # 2 + BATCH_REDSHIFT: DataSource.SourceType.ValueType = ... # 5 + STREAM_KAFKA: DataSource.SourceType.ValueType = ... # 3 + STREAM_KINESIS: DataSource.SourceType.ValueType = ... # 4 + CUSTOM_SOURCE: DataSource.SourceType.ValueType = ... # 6 + REQUEST_SOURCE: DataSource.SourceType.ValueType = ... # 7 + PUSH_SOURCE: DataSource.SourceType.ValueType = ... # 9 + BATCH_TRINO: DataSource.SourceType.ValueType = ... # 10 + BATCH_SPARK: DataSource.SourceType.ValueType = ... # 11 + BATCH_ATHENA: DataSource.SourceType.ValueType = ... # 12 + + class TagsEntry(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + KEY_FIELD_NUMBER: builtins.int + VALUE_FIELD_NUMBER: builtins.int + key: typing.Text = ... + value: typing.Text = ... + def __init__(self, + *, + key : typing.Text = ..., + value : typing.Text = ..., + ) -> None: ... + def ClearField(self, field_name: typing_extensions.Literal["key",b"key","value",b"value"]) -> None: ... + + class FieldMappingEntry(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + KEY_FIELD_NUMBER: builtins.int + VALUE_FIELD_NUMBER: builtins.int + key: typing.Text = ... + value: typing.Text = ... + def __init__(self, + *, + key : typing.Text = ..., + value : typing.Text = ..., + ) -> None: ... + def ClearField(self, field_name: typing_extensions.Literal["key",b"key","value",b"value"]) -> None: ... + + class SourceMeta(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + EARLIESTEVENTTIMESTAMP_FIELD_NUMBER: builtins.int + LATESTEVENTTIMESTAMP_FIELD_NUMBER: builtins.int + @property + def earliestEventTimestamp(self) -> google.protobuf.timestamp_pb2.Timestamp: ... + @property + def latestEventTimestamp(self) -> google.protobuf.timestamp_pb2.Timestamp: ... + def __init__(self, + *, + earliestEventTimestamp : typing.Optional[google.protobuf.timestamp_pb2.Timestamp] = ..., + latestEventTimestamp : typing.Optional[google.protobuf.timestamp_pb2.Timestamp] = ..., + ) -> None: ... + def HasField(self, field_name: typing_extensions.Literal["earliestEventTimestamp",b"earliestEventTimestamp","latestEventTimestamp",b"latestEventTimestamp"]) -> builtins.bool: ... + def ClearField(self, field_name: typing_extensions.Literal["earliestEventTimestamp",b"earliestEventTimestamp","latestEventTimestamp",b"latestEventTimestamp"]) -> None: ... + + class FileOptions(google.protobuf.message.Message): + """Defines options for DataSource that sources features from a file""" + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + FILE_FORMAT_FIELD_NUMBER: builtins.int + URI_FIELD_NUMBER: builtins.int + S3_ENDPOINT_OVERRIDE_FIELD_NUMBER: builtins.int + @property + def file_format(self) -> feast.core.DataFormat_pb2.FileFormat: ... + uri: typing.Text = ... + """Target URL of file to retrieve and source features from. + s3://path/to/file for AWS S3 storage + gs://path/to/file for GCP GCS storage + file:///path/to/file for local storage + """ + + s3_endpoint_override: typing.Text = ... + """override AWS S3 storage endpoint with custom S3 endpoint""" + + def __init__(self, + *, + file_format : typing.Optional[feast.core.DataFormat_pb2.FileFormat] = ..., + uri : typing.Text = ..., + s3_endpoint_override : typing.Text = ..., + ) -> None: ... + def HasField(self, field_name: typing_extensions.Literal["file_format",b"file_format"]) -> builtins.bool: ... + def ClearField(self, field_name: typing_extensions.Literal["file_format",b"file_format","s3_endpoint_override",b"s3_endpoint_override","uri",b"uri"]) -> None: ... + + class BigQueryOptions(google.protobuf.message.Message): + """Defines options for DataSource that sources features from a BigQuery Query""" + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + TABLE_FIELD_NUMBER: builtins.int + QUERY_FIELD_NUMBER: builtins.int + table: typing.Text = ... + """Full table reference in the form of [project:dataset.table]""" + + query: typing.Text = ... + """SQL query that returns a table containing feature data. Must contain an event_timestamp column, and respective + entity columns + """ + + def __init__(self, + *, + table : typing.Text = ..., + query : typing.Text = ..., + ) -> None: ... + def ClearField(self, field_name: typing_extensions.Literal["query",b"query","table",b"table"]) -> None: ... + + class TrinoOptions(google.protobuf.message.Message): + """Defines options for DataSource that sources features from a Trino Query""" + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + TABLE_FIELD_NUMBER: builtins.int + QUERY_FIELD_NUMBER: builtins.int + table: typing.Text = ... + """Full table reference in the form of [project:dataset.table]""" + + query: typing.Text = ... + """SQL query that returns a table containing feature data. Must contain an event_timestamp column, and respective + entity columns + """ + + def __init__(self, + *, + table : typing.Text = ..., + query : typing.Text = ..., + ) -> None: ... + def ClearField(self, field_name: typing_extensions.Literal["query",b"query","table",b"table"]) -> None: ... + + class KafkaOptions(google.protobuf.message.Message): + """Defines options for DataSource that sources features from Kafka messages. + Each message should be a Protobuf that can be decoded with the generated + Java Protobuf class at the given class path + """ + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + KAFKA_BOOTSTRAP_SERVERS_FIELD_NUMBER: builtins.int + TOPIC_FIELD_NUMBER: builtins.int + MESSAGE_FORMAT_FIELD_NUMBER: builtins.int + WATERMARK_DELAY_THRESHOLD_FIELD_NUMBER: builtins.int + kafka_bootstrap_servers: typing.Text = ... + """Comma separated list of Kafka bootstrap servers. Used for feature tables without a defined source host[:port]]""" + + topic: typing.Text = ... + """Kafka topic to collect feature data from.""" + + @property + def message_format(self) -> feast.core.DataFormat_pb2.StreamFormat: + """Defines the stream data format encoding feature/entity data in Kafka messages.""" + pass + @property + def watermark_delay_threshold(self) -> google.protobuf.duration_pb2.Duration: + """Watermark delay threshold for stream data""" + pass + def __init__(self, + *, + kafka_bootstrap_servers : typing.Text = ..., + topic : typing.Text = ..., + message_format : typing.Optional[feast.core.DataFormat_pb2.StreamFormat] = ..., + watermark_delay_threshold : typing.Optional[google.protobuf.duration_pb2.Duration] = ..., + ) -> None: ... + def HasField(self, field_name: typing_extensions.Literal["message_format",b"message_format","watermark_delay_threshold",b"watermark_delay_threshold"]) -> builtins.bool: ... + def ClearField(self, field_name: typing_extensions.Literal["kafka_bootstrap_servers",b"kafka_bootstrap_servers","message_format",b"message_format","topic",b"topic","watermark_delay_threshold",b"watermark_delay_threshold"]) -> None: ... + + class KinesisOptions(google.protobuf.message.Message): + """Defines options for DataSource that sources features from Kinesis records. + Each record should be a Protobuf that can be decoded with the generated + Java Protobuf class at the given class path + """ + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + REGION_FIELD_NUMBER: builtins.int + STREAM_NAME_FIELD_NUMBER: builtins.int + RECORD_FORMAT_FIELD_NUMBER: builtins.int + region: typing.Text = ... + """AWS region of the Kinesis stream""" + + stream_name: typing.Text = ... + """Name of the Kinesis stream to obtain feature data from.""" + + @property + def record_format(self) -> feast.core.DataFormat_pb2.StreamFormat: + """Defines the data format encoding the feature/entity data in Kinesis records. + Kinesis Data Sources support Avro and Proto as data formats. + """ + pass + def __init__(self, + *, + region : typing.Text = ..., + stream_name : typing.Text = ..., + record_format : typing.Optional[feast.core.DataFormat_pb2.StreamFormat] = ..., + ) -> None: ... + def HasField(self, field_name: typing_extensions.Literal["record_format",b"record_format"]) -> builtins.bool: ... + def ClearField(self, field_name: typing_extensions.Literal["record_format",b"record_format","region",b"region","stream_name",b"stream_name"]) -> None: ... + + class RedshiftOptions(google.protobuf.message.Message): + """Defines options for DataSource that sources features from a Redshift Query""" + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + TABLE_FIELD_NUMBER: builtins.int + QUERY_FIELD_NUMBER: builtins.int + SCHEMA_FIELD_NUMBER: builtins.int + DATABASE_FIELD_NUMBER: builtins.int + table: typing.Text = ... + """Redshift table name""" + + query: typing.Text = ... + """SQL query that returns a table containing feature data. Must contain an event_timestamp column, and respective + entity columns + """ + + schema: typing.Text = ... + """Redshift schema name""" + + database: typing.Text = ... + """Redshift database name""" + + def __init__(self, + *, + table : typing.Text = ..., + query : typing.Text = ..., + schema : typing.Text = ..., + database : typing.Text = ..., + ) -> None: ... + def ClearField(self, field_name: typing_extensions.Literal["database",b"database","query",b"query","schema",b"schema","table",b"table"]) -> None: ... + + class AthenaOptions(google.protobuf.message.Message): + """Defines options for DataSource that sources features from a Athena Query""" + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + TABLE_FIELD_NUMBER: builtins.int + QUERY_FIELD_NUMBER: builtins.int + DATABASE_FIELD_NUMBER: builtins.int + DATA_SOURCE_FIELD_NUMBER: builtins.int + table: typing.Text = ... + """Athena table name""" + + query: typing.Text = ... + """SQL query that returns a table containing feature data. Must contain an event_timestamp column, and respective + entity columns + """ + + database: typing.Text = ... + """Athena database name""" + + data_source: typing.Text = ... + """Athena schema name""" + + def __init__(self, + *, + table : typing.Text = ..., + query : typing.Text = ..., + database : typing.Text = ..., + data_source : typing.Text = ..., + ) -> None: ... + def ClearField(self, field_name: typing_extensions.Literal["data_source",b"data_source","database",b"database","query",b"query","table",b"table"]) -> None: ... + + class SnowflakeOptions(google.protobuf.message.Message): + """Defines options for DataSource that sources features from a Snowflake Query""" + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + TABLE_FIELD_NUMBER: builtins.int + QUERY_FIELD_NUMBER: builtins.int + SCHEMA_FIELD_NUMBER: builtins.int + DATABASE_FIELD_NUMBER: builtins.int + table: typing.Text = ... + """Snowflake table name""" + + query: typing.Text = ... + """SQL query that returns a table containing feature data. Must contain an event_timestamp column, and respective + entity columns + """ + + schema: typing.Text = ... + """Snowflake schema name""" + + database: typing.Text = ... + """Snowflake schema name""" + + def __init__(self, + *, + table : typing.Text = ..., + query : typing.Text = ..., + schema : typing.Text = ..., + database : typing.Text = ..., + ) -> None: ... + def ClearField(self, field_name: typing_extensions.Literal["database",b"database","query",b"query","schema",b"schema","table",b"table"]) -> None: ... + + class SparkOptions(google.protobuf.message.Message): + """Defines options for DataSource that sources features from a spark table/query""" + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + TABLE_FIELD_NUMBER: builtins.int + QUERY_FIELD_NUMBER: builtins.int + PATH_FIELD_NUMBER: builtins.int + FILE_FORMAT_FIELD_NUMBER: builtins.int + table: typing.Text = ... + """Table name""" + + query: typing.Text = ... + """Spark SQl query that returns the table, this is an alternative to `table`""" + + path: typing.Text = ... + """Path from which spark can read the table, this is an alternative to `table`""" + + file_format: typing.Text = ... + """Format of files at `path` (e.g. parquet, avro, etc)""" + + def __init__(self, + *, + table : typing.Text = ..., + query : typing.Text = ..., + path : typing.Text = ..., + file_format : typing.Text = ..., + ) -> None: ... + def ClearField(self, field_name: typing_extensions.Literal["file_format",b"file_format","path",b"path","query",b"query","table",b"table"]) -> None: ... + + class CustomSourceOptions(google.protobuf.message.Message): + """Defines configuration for custom third-party data sources.""" + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + CONFIGURATION_FIELD_NUMBER: builtins.int + configuration: builtins.bytes = ... + """Serialized configuration information for the data source. The implementer of the custom data source is + responsible for serializing and deserializing data from bytes + """ + + def __init__(self, + *, + configuration : builtins.bytes = ..., + ) -> None: ... + def ClearField(self, field_name: typing_extensions.Literal["configuration",b"configuration"]) -> None: ... + + class RequestDataOptions(google.protobuf.message.Message): + """Defines options for DataSource that sources features from request data""" + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + class DeprecatedSchemaEntry(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + KEY_FIELD_NUMBER: builtins.int + VALUE_FIELD_NUMBER: builtins.int + key: typing.Text = ... + value: feast.types.Value_pb2.ValueType.Enum.ValueType = ... + def __init__(self, + *, + key : typing.Text = ..., + value : feast.types.Value_pb2.ValueType.Enum.ValueType = ..., + ) -> None: ... + def ClearField(self, field_name: typing_extensions.Literal["key",b"key","value",b"value"]) -> None: ... + + DEPRECATED_SCHEMA_FIELD_NUMBER: builtins.int + SCHEMA_FIELD_NUMBER: builtins.int + @property + def deprecated_schema(self) -> google.protobuf.internal.containers.ScalarMap[typing.Text, feast.types.Value_pb2.ValueType.Enum.ValueType]: + """Mapping of feature name to type""" + pass + @property + def schema(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[feast.core.Feature_pb2.FeatureSpecV2]: ... + def __init__(self, + *, + deprecated_schema : typing.Optional[typing.Mapping[typing.Text, feast.types.Value_pb2.ValueType.Enum.ValueType]] = ..., + schema : typing.Optional[typing.Iterable[feast.core.Feature_pb2.FeatureSpecV2]] = ..., + ) -> None: ... + def ClearField(self, field_name: typing_extensions.Literal["deprecated_schema",b"deprecated_schema","schema",b"schema"]) -> None: ... + + class PushOptions(google.protobuf.message.Message): + """Defines options for DataSource that supports pushing data to it. This allows data to be pushed to + the online store on-demand, such as by stream consumers. + """ + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + def __init__(self, + ) -> None: ... + + NAME_FIELD_NUMBER: builtins.int + PROJECT_FIELD_NUMBER: builtins.int + DESCRIPTION_FIELD_NUMBER: builtins.int + TAGS_FIELD_NUMBER: builtins.int + OWNER_FIELD_NUMBER: builtins.int + TYPE_FIELD_NUMBER: builtins.int + FIELD_MAPPING_FIELD_NUMBER: builtins.int + TIMESTAMP_FIELD_FIELD_NUMBER: builtins.int + DATE_PARTITION_COLUMN_FIELD_NUMBER: builtins.int + CREATED_TIMESTAMP_COLUMN_FIELD_NUMBER: builtins.int + DATA_SOURCE_CLASS_TYPE_FIELD_NUMBER: builtins.int + BATCH_SOURCE_FIELD_NUMBER: builtins.int + META_FIELD_NUMBER: builtins.int + FILE_OPTIONS_FIELD_NUMBER: builtins.int + BIGQUERY_OPTIONS_FIELD_NUMBER: builtins.int + KAFKA_OPTIONS_FIELD_NUMBER: builtins.int + KINESIS_OPTIONS_FIELD_NUMBER: builtins.int + REDSHIFT_OPTIONS_FIELD_NUMBER: builtins.int + REQUEST_DATA_OPTIONS_FIELD_NUMBER: builtins.int + CUSTOM_OPTIONS_FIELD_NUMBER: builtins.int + SNOWFLAKE_OPTIONS_FIELD_NUMBER: builtins.int + PUSH_OPTIONS_FIELD_NUMBER: builtins.int + SPARK_OPTIONS_FIELD_NUMBER: builtins.int + TRINO_OPTIONS_FIELD_NUMBER: builtins.int + ATHENA_OPTIONS_FIELD_NUMBER: builtins.int + name: typing.Text = ... + """Unique name of data source within the project""" + + project: typing.Text = ... + """Name of Feast project that this data source belongs to.""" + + description: typing.Text = ... + @property + def tags(self) -> google.protobuf.internal.containers.ScalarMap[typing.Text, typing.Text]: ... + owner: typing.Text = ... + type: global___DataSource.SourceType.ValueType = ... + @property + def field_mapping(self) -> google.protobuf.internal.containers.ScalarMap[typing.Text, typing.Text]: + """Defines mapping between fields in the sourced data + and fields in parent FeatureTable. + """ + pass + timestamp_field: typing.Text = ... + """Must specify event timestamp column name""" + + date_partition_column: typing.Text = ... + """(Optional) Specify partition column + useful for file sources + """ + + created_timestamp_column: typing.Text = ... + """Must specify creation timestamp column name""" + + data_source_class_type: typing.Text = ... + """This is an internal field that is represents the python class for the data source object a proto object represents. + This should be set by feast, and not by users. + The field is used primarily by custom data sources and is mandatory for them to set. Feast may set it for + first party sources as well. + """ + + @property + def batch_source(self) -> global___DataSource: + """Optional batch source for streaming sources for historical features and materialization.""" + pass + @property + def meta(self) -> global___DataSource.SourceMeta: ... + @property + def file_options(self) -> global___DataSource.FileOptions: ... + @property + def bigquery_options(self) -> global___DataSource.BigQueryOptions: ... + @property + def kafka_options(self) -> global___DataSource.KafkaOptions: ... + @property + def kinesis_options(self) -> global___DataSource.KinesisOptions: ... + @property + def redshift_options(self) -> global___DataSource.RedshiftOptions: ... + @property + def request_data_options(self) -> global___DataSource.RequestDataOptions: ... + @property + def custom_options(self) -> global___DataSource.CustomSourceOptions: ... + @property + def snowflake_options(self) -> global___DataSource.SnowflakeOptions: ... + @property + def push_options(self) -> global___DataSource.PushOptions: ... + @property + def spark_options(self) -> global___DataSource.SparkOptions: ... + @property + def trino_options(self) -> global___DataSource.TrinoOptions: ... + @property + def athena_options(self) -> global___DataSource.AthenaOptions: ... + def __init__(self, + *, + name : typing.Text = ..., + project : typing.Text = ..., + description : typing.Text = ..., + tags : typing.Optional[typing.Mapping[typing.Text, typing.Text]] = ..., + owner : typing.Text = ..., + type : global___DataSource.SourceType.ValueType = ..., + field_mapping : typing.Optional[typing.Mapping[typing.Text, typing.Text]] = ..., + timestamp_field : typing.Text = ..., + date_partition_column : typing.Text = ..., + created_timestamp_column : typing.Text = ..., + data_source_class_type : typing.Text = ..., + batch_source : typing.Optional[global___DataSource] = ..., + meta : typing.Optional[global___DataSource.SourceMeta] = ..., + file_options : typing.Optional[global___DataSource.FileOptions] = ..., + bigquery_options : typing.Optional[global___DataSource.BigQueryOptions] = ..., + kafka_options : typing.Optional[global___DataSource.KafkaOptions] = ..., + kinesis_options : typing.Optional[global___DataSource.KinesisOptions] = ..., + redshift_options : typing.Optional[global___DataSource.RedshiftOptions] = ..., + request_data_options : typing.Optional[global___DataSource.RequestDataOptions] = ..., + custom_options : typing.Optional[global___DataSource.CustomSourceOptions] = ..., + snowflake_options : typing.Optional[global___DataSource.SnowflakeOptions] = ..., + push_options : typing.Optional[global___DataSource.PushOptions] = ..., + spark_options : typing.Optional[global___DataSource.SparkOptions] = ..., + trino_options : typing.Optional[global___DataSource.TrinoOptions] = ..., + athena_options : typing.Optional[global___DataSource.AthenaOptions] = ..., + ) -> None: ... + def HasField(self, field_name: typing_extensions.Literal["athena_options",b"athena_options","batch_source",b"batch_source","bigquery_options",b"bigquery_options","custom_options",b"custom_options","file_options",b"file_options","kafka_options",b"kafka_options","kinesis_options",b"kinesis_options","meta",b"meta","options",b"options","push_options",b"push_options","redshift_options",b"redshift_options","request_data_options",b"request_data_options","snowflake_options",b"snowflake_options","spark_options",b"spark_options","trino_options",b"trino_options"]) -> builtins.bool: ... + def ClearField(self, field_name: typing_extensions.Literal["athena_options",b"athena_options","batch_source",b"batch_source","bigquery_options",b"bigquery_options","created_timestamp_column",b"created_timestamp_column","custom_options",b"custom_options","data_source_class_type",b"data_source_class_type","date_partition_column",b"date_partition_column","description",b"description","field_mapping",b"field_mapping","file_options",b"file_options","kafka_options",b"kafka_options","kinesis_options",b"kinesis_options","meta",b"meta","name",b"name","options",b"options","owner",b"owner","project",b"project","push_options",b"push_options","redshift_options",b"redshift_options","request_data_options",b"request_data_options","snowflake_options",b"snowflake_options","spark_options",b"spark_options","tags",b"tags","timestamp_field",b"timestamp_field","trino_options",b"trino_options","type",b"type"]) -> None: ... + def WhichOneof(self, oneof_group: typing_extensions.Literal["options",b"options"]) -> typing.Optional[typing_extensions.Literal["file_options","bigquery_options","kafka_options","kinesis_options","redshift_options","request_data_options","custom_options","snowflake_options","push_options","spark_options","trino_options","athena_options"]]: ... +global___DataSource = DataSource diff --git a/sdk/python/feast/protos/feast/core/DataSource_pb2_grpc.py b/sdk/python/feast/protos/feast/core/DataSource_pb2_grpc.py new file mode 100644 index 0000000000..2daafffebf --- /dev/null +++ b/sdk/python/feast/protos/feast/core/DataSource_pb2_grpc.py @@ -0,0 +1,4 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +"""Client and server classes corresponding to protobuf-defined services.""" +import grpc + diff --git a/sdk/python/feast/protos/feast/core/DatastoreTable_pb2.py b/sdk/python/feast/protos/feast/core/DatastoreTable_pb2.py new file mode 100644 index 0000000000..bf5fa875cd --- /dev/null +++ b/sdk/python/feast/protos/feast/core/DatastoreTable_pb2.py @@ -0,0 +1,28 @@ +# -*- coding: utf-8 -*- +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: feast/core/DatastoreTable.proto +"""Generated protocol buffer code.""" +from google.protobuf import descriptor as _descriptor +from google.protobuf import descriptor_pool as _descriptor_pool +from google.protobuf import symbol_database as _symbol_database +from google.protobuf.internal import builder as _builder +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +from google.protobuf import wrappers_pb2 as google_dot_protobuf_dot_wrappers__pb2 + + +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1f\x66\x65\x61st/core/DatastoreTable.proto\x12\nfeast.core\x1a\x1egoogle/protobuf/wrappers.proto\"\x92\x01\n\x0e\x44\x61tastoreTable\x12\x0f\n\x07project\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x30\n\nproject_id\x18\x03 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12/\n\tnamespace\x18\x04 \x01(\x0b\x32\x1c.google.protobuf.StringValueBX\n\x10\x66\x65\x61st.proto.coreB\x13\x44\x61tastoreTableProtoZ/github.com/feast-dev/feast/go/protos/feast/coreb\x06proto3') + +_globals = globals() +_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) +_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'feast.core.DatastoreTable_pb2', _globals) +if _descriptor._USE_C_DESCRIPTORS == False: + + DESCRIPTOR._options = None + DESCRIPTOR._serialized_options = b'\n\020feast.proto.coreB\023DatastoreTableProtoZ/github.com/feast-dev/feast/go/protos/feast/core' + _globals['_DATASTORETABLE']._serialized_start=80 + _globals['_DATASTORETABLE']._serialized_end=226 +# @@protoc_insertion_point(module_scope) diff --git a/sdk/python/feast/protos/feast/core/DatastoreTable_pb2.pyi b/sdk/python/feast/protos/feast/core/DatastoreTable_pb2.pyi new file mode 100644 index 0000000000..6ecb6ad156 --- /dev/null +++ b/sdk/python/feast/protos/feast/core/DatastoreTable_pb2.pyi @@ -0,0 +1,44 @@ +""" +@generated by mypy-protobuf. Do not edit manually! +isort:skip_file +""" +import builtins +import google.protobuf.descriptor +import google.protobuf.message +import google.protobuf.wrappers_pb2 +import typing +import typing_extensions + +DESCRIPTOR: google.protobuf.descriptor.FileDescriptor = ... + +class DatastoreTable(google.protobuf.message.Message): + """Represents a Datastore table""" + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + PROJECT_FIELD_NUMBER: builtins.int + NAME_FIELD_NUMBER: builtins.int + PROJECT_ID_FIELD_NUMBER: builtins.int + NAMESPACE_FIELD_NUMBER: builtins.int + project: typing.Text = ... + """Feast project of the table""" + + name: typing.Text = ... + """Name of the table""" + + @property + def project_id(self) -> google.protobuf.wrappers_pb2.StringValue: + """GCP project id""" + pass + @property + def namespace(self) -> google.protobuf.wrappers_pb2.StringValue: + """Datastore namespace""" + pass + def __init__(self, + *, + project : typing.Text = ..., + name : typing.Text = ..., + project_id : typing.Optional[google.protobuf.wrappers_pb2.StringValue] = ..., + namespace : typing.Optional[google.protobuf.wrappers_pb2.StringValue] = ..., + ) -> None: ... + def HasField(self, field_name: typing_extensions.Literal["namespace",b"namespace","project_id",b"project_id"]) -> builtins.bool: ... + def ClearField(self, field_name: typing_extensions.Literal["name",b"name","namespace",b"namespace","project",b"project","project_id",b"project_id"]) -> None: ... +global___DatastoreTable = DatastoreTable diff --git a/sdk/python/feast/protos/feast/core/DatastoreTable_pb2_grpc.py b/sdk/python/feast/protos/feast/core/DatastoreTable_pb2_grpc.py new file mode 100644 index 0000000000..2daafffebf --- /dev/null +++ b/sdk/python/feast/protos/feast/core/DatastoreTable_pb2_grpc.py @@ -0,0 +1,4 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +"""Client and server classes corresponding to protobuf-defined services.""" +import grpc + diff --git a/sdk/python/feast/protos/feast/core/DynamoDBTable_pb2.py b/sdk/python/feast/protos/feast/core/DynamoDBTable_pb2.py new file mode 100644 index 0000000000..2d12e536c0 --- /dev/null +++ b/sdk/python/feast/protos/feast/core/DynamoDBTable_pb2.py @@ -0,0 +1,27 @@ +# -*- coding: utf-8 -*- +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: feast/core/DynamoDBTable.proto +"""Generated protocol buffer code.""" +from google.protobuf import descriptor as _descriptor +from google.protobuf import descriptor_pool as _descriptor_pool +from google.protobuf import symbol_database as _symbol_database +from google.protobuf.internal import builder as _builder +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + + + +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1e\x66\x65\x61st/core/DynamoDBTable.proto\x12\nfeast.core\"-\n\rDynamoDBTable\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0e\n\x06region\x18\x02 \x01(\tBW\n\x10\x66\x65\x61st.proto.coreB\x12\x44ynamoDBTableProtoZ/github.com/feast-dev/feast/go/protos/feast/coreb\x06proto3') + +_globals = globals() +_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) +_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'feast.core.DynamoDBTable_pb2', _globals) +if _descriptor._USE_C_DESCRIPTORS == False: + + DESCRIPTOR._options = None + DESCRIPTOR._serialized_options = b'\n\020feast.proto.coreB\022DynamoDBTableProtoZ/github.com/feast-dev/feast/go/protos/feast/core' + _globals['_DYNAMODBTABLE']._serialized_start=46 + _globals['_DYNAMODBTABLE']._serialized_end=91 +# @@protoc_insertion_point(module_scope) diff --git a/sdk/python/feast/protos/feast/core/DynamoDBTable_pb2.pyi b/sdk/python/feast/protos/feast/core/DynamoDBTable_pb2.pyi new file mode 100644 index 0000000000..27ed412aa9 --- /dev/null +++ b/sdk/python/feast/protos/feast/core/DynamoDBTable_pb2.pyi @@ -0,0 +1,30 @@ +""" +@generated by mypy-protobuf. Do not edit manually! +isort:skip_file +""" +import builtins +import google.protobuf.descriptor +import google.protobuf.message +import typing +import typing_extensions + +DESCRIPTOR: google.protobuf.descriptor.FileDescriptor = ... + +class DynamoDBTable(google.protobuf.message.Message): + """Represents a DynamoDB table""" + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + NAME_FIELD_NUMBER: builtins.int + REGION_FIELD_NUMBER: builtins.int + name: typing.Text = ... + """Name of the table""" + + region: typing.Text = ... + """Region of the table""" + + def __init__(self, + *, + name : typing.Text = ..., + region : typing.Text = ..., + ) -> None: ... + def ClearField(self, field_name: typing_extensions.Literal["name",b"name","region",b"region"]) -> None: ... +global___DynamoDBTable = DynamoDBTable diff --git a/sdk/python/feast/protos/feast/core/DynamoDBTable_pb2_grpc.py b/sdk/python/feast/protos/feast/core/DynamoDBTable_pb2_grpc.py new file mode 100644 index 0000000000..2daafffebf --- /dev/null +++ b/sdk/python/feast/protos/feast/core/DynamoDBTable_pb2_grpc.py @@ -0,0 +1,4 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +"""Client and server classes corresponding to protobuf-defined services.""" +import grpc + diff --git a/sdk/python/feast/protos/feast/core/Entity_pb2.py b/sdk/python/feast/protos/feast/core/Entity_pb2.py new file mode 100644 index 0000000000..b0997ff7cf --- /dev/null +++ b/sdk/python/feast/protos/feast/core/Entity_pb2.py @@ -0,0 +1,37 @@ +# -*- coding: utf-8 -*- +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: feast/core/Entity.proto +"""Generated protocol buffer code.""" +from google.protobuf import descriptor as _descriptor +from google.protobuf import descriptor_pool as _descriptor_pool +from google.protobuf import symbol_database as _symbol_database +from google.protobuf.internal import builder as _builder +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +from feast.protos.feast.types import Value_pb2 as feast_dot_types_dot_Value__pb2 +from google.protobuf import timestamp_pb2 as google_dot_protobuf_dot_timestamp__pb2 + + +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x17\x66\x65\x61st/core/Entity.proto\x12\nfeast.core\x1a\x17\x66\x65\x61st/types/Value.proto\x1a\x1fgoogle/protobuf/timestamp.proto\"V\n\x06\x45ntity\x12&\n\x04spec\x18\x01 \x01(\x0b\x32\x18.feast.core.EntitySpecV2\x12$\n\x04meta\x18\x02 \x01(\x0b\x32\x16.feast.core.EntityMeta\"\xf3\x01\n\x0c\x45ntitySpecV2\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0f\n\x07project\x18\t \x01(\t\x12/\n\nvalue_type\x18\x02 \x01(\x0e\x32\x1b.feast.types.ValueType.Enum\x12\x13\n\x0b\x64\x65scription\x18\x03 \x01(\t\x12\x10\n\x08join_key\x18\x04 \x01(\t\x12\x30\n\x04tags\x18\x08 \x03(\x0b\x32\".feast.core.EntitySpecV2.TagsEntry\x12\r\n\x05owner\x18\n \x01(\t\x1a+\n\tTagsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\x7f\n\nEntityMeta\x12\x35\n\x11\x63reated_timestamp\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12:\n\x16last_updated_timestamp\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.TimestampBP\n\x10\x66\x65\x61st.proto.coreB\x0b\x45ntityProtoZ/github.com/feast-dev/feast/go/protos/feast/coreb\x06proto3') + +_globals = globals() +_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) +_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'feast.core.Entity_pb2', _globals) +if _descriptor._USE_C_DESCRIPTORS == False: + + DESCRIPTOR._options = None + DESCRIPTOR._serialized_options = b'\n\020feast.proto.coreB\013EntityProtoZ/github.com/feast-dev/feast/go/protos/feast/core' + _ENTITYSPECV2_TAGSENTRY._options = None + _ENTITYSPECV2_TAGSENTRY._serialized_options = b'8\001' + _globals['_ENTITY']._serialized_start=97 + _globals['_ENTITY']._serialized_end=183 + _globals['_ENTITYSPECV2']._serialized_start=186 + _globals['_ENTITYSPECV2']._serialized_end=429 + _globals['_ENTITYSPECV2_TAGSENTRY']._serialized_start=386 + _globals['_ENTITYSPECV2_TAGSENTRY']._serialized_end=429 + _globals['_ENTITYMETA']._serialized_start=431 + _globals['_ENTITYMETA']._serialized_end=558 +# @@protoc_insertion_point(module_scope) diff --git a/sdk/python/feast/protos/feast/core/Entity_pb2.pyi b/sdk/python/feast/protos/feast/core/Entity_pb2.pyi new file mode 100644 index 0000000000..83417e4d92 --- /dev/null +++ b/sdk/python/feast/protos/feast/core/Entity_pb2.pyi @@ -0,0 +1,109 @@ +""" +@generated by mypy-protobuf. Do not edit manually! +isort:skip_file +""" +import builtins +import feast.types.Value_pb2 +import google.protobuf.descriptor +import google.protobuf.internal.containers +import google.protobuf.message +import google.protobuf.timestamp_pb2 +import typing +import typing_extensions + +DESCRIPTOR: google.protobuf.descriptor.FileDescriptor = ... + +class Entity(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + SPEC_FIELD_NUMBER: builtins.int + META_FIELD_NUMBER: builtins.int + @property + def spec(self) -> global___EntitySpecV2: + """User-specified specifications of this entity.""" + pass + @property + def meta(self) -> global___EntityMeta: + """System-populated metadata for this entity.""" + pass + def __init__(self, + *, + spec : typing.Optional[global___EntitySpecV2] = ..., + meta : typing.Optional[global___EntityMeta] = ..., + ) -> None: ... + def HasField(self, field_name: typing_extensions.Literal["meta",b"meta","spec",b"spec"]) -> builtins.bool: ... + def ClearField(self, field_name: typing_extensions.Literal["meta",b"meta","spec",b"spec"]) -> None: ... +global___Entity = Entity + +class EntitySpecV2(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + class TagsEntry(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + KEY_FIELD_NUMBER: builtins.int + VALUE_FIELD_NUMBER: builtins.int + key: typing.Text = ... + value: typing.Text = ... + def __init__(self, + *, + key : typing.Text = ..., + value : typing.Text = ..., + ) -> None: ... + def ClearField(self, field_name: typing_extensions.Literal["key",b"key","value",b"value"]) -> None: ... + + NAME_FIELD_NUMBER: builtins.int + PROJECT_FIELD_NUMBER: builtins.int + VALUE_TYPE_FIELD_NUMBER: builtins.int + DESCRIPTION_FIELD_NUMBER: builtins.int + JOIN_KEY_FIELD_NUMBER: builtins.int + TAGS_FIELD_NUMBER: builtins.int + OWNER_FIELD_NUMBER: builtins.int + name: typing.Text = ... + """Name of the entity.""" + + project: typing.Text = ... + """Name of Feast project that this feature table belongs to.""" + + value_type: feast.types.Value_pb2.ValueType.Enum.ValueType = ... + """Type of the entity.""" + + description: typing.Text = ... + """Description of the entity.""" + + join_key: typing.Text = ... + """Join key for the entity (i.e. name of the column the entity maps to).""" + + @property + def tags(self) -> google.protobuf.internal.containers.ScalarMap[typing.Text, typing.Text]: + """User defined metadata""" + pass + owner: typing.Text = ... + """Owner of the entity.""" + + def __init__(self, + *, + name : typing.Text = ..., + project : typing.Text = ..., + value_type : feast.types.Value_pb2.ValueType.Enum.ValueType = ..., + description : typing.Text = ..., + join_key : typing.Text = ..., + tags : typing.Optional[typing.Mapping[typing.Text, typing.Text]] = ..., + owner : typing.Text = ..., + ) -> None: ... + def ClearField(self, field_name: typing_extensions.Literal["description",b"description","join_key",b"join_key","name",b"name","owner",b"owner","project",b"project","tags",b"tags","value_type",b"value_type"]) -> None: ... +global___EntitySpecV2 = EntitySpecV2 + +class EntityMeta(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + CREATED_TIMESTAMP_FIELD_NUMBER: builtins.int + LAST_UPDATED_TIMESTAMP_FIELD_NUMBER: builtins.int + @property + def created_timestamp(self) -> google.protobuf.timestamp_pb2.Timestamp: ... + @property + def last_updated_timestamp(self) -> google.protobuf.timestamp_pb2.Timestamp: ... + def __init__(self, + *, + created_timestamp : typing.Optional[google.protobuf.timestamp_pb2.Timestamp] = ..., + last_updated_timestamp : typing.Optional[google.protobuf.timestamp_pb2.Timestamp] = ..., + ) -> None: ... + def HasField(self, field_name: typing_extensions.Literal["created_timestamp",b"created_timestamp","last_updated_timestamp",b"last_updated_timestamp"]) -> builtins.bool: ... + def ClearField(self, field_name: typing_extensions.Literal["created_timestamp",b"created_timestamp","last_updated_timestamp",b"last_updated_timestamp"]) -> None: ... +global___EntityMeta = EntityMeta diff --git a/sdk/python/feast/protos/feast/core/Entity_pb2_grpc.py b/sdk/python/feast/protos/feast/core/Entity_pb2_grpc.py new file mode 100644 index 0000000000..2daafffebf --- /dev/null +++ b/sdk/python/feast/protos/feast/core/Entity_pb2_grpc.py @@ -0,0 +1,4 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +"""Client and server classes corresponding to protobuf-defined services.""" +import grpc + diff --git a/sdk/python/feast/protos/feast/core/FeatureService_pb2.py b/sdk/python/feast/protos/feast/core/FeatureService_pb2.py new file mode 100644 index 0000000000..c1a34dd772 --- /dev/null +++ b/sdk/python/feast/protos/feast/core/FeatureService_pb2.py @@ -0,0 +1,55 @@ +# -*- coding: utf-8 -*- +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: feast/core/FeatureService.proto +"""Generated protocol buffer code.""" +from google.protobuf import descriptor as _descriptor +from google.protobuf import descriptor_pool as _descriptor_pool +from google.protobuf import symbol_database as _symbol_database +from google.protobuf.internal import builder as _builder +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +from google.protobuf import timestamp_pb2 as google_dot_protobuf_dot_timestamp__pb2 +from feast.protos.feast.core import FeatureViewProjection_pb2 as feast_dot_core_dot_FeatureViewProjection__pb2 + + +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1f\x66\x65\x61st/core/FeatureService.proto\x12\nfeast.core\x1a\x1fgoogle/protobuf/timestamp.proto\x1a&feast/core/FeatureViewProjection.proto\"l\n\x0e\x46\x65\x61tureService\x12,\n\x04spec\x18\x01 \x01(\x0b\x32\x1e.feast.core.FeatureServiceSpec\x12,\n\x04meta\x18\x02 \x01(\x0b\x32\x1e.feast.core.FeatureServiceMeta\"\xa4\x02\n\x12\x46\x65\x61tureServiceSpec\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0f\n\x07project\x18\x02 \x01(\t\x12\x33\n\x08\x66\x65\x61tures\x18\x03 \x03(\x0b\x32!.feast.core.FeatureViewProjection\x12\x36\n\x04tags\x18\x04 \x03(\x0b\x32(.feast.core.FeatureServiceSpec.TagsEntry\x12\x13\n\x0b\x64\x65scription\x18\x05 \x01(\t\x12\r\n\x05owner\x18\x06 \x01(\t\x12\x31\n\x0elogging_config\x18\x07 \x01(\x0b\x32\x19.feast.core.LoggingConfig\x1a+\n\tTagsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\x87\x01\n\x12\x46\x65\x61tureServiceMeta\x12\x35\n\x11\x63reated_timestamp\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12:\n\x16last_updated_timestamp\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\"\x9a\x07\n\rLoggingConfig\x12\x13\n\x0bsample_rate\x18\x01 \x01(\x02\x12\x45\n\x10\x66ile_destination\x18\x03 \x01(\x0b\x32).feast.core.LoggingConfig.FileDestinationH\x00\x12M\n\x14\x62igquery_destination\x18\x04 \x01(\x0b\x32-.feast.core.LoggingConfig.BigQueryDestinationH\x00\x12M\n\x14redshift_destination\x18\x05 \x01(\x0b\x32-.feast.core.LoggingConfig.RedshiftDestinationH\x00\x12O\n\x15snowflake_destination\x18\x06 \x01(\x0b\x32..feast.core.LoggingConfig.SnowflakeDestinationH\x00\x12I\n\x12\x63ustom_destination\x18\x07 \x01(\x0b\x32+.feast.core.LoggingConfig.CustomDestinationH\x00\x12I\n\x12\x61thena_destination\x18\x08 \x01(\x0b\x32+.feast.core.LoggingConfig.AthenaDestinationH\x00\x1aS\n\x0f\x46ileDestination\x12\x0c\n\x04path\x18\x01 \x01(\t\x12\x1c\n\x14s3_endpoint_override\x18\x02 \x01(\t\x12\x14\n\x0cpartition_by\x18\x03 \x03(\t\x1a(\n\x13\x42igQueryDestination\x12\x11\n\ttable_ref\x18\x01 \x01(\t\x1a)\n\x13RedshiftDestination\x12\x12\n\ntable_name\x18\x01 \x01(\t\x1a\'\n\x11\x41thenaDestination\x12\x12\n\ntable_name\x18\x01 \x01(\t\x1a*\n\x14SnowflakeDestination\x12\x12\n\ntable_name\x18\x01 \x01(\t\x1a\x99\x01\n\x11\x43ustomDestination\x12\x0c\n\x04kind\x18\x01 \x01(\t\x12G\n\x06\x63onfig\x18\x02 \x03(\x0b\x32\x37.feast.core.LoggingConfig.CustomDestination.ConfigEntry\x1a-\n\x0b\x43onfigEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x42\r\n\x0b\x64\x65stinationBX\n\x10\x66\x65\x61st.proto.coreB\x13\x46\x65\x61tureServiceProtoZ/github.com/feast-dev/feast/go/protos/feast/coreb\x06proto3') + +_globals = globals() +_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) +_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'feast.core.FeatureService_pb2', _globals) +if _descriptor._USE_C_DESCRIPTORS == False: + + DESCRIPTOR._options = None + DESCRIPTOR._serialized_options = b'\n\020feast.proto.coreB\023FeatureServiceProtoZ/github.com/feast-dev/feast/go/protos/feast/core' + _FEATURESERVICESPEC_TAGSENTRY._options = None + _FEATURESERVICESPEC_TAGSENTRY._serialized_options = b'8\001' + _LOGGINGCONFIG_CUSTOMDESTINATION_CONFIGENTRY._options = None + _LOGGINGCONFIG_CUSTOMDESTINATION_CONFIGENTRY._serialized_options = b'8\001' + _globals['_FEATURESERVICE']._serialized_start=120 + _globals['_FEATURESERVICE']._serialized_end=228 + _globals['_FEATURESERVICESPEC']._serialized_start=231 + _globals['_FEATURESERVICESPEC']._serialized_end=523 + _globals['_FEATURESERVICESPEC_TAGSENTRY']._serialized_start=480 + _globals['_FEATURESERVICESPEC_TAGSENTRY']._serialized_end=523 + _globals['_FEATURESERVICEMETA']._serialized_start=526 + _globals['_FEATURESERVICEMETA']._serialized_end=661 + _globals['_LOGGINGCONFIG']._serialized_start=664 + _globals['_LOGGINGCONFIG']._serialized_end=1586 + _globals['_LOGGINGCONFIG_FILEDESTINATION']._serialized_start=1162 + _globals['_LOGGINGCONFIG_FILEDESTINATION']._serialized_end=1245 + _globals['_LOGGINGCONFIG_BIGQUERYDESTINATION']._serialized_start=1247 + _globals['_LOGGINGCONFIG_BIGQUERYDESTINATION']._serialized_end=1287 + _globals['_LOGGINGCONFIG_REDSHIFTDESTINATION']._serialized_start=1289 + _globals['_LOGGINGCONFIG_REDSHIFTDESTINATION']._serialized_end=1330 + _globals['_LOGGINGCONFIG_ATHENADESTINATION']._serialized_start=1332 + _globals['_LOGGINGCONFIG_ATHENADESTINATION']._serialized_end=1371 + _globals['_LOGGINGCONFIG_SNOWFLAKEDESTINATION']._serialized_start=1373 + _globals['_LOGGINGCONFIG_SNOWFLAKEDESTINATION']._serialized_end=1415 + _globals['_LOGGINGCONFIG_CUSTOMDESTINATION']._serialized_start=1418 + _globals['_LOGGINGCONFIG_CUSTOMDESTINATION']._serialized_end=1571 + _globals['_LOGGINGCONFIG_CUSTOMDESTINATION_CONFIGENTRY']._serialized_start=1526 + _globals['_LOGGINGCONFIG_CUSTOMDESTINATION_CONFIGENTRY']._serialized_end=1571 +# @@protoc_insertion_point(module_scope) diff --git a/sdk/python/feast/protos/feast/core/FeatureService_pb2.pyi b/sdk/python/feast/protos/feast/core/FeatureService_pb2.pyi new file mode 100644 index 0000000000..fc506145ce --- /dev/null +++ b/sdk/python/feast/protos/feast/core/FeatureService_pb2.pyi @@ -0,0 +1,249 @@ +""" +@generated by mypy-protobuf. Do not edit manually! +isort:skip_file +""" +import builtins +import feast.core.FeatureViewProjection_pb2 +import google.protobuf.descriptor +import google.protobuf.internal.containers +import google.protobuf.message +import google.protobuf.timestamp_pb2 +import typing +import typing_extensions + +DESCRIPTOR: google.protobuf.descriptor.FileDescriptor = ... + +class FeatureService(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + SPEC_FIELD_NUMBER: builtins.int + META_FIELD_NUMBER: builtins.int + @property + def spec(self) -> global___FeatureServiceSpec: + """User-specified specifications of this feature service.""" + pass + @property + def meta(self) -> global___FeatureServiceMeta: + """System-populated metadata for this feature service.""" + pass + def __init__(self, + *, + spec : typing.Optional[global___FeatureServiceSpec] = ..., + meta : typing.Optional[global___FeatureServiceMeta] = ..., + ) -> None: ... + def HasField(self, field_name: typing_extensions.Literal["meta",b"meta","spec",b"spec"]) -> builtins.bool: ... + def ClearField(self, field_name: typing_extensions.Literal["meta",b"meta","spec",b"spec"]) -> None: ... +global___FeatureService = FeatureService + +class FeatureServiceSpec(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + class TagsEntry(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + KEY_FIELD_NUMBER: builtins.int + VALUE_FIELD_NUMBER: builtins.int + key: typing.Text = ... + value: typing.Text = ... + def __init__(self, + *, + key : typing.Text = ..., + value : typing.Text = ..., + ) -> None: ... + def ClearField(self, field_name: typing_extensions.Literal["key",b"key","value",b"value"]) -> None: ... + + NAME_FIELD_NUMBER: builtins.int + PROJECT_FIELD_NUMBER: builtins.int + FEATURES_FIELD_NUMBER: builtins.int + TAGS_FIELD_NUMBER: builtins.int + DESCRIPTION_FIELD_NUMBER: builtins.int + OWNER_FIELD_NUMBER: builtins.int + LOGGING_CONFIG_FIELD_NUMBER: builtins.int + name: typing.Text = ... + """Name of the Feature Service. Must be unique. Not updated.""" + + project: typing.Text = ... + """Name of Feast project that this Feature Service belongs to.""" + + @property + def features(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[feast.core.FeatureViewProjection_pb2.FeatureViewProjection]: + """Represents a projection that's to be applied on top of the FeatureView. + Contains data such as the features to use from a FeatureView. + """ + pass + @property + def tags(self) -> google.protobuf.internal.containers.ScalarMap[typing.Text, typing.Text]: + """User defined metadata""" + pass + description: typing.Text = ... + """Description of the feature service.""" + + owner: typing.Text = ... + """Owner of the feature service.""" + + @property + def logging_config(self) -> global___LoggingConfig: + """(optional) if provided logging will be enabled for this feature service.""" + pass + def __init__(self, + *, + name : typing.Text = ..., + project : typing.Text = ..., + features : typing.Optional[typing.Iterable[feast.core.FeatureViewProjection_pb2.FeatureViewProjection]] = ..., + tags : typing.Optional[typing.Mapping[typing.Text, typing.Text]] = ..., + description : typing.Text = ..., + owner : typing.Text = ..., + logging_config : typing.Optional[global___LoggingConfig] = ..., + ) -> None: ... + def HasField(self, field_name: typing_extensions.Literal["logging_config",b"logging_config"]) -> builtins.bool: ... + def ClearField(self, field_name: typing_extensions.Literal["description",b"description","features",b"features","logging_config",b"logging_config","name",b"name","owner",b"owner","project",b"project","tags",b"tags"]) -> None: ... +global___FeatureServiceSpec = FeatureServiceSpec + +class FeatureServiceMeta(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + CREATED_TIMESTAMP_FIELD_NUMBER: builtins.int + LAST_UPDATED_TIMESTAMP_FIELD_NUMBER: builtins.int + @property + def created_timestamp(self) -> google.protobuf.timestamp_pb2.Timestamp: + """Time where this Feature Service is created""" + pass + @property + def last_updated_timestamp(self) -> google.protobuf.timestamp_pb2.Timestamp: + """Time where this Feature Service is last updated""" + pass + def __init__(self, + *, + created_timestamp : typing.Optional[google.protobuf.timestamp_pb2.Timestamp] = ..., + last_updated_timestamp : typing.Optional[google.protobuf.timestamp_pb2.Timestamp] = ..., + ) -> None: ... + def HasField(self, field_name: typing_extensions.Literal["created_timestamp",b"created_timestamp","last_updated_timestamp",b"last_updated_timestamp"]) -> builtins.bool: ... + def ClearField(self, field_name: typing_extensions.Literal["created_timestamp",b"created_timestamp","last_updated_timestamp",b"last_updated_timestamp"]) -> None: ... +global___FeatureServiceMeta = FeatureServiceMeta + +class LoggingConfig(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + class FileDestination(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + PATH_FIELD_NUMBER: builtins.int + S3_ENDPOINT_OVERRIDE_FIELD_NUMBER: builtins.int + PARTITION_BY_FIELD_NUMBER: builtins.int + path: typing.Text = ... + s3_endpoint_override: typing.Text = ... + @property + def partition_by(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[typing.Text]: + """column names to use for partitioning""" + pass + def __init__(self, + *, + path : typing.Text = ..., + s3_endpoint_override : typing.Text = ..., + partition_by : typing.Optional[typing.Iterable[typing.Text]] = ..., + ) -> None: ... + def ClearField(self, field_name: typing_extensions.Literal["partition_by",b"partition_by","path",b"path","s3_endpoint_override",b"s3_endpoint_override"]) -> None: ... + + class BigQueryDestination(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + TABLE_REF_FIELD_NUMBER: builtins.int + table_ref: typing.Text = ... + """Full table reference in the form of [project:dataset.table]""" + + def __init__(self, + *, + table_ref : typing.Text = ..., + ) -> None: ... + def ClearField(self, field_name: typing_extensions.Literal["table_ref",b"table_ref"]) -> None: ... + + class RedshiftDestination(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + TABLE_NAME_FIELD_NUMBER: builtins.int + table_name: typing.Text = ... + """Destination table name. ClusterId and database will be taken from an offline store config""" + + def __init__(self, + *, + table_name : typing.Text = ..., + ) -> None: ... + def ClearField(self, field_name: typing_extensions.Literal["table_name",b"table_name"]) -> None: ... + + class AthenaDestination(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + TABLE_NAME_FIELD_NUMBER: builtins.int + table_name: typing.Text = ... + """Destination table name. data_source and database will be taken from an offline store config""" + + def __init__(self, + *, + table_name : typing.Text = ..., + ) -> None: ... + def ClearField(self, field_name: typing_extensions.Literal["table_name",b"table_name"]) -> None: ... + + class SnowflakeDestination(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + TABLE_NAME_FIELD_NUMBER: builtins.int + table_name: typing.Text = ... + """Destination table name. Schema and database will be taken from an offline store config""" + + def __init__(self, + *, + table_name : typing.Text = ..., + ) -> None: ... + def ClearField(self, field_name: typing_extensions.Literal["table_name",b"table_name"]) -> None: ... + + class CustomDestination(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + class ConfigEntry(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + KEY_FIELD_NUMBER: builtins.int + VALUE_FIELD_NUMBER: builtins.int + key: typing.Text = ... + value: typing.Text = ... + def __init__(self, + *, + key : typing.Text = ..., + value : typing.Text = ..., + ) -> None: ... + def ClearField(self, field_name: typing_extensions.Literal["key",b"key","value",b"value"]) -> None: ... + + KIND_FIELD_NUMBER: builtins.int + CONFIG_FIELD_NUMBER: builtins.int + kind: typing.Text = ... + @property + def config(self) -> google.protobuf.internal.containers.ScalarMap[typing.Text, typing.Text]: ... + def __init__(self, + *, + kind : typing.Text = ..., + config : typing.Optional[typing.Mapping[typing.Text, typing.Text]] = ..., + ) -> None: ... + def ClearField(self, field_name: typing_extensions.Literal["config",b"config","kind",b"kind"]) -> None: ... + + SAMPLE_RATE_FIELD_NUMBER: builtins.int + FILE_DESTINATION_FIELD_NUMBER: builtins.int + BIGQUERY_DESTINATION_FIELD_NUMBER: builtins.int + REDSHIFT_DESTINATION_FIELD_NUMBER: builtins.int + SNOWFLAKE_DESTINATION_FIELD_NUMBER: builtins.int + CUSTOM_DESTINATION_FIELD_NUMBER: builtins.int + ATHENA_DESTINATION_FIELD_NUMBER: builtins.int + sample_rate: builtins.float = ... + @property + def file_destination(self) -> global___LoggingConfig.FileDestination: ... + @property + def bigquery_destination(self) -> global___LoggingConfig.BigQueryDestination: ... + @property + def redshift_destination(self) -> global___LoggingConfig.RedshiftDestination: ... + @property + def snowflake_destination(self) -> global___LoggingConfig.SnowflakeDestination: ... + @property + def custom_destination(self) -> global___LoggingConfig.CustomDestination: ... + @property + def athena_destination(self) -> global___LoggingConfig.AthenaDestination: ... + def __init__(self, + *, + sample_rate : builtins.float = ..., + file_destination : typing.Optional[global___LoggingConfig.FileDestination] = ..., + bigquery_destination : typing.Optional[global___LoggingConfig.BigQueryDestination] = ..., + redshift_destination : typing.Optional[global___LoggingConfig.RedshiftDestination] = ..., + snowflake_destination : typing.Optional[global___LoggingConfig.SnowflakeDestination] = ..., + custom_destination : typing.Optional[global___LoggingConfig.CustomDestination] = ..., + athena_destination : typing.Optional[global___LoggingConfig.AthenaDestination] = ..., + ) -> None: ... + def HasField(self, field_name: typing_extensions.Literal["athena_destination",b"athena_destination","bigquery_destination",b"bigquery_destination","custom_destination",b"custom_destination","destination",b"destination","file_destination",b"file_destination","redshift_destination",b"redshift_destination","snowflake_destination",b"snowflake_destination"]) -> builtins.bool: ... + def ClearField(self, field_name: typing_extensions.Literal["athena_destination",b"athena_destination","bigquery_destination",b"bigquery_destination","custom_destination",b"custom_destination","destination",b"destination","file_destination",b"file_destination","redshift_destination",b"redshift_destination","sample_rate",b"sample_rate","snowflake_destination",b"snowflake_destination"]) -> None: ... + def WhichOneof(self, oneof_group: typing_extensions.Literal["destination",b"destination"]) -> typing.Optional[typing_extensions.Literal["file_destination","bigquery_destination","redshift_destination","snowflake_destination","custom_destination","athena_destination"]]: ... +global___LoggingConfig = LoggingConfig diff --git a/sdk/python/feast/protos/feast/core/FeatureService_pb2_grpc.py b/sdk/python/feast/protos/feast/core/FeatureService_pb2_grpc.py new file mode 100644 index 0000000000..2daafffebf --- /dev/null +++ b/sdk/python/feast/protos/feast/core/FeatureService_pb2_grpc.py @@ -0,0 +1,4 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +"""Client and server classes corresponding to protobuf-defined services.""" +import grpc + diff --git a/sdk/python/feast/protos/feast/core/FeatureTable_pb2.py b/sdk/python/feast/protos/feast/core/FeatureTable_pb2.py new file mode 100644 index 0000000000..c1539d767b --- /dev/null +++ b/sdk/python/feast/protos/feast/core/FeatureTable_pb2.py @@ -0,0 +1,39 @@ +# -*- coding: utf-8 -*- +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: feast/core/FeatureTable.proto +"""Generated protocol buffer code.""" +from google.protobuf import descriptor as _descriptor +from google.protobuf import descriptor_pool as _descriptor_pool +from google.protobuf import symbol_database as _symbol_database +from google.protobuf.internal import builder as _builder +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +from google.protobuf import duration_pb2 as google_dot_protobuf_dot_duration__pb2 +from google.protobuf import timestamp_pb2 as google_dot_protobuf_dot_timestamp__pb2 +from feast.protos.feast.core import DataSource_pb2 as feast_dot_core_dot_DataSource__pb2 +from feast.protos.feast.core import Feature_pb2 as feast_dot_core_dot_Feature__pb2 + + +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1d\x66\x65\x61st/core/FeatureTable.proto\x12\nfeast.core\x1a\x1egoogle/protobuf/duration.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x1b\x66\x65\x61st/core/DataSource.proto\x1a\x18\x66\x65\x61st/core/Feature.proto\"f\n\x0c\x46\x65\x61tureTable\x12*\n\x04spec\x18\x01 \x01(\x0b\x32\x1c.feast.core.FeatureTableSpec\x12*\n\x04meta\x18\x02 \x01(\x0b\x32\x1c.feast.core.FeatureTableMeta\"\xe2\x02\n\x10\x46\x65\x61tureTableSpec\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0f\n\x07project\x18\t \x01(\t\x12\x10\n\x08\x65ntities\x18\x03 \x03(\t\x12+\n\x08\x66\x65\x61tures\x18\x04 \x03(\x0b\x32\x19.feast.core.FeatureSpecV2\x12\x38\n\x06labels\x18\x05 \x03(\x0b\x32(.feast.core.FeatureTableSpec.LabelsEntry\x12*\n\x07max_age\x18\x06 \x01(\x0b\x32\x19.google.protobuf.Duration\x12,\n\x0c\x62\x61tch_source\x18\x07 \x01(\x0b\x32\x16.feast.core.DataSource\x12-\n\rstream_source\x18\x08 \x01(\x0b\x32\x16.feast.core.DataSource\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\xa5\x01\n\x10\x46\x65\x61tureTableMeta\x12\x35\n\x11\x63reated_timestamp\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12:\n\x16last_updated_timestamp\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x10\n\x08revision\x18\x03 \x01(\x03\x12\x0c\n\x04hash\x18\x04 \x01(\tBV\n\x10\x66\x65\x61st.proto.coreB\x11\x46\x65\x61tureTableProtoZ/github.com/feast-dev/feast/go/protos/feast/coreb\x06proto3') + +_globals = globals() +_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) +_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'feast.core.FeatureTable_pb2', _globals) +if _descriptor._USE_C_DESCRIPTORS == False: + + DESCRIPTOR._options = None + DESCRIPTOR._serialized_options = b'\n\020feast.proto.coreB\021FeatureTableProtoZ/github.com/feast-dev/feast/go/protos/feast/core' + _FEATURETABLESPEC_LABELSENTRY._options = None + _FEATURETABLESPEC_LABELSENTRY._serialized_options = b'8\001' + _globals['_FEATURETABLE']._serialized_start=165 + _globals['_FEATURETABLE']._serialized_end=267 + _globals['_FEATURETABLESPEC']._serialized_start=270 + _globals['_FEATURETABLESPEC']._serialized_end=624 + _globals['_FEATURETABLESPEC_LABELSENTRY']._serialized_start=579 + _globals['_FEATURETABLESPEC_LABELSENTRY']._serialized_end=624 + _globals['_FEATURETABLEMETA']._serialized_start=627 + _globals['_FEATURETABLEMETA']._serialized_end=792 +# @@protoc_insertion_point(module_scope) diff --git a/sdk/python/feast/protos/feast/core/FeatureTable_pb2.pyi b/sdk/python/feast/protos/feast/core/FeatureTable_pb2.pyi new file mode 100644 index 0000000000..e9d07e292d --- /dev/null +++ b/sdk/python/feast/protos/feast/core/FeatureTable_pb2.pyi @@ -0,0 +1,150 @@ +""" +@generated by mypy-protobuf. Do not edit manually! +isort:skip_file +""" +import builtins +import feast.core.DataSource_pb2 +import feast.core.Feature_pb2 +import google.protobuf.descriptor +import google.protobuf.duration_pb2 +import google.protobuf.internal.containers +import google.protobuf.message +import google.protobuf.timestamp_pb2 +import typing +import typing_extensions + +DESCRIPTOR: google.protobuf.descriptor.FileDescriptor = ... + +class FeatureTable(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + SPEC_FIELD_NUMBER: builtins.int + META_FIELD_NUMBER: builtins.int + @property + def spec(self) -> global___FeatureTableSpec: + """User-specified specifications of this feature table.""" + pass + @property + def meta(self) -> global___FeatureTableMeta: + """System-populated metadata for this feature table.""" + pass + def __init__(self, + *, + spec : typing.Optional[global___FeatureTableSpec] = ..., + meta : typing.Optional[global___FeatureTableMeta] = ..., + ) -> None: ... + def HasField(self, field_name: typing_extensions.Literal["meta",b"meta","spec",b"spec"]) -> builtins.bool: ... + def ClearField(self, field_name: typing_extensions.Literal["meta",b"meta","spec",b"spec"]) -> None: ... +global___FeatureTable = FeatureTable + +class FeatureTableSpec(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + class LabelsEntry(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + KEY_FIELD_NUMBER: builtins.int + VALUE_FIELD_NUMBER: builtins.int + key: typing.Text = ... + value: typing.Text = ... + def __init__(self, + *, + key : typing.Text = ..., + value : typing.Text = ..., + ) -> None: ... + def ClearField(self, field_name: typing_extensions.Literal["key",b"key","value",b"value"]) -> None: ... + + NAME_FIELD_NUMBER: builtins.int + PROJECT_FIELD_NUMBER: builtins.int + ENTITIES_FIELD_NUMBER: builtins.int + FEATURES_FIELD_NUMBER: builtins.int + LABELS_FIELD_NUMBER: builtins.int + MAX_AGE_FIELD_NUMBER: builtins.int + BATCH_SOURCE_FIELD_NUMBER: builtins.int + STREAM_SOURCE_FIELD_NUMBER: builtins.int + name: typing.Text = ... + """Name of the feature table. Must be unique. Not updated.""" + + project: typing.Text = ... + """Name of Feast project that this feature table belongs to.""" + + @property + def entities(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[typing.Text]: + """List names of entities to associate with the Features defined in this + Feature Table. Not updatable. + """ + pass + @property + def features(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[feast.core.Feature_pb2.FeatureSpecV2]: + """List of features specifications for each feature defined with this feature table.""" + pass + @property + def labels(self) -> google.protobuf.internal.containers.ScalarMap[typing.Text, typing.Text]: + """User defined metadata""" + pass + @property + def max_age(self) -> google.protobuf.duration_pb2.Duration: + """Features in this feature table can only be retrieved from online serving + younger than max age. Age is measured as the duration of time between + the feature's event timestamp and when the feature is retrieved + Feature values outside max age will be returned as unset values and indicated to end user + """ + pass + @property + def batch_source(self) -> feast.core.DataSource_pb2.DataSource: + """Batch/Offline DataSource to source batch/offline feature data. + Only batch DataSource can be specified + (ie source type should start with 'BATCH_') + """ + pass + @property + def stream_source(self) -> feast.core.DataSource_pb2.DataSource: + """Stream/Online DataSource to source stream/online feature data. + Only stream DataSource can be specified + (ie source type should start with 'STREAM_') + """ + pass + def __init__(self, + *, + name : typing.Text = ..., + project : typing.Text = ..., + entities : typing.Optional[typing.Iterable[typing.Text]] = ..., + features : typing.Optional[typing.Iterable[feast.core.Feature_pb2.FeatureSpecV2]] = ..., + labels : typing.Optional[typing.Mapping[typing.Text, typing.Text]] = ..., + max_age : typing.Optional[google.protobuf.duration_pb2.Duration] = ..., + batch_source : typing.Optional[feast.core.DataSource_pb2.DataSource] = ..., + stream_source : typing.Optional[feast.core.DataSource_pb2.DataSource] = ..., + ) -> None: ... + def HasField(self, field_name: typing_extensions.Literal["batch_source",b"batch_source","max_age",b"max_age","stream_source",b"stream_source"]) -> builtins.bool: ... + def ClearField(self, field_name: typing_extensions.Literal["batch_source",b"batch_source","entities",b"entities","features",b"features","labels",b"labels","max_age",b"max_age","name",b"name","project",b"project","stream_source",b"stream_source"]) -> None: ... +global___FeatureTableSpec = FeatureTableSpec + +class FeatureTableMeta(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + CREATED_TIMESTAMP_FIELD_NUMBER: builtins.int + LAST_UPDATED_TIMESTAMP_FIELD_NUMBER: builtins.int + REVISION_FIELD_NUMBER: builtins.int + HASH_FIELD_NUMBER: builtins.int + @property + def created_timestamp(self) -> google.protobuf.timestamp_pb2.Timestamp: + """Time where this Feature Table is created""" + pass + @property + def last_updated_timestamp(self) -> google.protobuf.timestamp_pb2.Timestamp: + """Time where this Feature Table is last updated""" + pass + revision: builtins.int = ... + """Auto incrementing revision no. of this Feature Table""" + + hash: typing.Text = ... + """Hash entities, features, batch_source and stream_source to inform JobService if + jobs should be restarted should hash change + """ + + def __init__(self, + *, + created_timestamp : typing.Optional[google.protobuf.timestamp_pb2.Timestamp] = ..., + last_updated_timestamp : typing.Optional[google.protobuf.timestamp_pb2.Timestamp] = ..., + revision : builtins.int = ..., + hash : typing.Text = ..., + ) -> None: ... + def HasField(self, field_name: typing_extensions.Literal["created_timestamp",b"created_timestamp","last_updated_timestamp",b"last_updated_timestamp"]) -> builtins.bool: ... + def ClearField(self, field_name: typing_extensions.Literal["created_timestamp",b"created_timestamp","hash",b"hash","last_updated_timestamp",b"last_updated_timestamp","revision",b"revision"]) -> None: ... +global___FeatureTableMeta = FeatureTableMeta diff --git a/sdk/python/feast/protos/feast/core/FeatureTable_pb2_grpc.py b/sdk/python/feast/protos/feast/core/FeatureTable_pb2_grpc.py new file mode 100644 index 0000000000..2daafffebf --- /dev/null +++ b/sdk/python/feast/protos/feast/core/FeatureTable_pb2_grpc.py @@ -0,0 +1,4 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +"""Client and server classes corresponding to protobuf-defined services.""" +import grpc + diff --git a/sdk/python/feast/protos/feast/core/FeatureViewProjection_pb2.py b/sdk/python/feast/protos/feast/core/FeatureViewProjection_pb2.py new file mode 100644 index 0000000000..64a38865c9 --- /dev/null +++ b/sdk/python/feast/protos/feast/core/FeatureViewProjection_pb2.py @@ -0,0 +1,32 @@ +# -*- coding: utf-8 -*- +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: feast/core/FeatureViewProjection.proto +"""Generated protocol buffer code.""" +from google.protobuf import descriptor as _descriptor +from google.protobuf import descriptor_pool as _descriptor_pool +from google.protobuf import symbol_database as _symbol_database +from google.protobuf.internal import builder as _builder +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +from feast.protos.feast.core import Feature_pb2 as feast_dot_core_dot_Feature__pb2 + + +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n&feast/core/FeatureViewProjection.proto\x12\nfeast.core\x1a\x18\x66\x65\x61st/core/Feature.proto\"\x83\x02\n\x15\x46\x65\x61tureViewProjection\x12\x19\n\x11\x66\x65\x61ture_view_name\x18\x01 \x01(\t\x12\x1f\n\x17\x66\x65\x61ture_view_name_alias\x18\x03 \x01(\t\x12\x32\n\x0f\x66\x65\x61ture_columns\x18\x02 \x03(\x0b\x32\x19.feast.core.FeatureSpecV2\x12G\n\x0cjoin_key_map\x18\x04 \x03(\x0b\x32\x31.feast.core.FeatureViewProjection.JoinKeyMapEntry\x1a\x31\n\x0fJoinKeyMapEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x42Z\n\x10\x66\x65\x61st.proto.coreB\x15\x46\x65\x61tureReferenceProtoZ/github.com/feast-dev/feast/go/protos/feast/coreb\x06proto3') + +_globals = globals() +_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) +_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'feast.core.FeatureViewProjection_pb2', _globals) +if _descriptor._USE_C_DESCRIPTORS == False: + + DESCRIPTOR._options = None + DESCRIPTOR._serialized_options = b'\n\020feast.proto.coreB\025FeatureReferenceProtoZ/github.com/feast-dev/feast/go/protos/feast/core' + _FEATUREVIEWPROJECTION_JOINKEYMAPENTRY._options = None + _FEATUREVIEWPROJECTION_JOINKEYMAPENTRY._serialized_options = b'8\001' + _globals['_FEATUREVIEWPROJECTION']._serialized_start=81 + _globals['_FEATUREVIEWPROJECTION']._serialized_end=340 + _globals['_FEATUREVIEWPROJECTION_JOINKEYMAPENTRY']._serialized_start=291 + _globals['_FEATUREVIEWPROJECTION_JOINKEYMAPENTRY']._serialized_end=340 +# @@protoc_insertion_point(module_scope) diff --git a/sdk/python/feast/protos/feast/core/FeatureViewProjection_pb2.pyi b/sdk/python/feast/protos/feast/core/FeatureViewProjection_pb2.pyi new file mode 100644 index 0000000000..5471c3fd3a --- /dev/null +++ b/sdk/python/feast/protos/feast/core/FeatureViewProjection_pb2.pyi @@ -0,0 +1,59 @@ +""" +@generated by mypy-protobuf. Do not edit manually! +isort:skip_file +""" +import builtins +import feast.core.Feature_pb2 +import google.protobuf.descriptor +import google.protobuf.internal.containers +import google.protobuf.message +import typing +import typing_extensions + +DESCRIPTOR: google.protobuf.descriptor.FileDescriptor = ... + +class FeatureViewProjection(google.protobuf.message.Message): + """A projection to be applied on top of a FeatureView. + Contains the modifications to a FeatureView such as the features subset to use. + """ + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + class JoinKeyMapEntry(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + KEY_FIELD_NUMBER: builtins.int + VALUE_FIELD_NUMBER: builtins.int + key: typing.Text = ... + value: typing.Text = ... + def __init__(self, + *, + key : typing.Text = ..., + value : typing.Text = ..., + ) -> None: ... + def ClearField(self, field_name: typing_extensions.Literal["key",b"key","value",b"value"]) -> None: ... + + FEATURE_VIEW_NAME_FIELD_NUMBER: builtins.int + FEATURE_VIEW_NAME_ALIAS_FIELD_NUMBER: builtins.int + FEATURE_COLUMNS_FIELD_NUMBER: builtins.int + JOIN_KEY_MAP_FIELD_NUMBER: builtins.int + feature_view_name: typing.Text = ... + """The feature view name""" + + feature_view_name_alias: typing.Text = ... + """Alias for feature view name""" + + @property + def feature_columns(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[feast.core.Feature_pb2.FeatureSpecV2]: + """The features of the feature view that are a part of the feature reference.""" + pass + @property + def join_key_map(self) -> google.protobuf.internal.containers.ScalarMap[typing.Text, typing.Text]: + """Map for entity join_key overrides of feature data entity join_key to entity data join_key""" + pass + def __init__(self, + *, + feature_view_name : typing.Text = ..., + feature_view_name_alias : typing.Text = ..., + feature_columns : typing.Optional[typing.Iterable[feast.core.Feature_pb2.FeatureSpecV2]] = ..., + join_key_map : typing.Optional[typing.Mapping[typing.Text, typing.Text]] = ..., + ) -> None: ... + def ClearField(self, field_name: typing_extensions.Literal["feature_columns",b"feature_columns","feature_view_name",b"feature_view_name","feature_view_name_alias",b"feature_view_name_alias","join_key_map",b"join_key_map"]) -> None: ... +global___FeatureViewProjection = FeatureViewProjection diff --git a/sdk/python/feast/protos/feast/core/FeatureViewProjection_pb2_grpc.py b/sdk/python/feast/protos/feast/core/FeatureViewProjection_pb2_grpc.py new file mode 100644 index 0000000000..2daafffebf --- /dev/null +++ b/sdk/python/feast/protos/feast/core/FeatureViewProjection_pb2_grpc.py @@ -0,0 +1,4 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +"""Client and server classes corresponding to protobuf-defined services.""" +import grpc + diff --git a/sdk/python/feast/protos/feast/core/FeatureView_pb2.py b/sdk/python/feast/protos/feast/core/FeatureView_pb2.py new file mode 100644 index 0000000000..f665f05817 --- /dev/null +++ b/sdk/python/feast/protos/feast/core/FeatureView_pb2.py @@ -0,0 +1,41 @@ +# -*- coding: utf-8 -*- +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: feast/core/FeatureView.proto +"""Generated protocol buffer code.""" +from google.protobuf import descriptor as _descriptor +from google.protobuf import descriptor_pool as _descriptor_pool +from google.protobuf import symbol_database as _symbol_database +from google.protobuf.internal import builder as _builder +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +from google.protobuf import duration_pb2 as google_dot_protobuf_dot_duration__pb2 +from google.protobuf import timestamp_pb2 as google_dot_protobuf_dot_timestamp__pb2 +from feast.protos.feast.core import DataSource_pb2 as feast_dot_core_dot_DataSource__pb2 +from feast.protos.feast.core import Feature_pb2 as feast_dot_core_dot_Feature__pb2 + + +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1c\x66\x65\x61st/core/FeatureView.proto\x12\nfeast.core\x1a\x1egoogle/protobuf/duration.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x1b\x66\x65\x61st/core/DataSource.proto\x1a\x18\x66\x65\x61st/core/Feature.proto\"c\n\x0b\x46\x65\x61tureView\x12)\n\x04spec\x18\x01 \x01(\x0b\x32\x1b.feast.core.FeatureViewSpec\x12)\n\x04meta\x18\x02 \x01(\x0b\x32\x1b.feast.core.FeatureViewMeta\"\xbd\x03\n\x0f\x46\x65\x61tureViewSpec\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0f\n\x07project\x18\x02 \x01(\t\x12\x10\n\x08\x65ntities\x18\x03 \x03(\t\x12+\n\x08\x66\x65\x61tures\x18\x04 \x03(\x0b\x32\x19.feast.core.FeatureSpecV2\x12\x31\n\x0e\x65ntity_columns\x18\x0c \x03(\x0b\x32\x19.feast.core.FeatureSpecV2\x12\x13\n\x0b\x64\x65scription\x18\n \x01(\t\x12\x33\n\x04tags\x18\x05 \x03(\x0b\x32%.feast.core.FeatureViewSpec.TagsEntry\x12\r\n\x05owner\x18\x0b \x01(\t\x12&\n\x03ttl\x18\x06 \x01(\x0b\x32\x19.google.protobuf.Duration\x12,\n\x0c\x62\x61tch_source\x18\x07 \x01(\x0b\x32\x16.feast.core.DataSource\x12-\n\rstream_source\x18\t \x01(\x0b\x32\x16.feast.core.DataSource\x12\x0e\n\x06online\x18\x08 \x01(\x08\x1a+\n\tTagsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\xcc\x01\n\x0f\x46\x65\x61tureViewMeta\x12\x35\n\x11\x63reated_timestamp\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12:\n\x16last_updated_timestamp\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x46\n\x19materialization_intervals\x18\x03 \x03(\x0b\x32#.feast.core.MaterializationInterval\"w\n\x17MaterializationInterval\x12.\n\nstart_time\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12,\n\x08\x65nd_time\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.TimestampBU\n\x10\x66\x65\x61st.proto.coreB\x10\x46\x65\x61tureViewProtoZ/github.com/feast-dev/feast/go/protos/feast/coreb\x06proto3') + +_globals = globals() +_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) +_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'feast.core.FeatureView_pb2', _globals) +if _descriptor._USE_C_DESCRIPTORS == False: + + DESCRIPTOR._options = None + DESCRIPTOR._serialized_options = b'\n\020feast.proto.coreB\020FeatureViewProtoZ/github.com/feast-dev/feast/go/protos/feast/core' + _FEATUREVIEWSPEC_TAGSENTRY._options = None + _FEATUREVIEWSPEC_TAGSENTRY._serialized_options = b'8\001' + _globals['_FEATUREVIEW']._serialized_start=164 + _globals['_FEATUREVIEW']._serialized_end=263 + _globals['_FEATUREVIEWSPEC']._serialized_start=266 + _globals['_FEATUREVIEWSPEC']._serialized_end=711 + _globals['_FEATUREVIEWSPEC_TAGSENTRY']._serialized_start=668 + _globals['_FEATUREVIEWSPEC_TAGSENTRY']._serialized_end=711 + _globals['_FEATUREVIEWMETA']._serialized_start=714 + _globals['_FEATUREVIEWMETA']._serialized_end=918 + _globals['_MATERIALIZATIONINTERVAL']._serialized_start=920 + _globals['_MATERIALIZATIONINTERVAL']._serialized_end=1039 +# @@protoc_insertion_point(module_scope) diff --git a/sdk/python/feast/protos/feast/core/FeatureView_pb2.pyi b/sdk/python/feast/protos/feast/core/FeatureView_pb2.pyi new file mode 100644 index 0000000000..bbea7d07ef --- /dev/null +++ b/sdk/python/feast/protos/feast/core/FeatureView_pb2.pyi @@ -0,0 +1,177 @@ +""" +@generated by mypy-protobuf. Do not edit manually! +isort:skip_file +""" +import builtins +import feast.core.DataSource_pb2 +import feast.core.Feature_pb2 +import google.protobuf.descriptor +import google.protobuf.duration_pb2 +import google.protobuf.internal.containers +import google.protobuf.message +import google.protobuf.timestamp_pb2 +import typing +import typing_extensions + +DESCRIPTOR: google.protobuf.descriptor.FileDescriptor = ... + +class FeatureView(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + SPEC_FIELD_NUMBER: builtins.int + META_FIELD_NUMBER: builtins.int + @property + def spec(self) -> global___FeatureViewSpec: + """User-specified specifications of this feature view.""" + pass + @property + def meta(self) -> global___FeatureViewMeta: + """System-populated metadata for this feature view.""" + pass + def __init__(self, + *, + spec : typing.Optional[global___FeatureViewSpec] = ..., + meta : typing.Optional[global___FeatureViewMeta] = ..., + ) -> None: ... + def HasField(self, field_name: typing_extensions.Literal["meta",b"meta","spec",b"spec"]) -> builtins.bool: ... + def ClearField(self, field_name: typing_extensions.Literal["meta",b"meta","spec",b"spec"]) -> None: ... +global___FeatureView = FeatureView + +class FeatureViewSpec(google.protobuf.message.Message): + """Next available id: 13 + TODO(adchia): refactor common fields from this and ODFV into separate metadata proto + """ + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + class TagsEntry(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + KEY_FIELD_NUMBER: builtins.int + VALUE_FIELD_NUMBER: builtins.int + key: typing.Text = ... + value: typing.Text = ... + def __init__(self, + *, + key : typing.Text = ..., + value : typing.Text = ..., + ) -> None: ... + def ClearField(self, field_name: typing_extensions.Literal["key",b"key","value",b"value"]) -> None: ... + + NAME_FIELD_NUMBER: builtins.int + PROJECT_FIELD_NUMBER: builtins.int + ENTITIES_FIELD_NUMBER: builtins.int + FEATURES_FIELD_NUMBER: builtins.int + ENTITY_COLUMNS_FIELD_NUMBER: builtins.int + DESCRIPTION_FIELD_NUMBER: builtins.int + TAGS_FIELD_NUMBER: builtins.int + OWNER_FIELD_NUMBER: builtins.int + TTL_FIELD_NUMBER: builtins.int + BATCH_SOURCE_FIELD_NUMBER: builtins.int + STREAM_SOURCE_FIELD_NUMBER: builtins.int + ONLINE_FIELD_NUMBER: builtins.int + name: typing.Text = ... + """Name of the feature view. Must be unique. Not updated.""" + + project: typing.Text = ... + """Name of Feast project that this feature view belongs to.""" + + @property + def entities(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[typing.Text]: + """List of names of entities associated with this feature view.""" + pass + @property + def features(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[feast.core.Feature_pb2.FeatureSpecV2]: + """List of specifications for each feature defined as part of this feature view.""" + pass + @property + def entity_columns(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[feast.core.Feature_pb2.FeatureSpecV2]: + """List of specifications for each entity defined as part of this feature view.""" + pass + description: typing.Text = ... + """Description of the feature view.""" + + @property + def tags(self) -> google.protobuf.internal.containers.ScalarMap[typing.Text, typing.Text]: + """User defined metadata""" + pass + owner: typing.Text = ... + """Owner of the feature view.""" + + @property + def ttl(self) -> google.protobuf.duration_pb2.Duration: + """Features in this feature view can only be retrieved from online serving + younger than ttl. Ttl is measured as the duration of time between + the feature's event timestamp and when the feature is retrieved + Feature values outside ttl will be returned as unset values and indicated to end user + """ + pass + @property + def batch_source(self) -> feast.core.DataSource_pb2.DataSource: + """Batch/Offline DataSource where this view can retrieve offline feature data.""" + pass + @property + def stream_source(self) -> feast.core.DataSource_pb2.DataSource: + """Streaming DataSource from where this view can consume "online" feature data.""" + pass + online: builtins.bool = ... + """Whether these features should be served online or not""" + + def __init__(self, + *, + name : typing.Text = ..., + project : typing.Text = ..., + entities : typing.Optional[typing.Iterable[typing.Text]] = ..., + features : typing.Optional[typing.Iterable[feast.core.Feature_pb2.FeatureSpecV2]] = ..., + entity_columns : typing.Optional[typing.Iterable[feast.core.Feature_pb2.FeatureSpecV2]] = ..., + description : typing.Text = ..., + tags : typing.Optional[typing.Mapping[typing.Text, typing.Text]] = ..., + owner : typing.Text = ..., + ttl : typing.Optional[google.protobuf.duration_pb2.Duration] = ..., + batch_source : typing.Optional[feast.core.DataSource_pb2.DataSource] = ..., + stream_source : typing.Optional[feast.core.DataSource_pb2.DataSource] = ..., + online : builtins.bool = ..., + ) -> None: ... + def HasField(self, field_name: typing_extensions.Literal["batch_source",b"batch_source","stream_source",b"stream_source","ttl",b"ttl"]) -> builtins.bool: ... + def ClearField(self, field_name: typing_extensions.Literal["batch_source",b"batch_source","description",b"description","entities",b"entities","entity_columns",b"entity_columns","features",b"features","name",b"name","online",b"online","owner",b"owner","project",b"project","stream_source",b"stream_source","tags",b"tags","ttl",b"ttl"]) -> None: ... +global___FeatureViewSpec = FeatureViewSpec + +class FeatureViewMeta(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + CREATED_TIMESTAMP_FIELD_NUMBER: builtins.int + LAST_UPDATED_TIMESTAMP_FIELD_NUMBER: builtins.int + MATERIALIZATION_INTERVALS_FIELD_NUMBER: builtins.int + @property + def created_timestamp(self) -> google.protobuf.timestamp_pb2.Timestamp: + """Time where this Feature View is created""" + pass + @property + def last_updated_timestamp(self) -> google.protobuf.timestamp_pb2.Timestamp: + """Time where this Feature View is last updated""" + pass + @property + def materialization_intervals(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___MaterializationInterval]: + """List of pairs (start_time, end_time) for which this feature view has been materialized.""" + pass + def __init__(self, + *, + created_timestamp : typing.Optional[google.protobuf.timestamp_pb2.Timestamp] = ..., + last_updated_timestamp : typing.Optional[google.protobuf.timestamp_pb2.Timestamp] = ..., + materialization_intervals : typing.Optional[typing.Iterable[global___MaterializationInterval]] = ..., + ) -> None: ... + def HasField(self, field_name: typing_extensions.Literal["created_timestamp",b"created_timestamp","last_updated_timestamp",b"last_updated_timestamp"]) -> builtins.bool: ... + def ClearField(self, field_name: typing_extensions.Literal["created_timestamp",b"created_timestamp","last_updated_timestamp",b"last_updated_timestamp","materialization_intervals",b"materialization_intervals"]) -> None: ... +global___FeatureViewMeta = FeatureViewMeta + +class MaterializationInterval(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + START_TIME_FIELD_NUMBER: builtins.int + END_TIME_FIELD_NUMBER: builtins.int + @property + def start_time(self) -> google.protobuf.timestamp_pb2.Timestamp: ... + @property + def end_time(self) -> google.protobuf.timestamp_pb2.Timestamp: ... + def __init__(self, + *, + start_time : typing.Optional[google.protobuf.timestamp_pb2.Timestamp] = ..., + end_time : typing.Optional[google.protobuf.timestamp_pb2.Timestamp] = ..., + ) -> None: ... + def HasField(self, field_name: typing_extensions.Literal["end_time",b"end_time","start_time",b"start_time"]) -> builtins.bool: ... + def ClearField(self, field_name: typing_extensions.Literal["end_time",b"end_time","start_time",b"start_time"]) -> None: ... +global___MaterializationInterval = MaterializationInterval diff --git a/sdk/python/feast/protos/feast/core/FeatureView_pb2_grpc.py b/sdk/python/feast/protos/feast/core/FeatureView_pb2_grpc.py new file mode 100644 index 0000000000..2daafffebf --- /dev/null +++ b/sdk/python/feast/protos/feast/core/FeatureView_pb2_grpc.py @@ -0,0 +1,4 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +"""Client and server classes corresponding to protobuf-defined services.""" +import grpc + diff --git a/sdk/python/feast/protos/feast/core/Feature_pb2.py b/sdk/python/feast/protos/feast/core/Feature_pb2.py new file mode 100644 index 0000000000..1fb051576a --- /dev/null +++ b/sdk/python/feast/protos/feast/core/Feature_pb2.py @@ -0,0 +1,32 @@ +# -*- coding: utf-8 -*- +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: feast/core/Feature.proto +"""Generated protocol buffer code.""" +from google.protobuf import descriptor as _descriptor +from google.protobuf import descriptor_pool as _descriptor_pool +from google.protobuf import symbol_database as _symbol_database +from google.protobuf.internal import builder as _builder +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +from feast.protos.feast.types import Value_pb2 as feast_dot_types_dot_Value__pb2 + + +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x18\x66\x65\x61st/core/Feature.proto\x12\nfeast.core\x1a\x17\x66\x65\x61st/types/Value.proto\"\xc3\x01\n\rFeatureSpecV2\x12\x0c\n\x04name\x18\x01 \x01(\t\x12/\n\nvalue_type\x18\x02 \x01(\x0e\x32\x1b.feast.types.ValueType.Enum\x12\x31\n\x04tags\x18\x03 \x03(\x0b\x32#.feast.core.FeatureSpecV2.TagsEntry\x12\x13\n\x0b\x64\x65scription\x18\x04 \x01(\t\x1a+\n\tTagsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x42Q\n\x10\x66\x65\x61st.proto.coreB\x0c\x46\x65\x61tureProtoZ/github.com/feast-dev/feast/go/protos/feast/coreb\x06proto3') + +_globals = globals() +_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) +_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'feast.core.Feature_pb2', _globals) +if _descriptor._USE_C_DESCRIPTORS == False: + + DESCRIPTOR._options = None + DESCRIPTOR._serialized_options = b'\n\020feast.proto.coreB\014FeatureProtoZ/github.com/feast-dev/feast/go/protos/feast/core' + _FEATURESPECV2_TAGSENTRY._options = None + _FEATURESPECV2_TAGSENTRY._serialized_options = b'8\001' + _globals['_FEATURESPECV2']._serialized_start=66 + _globals['_FEATURESPECV2']._serialized_end=261 + _globals['_FEATURESPECV2_TAGSENTRY']._serialized_start=218 + _globals['_FEATURESPECV2_TAGSENTRY']._serialized_end=261 +# @@protoc_insertion_point(module_scope) diff --git a/sdk/python/feast/protos/feast/core/Feature_pb2.pyi b/sdk/python/feast/protos/feast/core/Feature_pb2.pyi new file mode 100644 index 0000000000..c18a966c8a --- /dev/null +++ b/sdk/python/feast/protos/feast/core/Feature_pb2.pyi @@ -0,0 +1,57 @@ +""" +@generated by mypy-protobuf. Do not edit manually! +isort:skip_file +""" +import builtins +import feast.types.Value_pb2 +import google.protobuf.descriptor +import google.protobuf.internal.containers +import google.protobuf.message +import typing +import typing_extensions + +DESCRIPTOR: google.protobuf.descriptor.FileDescriptor = ... + +class FeatureSpecV2(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + class TagsEntry(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + KEY_FIELD_NUMBER: builtins.int + VALUE_FIELD_NUMBER: builtins.int + key: typing.Text = ... + value: typing.Text = ... + def __init__(self, + *, + key : typing.Text = ..., + value : typing.Text = ..., + ) -> None: ... + def ClearField(self, field_name: typing_extensions.Literal["key",b"key","value",b"value"]) -> None: ... + + NAME_FIELD_NUMBER: builtins.int + VALUE_TYPE_FIELD_NUMBER: builtins.int + TAGS_FIELD_NUMBER: builtins.int + DESCRIPTION_FIELD_NUMBER: builtins.int + name: typing.Text = ... + """Name of the feature. Not updatable.""" + + value_type: feast.types.Value_pb2.ValueType.Enum.ValueType = ... + """Value type of the feature. Not updatable.""" + + @property + def tags(self) -> google.protobuf.internal.containers.ScalarMap[typing.Text, typing.Text]: + """Tags for user defined metadata on a feature""" + pass + description: typing.Text = ... + """Description of the feature. + + """ + + def __init__(self, + *, + name : typing.Text = ..., + value_type : feast.types.Value_pb2.ValueType.Enum.ValueType = ..., + tags : typing.Optional[typing.Mapping[typing.Text, typing.Text]] = ..., + description : typing.Text = ..., + ) -> None: ... + def ClearField(self, field_name: typing_extensions.Literal["description",b"description","name",b"name","tags",b"tags","value_type",b"value_type"]) -> None: ... +global___FeatureSpecV2 = FeatureSpecV2 diff --git a/sdk/python/feast/protos/feast/core/Feature_pb2_grpc.py b/sdk/python/feast/protos/feast/core/Feature_pb2_grpc.py new file mode 100644 index 0000000000..2daafffebf --- /dev/null +++ b/sdk/python/feast/protos/feast/core/Feature_pb2_grpc.py @@ -0,0 +1,4 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +"""Client and server classes corresponding to protobuf-defined services.""" +import grpc + diff --git a/sdk/python/feast/protos/feast/core/InfraObject_pb2.py b/sdk/python/feast/protos/feast/core/InfraObject_pb2.py new file mode 100644 index 0000000000..a951e34b09 --- /dev/null +++ b/sdk/python/feast/protos/feast/core/InfraObject_pb2.py @@ -0,0 +1,34 @@ +# -*- coding: utf-8 -*- +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: feast/core/InfraObject.proto +"""Generated protocol buffer code.""" +from google.protobuf import descriptor as _descriptor +from google.protobuf import descriptor_pool as _descriptor_pool +from google.protobuf import symbol_database as _symbol_database +from google.protobuf.internal import builder as _builder +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +from feast.protos.feast.core import DatastoreTable_pb2 as feast_dot_core_dot_DatastoreTable__pb2 +from feast.protos.feast.core import DynamoDBTable_pb2 as feast_dot_core_dot_DynamoDBTable__pb2 +from feast.protos.feast.core import SqliteTable_pb2 as feast_dot_core_dot_SqliteTable__pb2 + + +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1c\x66\x65\x61st/core/InfraObject.proto\x12\nfeast.core\x1a\x1f\x66\x65\x61st/core/DatastoreTable.proto\x1a\x1e\x66\x65\x61st/core/DynamoDBTable.proto\x1a\x1c\x66\x65\x61st/core/SqliteTable.proto\"7\n\x05Infra\x12.\n\rinfra_objects\x18\x01 \x03(\x0b\x32\x17.feast.core.InfraObject\"\xb6\x02\n\x0bInfraObject\x12\x1f\n\x17infra_object_class_type\x18\x01 \x01(\t\x12\x33\n\x0e\x64ynamodb_table\x18\x02 \x01(\x0b\x32\x19.feast.core.DynamoDBTableH\x00\x12\x35\n\x0f\x64\x61tastore_table\x18\x03 \x01(\x0b\x32\x1a.feast.core.DatastoreTableH\x00\x12/\n\x0csqlite_table\x18\x04 \x01(\x0b\x32\x17.feast.core.SqliteTableH\x00\x12;\n\x0c\x63ustom_infra\x18\x64 \x01(\x0b\x32#.feast.core.InfraObject.CustomInfraH\x00\x1a\x1c\n\x0b\x43ustomInfra\x12\r\n\x05\x66ield\x18\x01 \x01(\x0c\x42\x0e\n\x0cinfra_objectBU\n\x10\x66\x65\x61st.proto.coreB\x10InfraObjectProtoZ/github.com/feast-dev/feast/go/protos/feast/coreb\x06proto3') + +_globals = globals() +_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) +_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'feast.core.InfraObject_pb2', _globals) +if _descriptor._USE_C_DESCRIPTORS == False: + + DESCRIPTOR._options = None + DESCRIPTOR._serialized_options = b'\n\020feast.proto.coreB\020InfraObjectProtoZ/github.com/feast-dev/feast/go/protos/feast/core' + _globals['_INFRA']._serialized_start=139 + _globals['_INFRA']._serialized_end=194 + _globals['_INFRAOBJECT']._serialized_start=197 + _globals['_INFRAOBJECT']._serialized_end=507 + _globals['_INFRAOBJECT_CUSTOMINFRA']._serialized_start=463 + _globals['_INFRAOBJECT_CUSTOMINFRA']._serialized_end=491 +# @@protoc_insertion_point(module_scope) diff --git a/sdk/python/feast/protos/feast/core/InfraObject_pb2.pyi b/sdk/python/feast/protos/feast/core/InfraObject_pb2.pyi new file mode 100644 index 0000000000..9f7b641a57 --- /dev/null +++ b/sdk/python/feast/protos/feast/core/InfraObject_pb2.pyi @@ -0,0 +1,73 @@ +""" +@generated by mypy-protobuf. Do not edit manually! +isort:skip_file +""" +import builtins +import feast.core.DatastoreTable_pb2 +import feast.core.DynamoDBTable_pb2 +import feast.core.SqliteTable_pb2 +import google.protobuf.descriptor +import google.protobuf.internal.containers +import google.protobuf.message +import typing +import typing_extensions + +DESCRIPTOR: google.protobuf.descriptor.FileDescriptor = ... + +class Infra(google.protobuf.message.Message): + """Represents a set of infrastructure objects managed by Feast""" + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + INFRA_OBJECTS_FIELD_NUMBER: builtins.int + @property + def infra_objects(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___InfraObject]: + """List of infrastructure objects managed by Feast""" + pass + def __init__(self, + *, + infra_objects : typing.Optional[typing.Iterable[global___InfraObject]] = ..., + ) -> None: ... + def ClearField(self, field_name: typing_extensions.Literal["infra_objects",b"infra_objects"]) -> None: ... +global___Infra = Infra + +class InfraObject(google.protobuf.message.Message): + """Represents a single infrastructure object managed by Feast""" + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + class CustomInfra(google.protobuf.message.Message): + """Allows for custom infra objects to be added""" + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + FIELD_FIELD_NUMBER: builtins.int + field: builtins.bytes = ... + def __init__(self, + *, + field : builtins.bytes = ..., + ) -> None: ... + def ClearField(self, field_name: typing_extensions.Literal["field",b"field"]) -> None: ... + + INFRA_OBJECT_CLASS_TYPE_FIELD_NUMBER: builtins.int + DYNAMODB_TABLE_FIELD_NUMBER: builtins.int + DATASTORE_TABLE_FIELD_NUMBER: builtins.int + SQLITE_TABLE_FIELD_NUMBER: builtins.int + CUSTOM_INFRA_FIELD_NUMBER: builtins.int + infra_object_class_type: typing.Text = ... + """Represents the Python class for the infrastructure object""" + + @property + def dynamodb_table(self) -> feast.core.DynamoDBTable_pb2.DynamoDBTable: ... + @property + def datastore_table(self) -> feast.core.DatastoreTable_pb2.DatastoreTable: ... + @property + def sqlite_table(self) -> feast.core.SqliteTable_pb2.SqliteTable: ... + @property + def custom_infra(self) -> global___InfraObject.CustomInfra: ... + def __init__(self, + *, + infra_object_class_type : typing.Text = ..., + dynamodb_table : typing.Optional[feast.core.DynamoDBTable_pb2.DynamoDBTable] = ..., + datastore_table : typing.Optional[feast.core.DatastoreTable_pb2.DatastoreTable] = ..., + sqlite_table : typing.Optional[feast.core.SqliteTable_pb2.SqliteTable] = ..., + custom_infra : typing.Optional[global___InfraObject.CustomInfra] = ..., + ) -> None: ... + def HasField(self, field_name: typing_extensions.Literal["custom_infra",b"custom_infra","datastore_table",b"datastore_table","dynamodb_table",b"dynamodb_table","infra_object",b"infra_object","sqlite_table",b"sqlite_table"]) -> builtins.bool: ... + def ClearField(self, field_name: typing_extensions.Literal["custom_infra",b"custom_infra","datastore_table",b"datastore_table","dynamodb_table",b"dynamodb_table","infra_object",b"infra_object","infra_object_class_type",b"infra_object_class_type","sqlite_table",b"sqlite_table"]) -> None: ... + def WhichOneof(self, oneof_group: typing_extensions.Literal["infra_object",b"infra_object"]) -> typing.Optional[typing_extensions.Literal["dynamodb_table","datastore_table","sqlite_table","custom_infra"]]: ... +global___InfraObject = InfraObject diff --git a/sdk/python/feast/protos/feast/core/InfraObject_pb2_grpc.py b/sdk/python/feast/protos/feast/core/InfraObject_pb2_grpc.py new file mode 100644 index 0000000000..2daafffebf --- /dev/null +++ b/sdk/python/feast/protos/feast/core/InfraObject_pb2_grpc.py @@ -0,0 +1,4 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +"""Client and server classes corresponding to protobuf-defined services.""" +import grpc + diff --git a/sdk/python/feast/protos/feast/core/OnDemandFeatureView_pb2.py b/sdk/python/feast/protos/feast/core/OnDemandFeatureView_pb2.py new file mode 100644 index 0000000000..e859cb4b0f --- /dev/null +++ b/sdk/python/feast/protos/feast/core/OnDemandFeatureView_pb2.py @@ -0,0 +1,48 @@ +# -*- coding: utf-8 -*- +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: feast/core/OnDemandFeatureView.proto +"""Generated protocol buffer code.""" +from google.protobuf import descriptor as _descriptor +from google.protobuf import descriptor_pool as _descriptor_pool +from google.protobuf import symbol_database as _symbol_database +from google.protobuf.internal import builder as _builder +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +from google.protobuf import timestamp_pb2 as google_dot_protobuf_dot_timestamp__pb2 +from feast.protos.feast.core import FeatureView_pb2 as feast_dot_core_dot_FeatureView__pb2 +from feast.protos.feast.core import FeatureViewProjection_pb2 as feast_dot_core_dot_FeatureViewProjection__pb2 +from feast.protos.feast.core import Feature_pb2 as feast_dot_core_dot_Feature__pb2 +from feast.protos.feast.core import DataSource_pb2 as feast_dot_core_dot_DataSource__pb2 + + +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n$feast/core/OnDemandFeatureView.proto\x12\nfeast.core\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x1c\x66\x65\x61st/core/FeatureView.proto\x1a&feast/core/FeatureViewProjection.proto\x1a\x18\x66\x65\x61st/core/Feature.proto\x1a\x1b\x66\x65\x61st/core/DataSource.proto\"{\n\x13OnDemandFeatureView\x12\x31\n\x04spec\x18\x01 \x01(\x0b\x32#.feast.core.OnDemandFeatureViewSpec\x12\x31\n\x04meta\x18\x02 \x01(\x0b\x32#.feast.core.OnDemandFeatureViewMeta\"\xc2\x03\n\x17OnDemandFeatureViewSpec\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0f\n\x07project\x18\x02 \x01(\t\x12+\n\x08\x66\x65\x61tures\x18\x03 \x03(\x0b\x32\x19.feast.core.FeatureSpecV2\x12\x41\n\x07sources\x18\x04 \x03(\x0b\x32\x30.feast.core.OnDemandFeatureViewSpec.SourcesEntry\x12>\n\x15user_defined_function\x18\x05 \x01(\x0b\x32\x1f.feast.core.UserDefinedFunction\x12\x13\n\x0b\x64\x65scription\x18\x06 \x01(\t\x12;\n\x04tags\x18\x07 \x03(\x0b\x32-.feast.core.OnDemandFeatureViewSpec.TagsEntry\x12\r\n\x05owner\x18\x08 \x01(\t\x1aJ\n\x0cSourcesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12)\n\x05value\x18\x02 \x01(\x0b\x32\x1a.feast.core.OnDemandSource:\x02\x38\x01\x1a+\n\tTagsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\x8c\x01\n\x17OnDemandFeatureViewMeta\x12\x35\n\x11\x63reated_timestamp\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12:\n\x16last_updated_timestamp\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\"\xc8\x01\n\x0eOnDemandSource\x12/\n\x0c\x66\x65\x61ture_view\x18\x01 \x01(\x0b\x32\x17.feast.core.FeatureViewH\x00\x12\x44\n\x17\x66\x65\x61ture_view_projection\x18\x03 \x01(\x0b\x32!.feast.core.FeatureViewProjectionH\x00\x12\x35\n\x13request_data_source\x18\x02 \x01(\x0b\x32\x16.feast.core.DataSourceH\x00\x42\x08\n\x06source\"D\n\x13UserDefinedFunction\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0c\n\x04\x62ody\x18\x02 \x01(\x0c\x12\x11\n\tbody_text\x18\x03 \x01(\tB]\n\x10\x66\x65\x61st.proto.coreB\x18OnDemandFeatureViewProtoZ/github.com/feast-dev/feast/go/protos/feast/coreb\x06proto3') + +_globals = globals() +_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) +_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'feast.core.OnDemandFeatureView_pb2', _globals) +if _descriptor._USE_C_DESCRIPTORS == False: + + DESCRIPTOR._options = None + DESCRIPTOR._serialized_options = b'\n\020feast.proto.coreB\030OnDemandFeatureViewProtoZ/github.com/feast-dev/feast/go/protos/feast/core' + _ONDEMANDFEATUREVIEWSPEC_SOURCESENTRY._options = None + _ONDEMANDFEATUREVIEWSPEC_SOURCESENTRY._serialized_options = b'8\001' + _ONDEMANDFEATUREVIEWSPEC_TAGSENTRY._options = None + _ONDEMANDFEATUREVIEWSPEC_TAGSENTRY._serialized_options = b'8\001' + _globals['_ONDEMANDFEATUREVIEW']._serialized_start=210 + _globals['_ONDEMANDFEATUREVIEW']._serialized_end=333 + _globals['_ONDEMANDFEATUREVIEWSPEC']._serialized_start=336 + _globals['_ONDEMANDFEATUREVIEWSPEC']._serialized_end=786 + _globals['_ONDEMANDFEATUREVIEWSPEC_SOURCESENTRY']._serialized_start=667 + _globals['_ONDEMANDFEATUREVIEWSPEC_SOURCESENTRY']._serialized_end=741 + _globals['_ONDEMANDFEATUREVIEWSPEC_TAGSENTRY']._serialized_start=743 + _globals['_ONDEMANDFEATUREVIEWSPEC_TAGSENTRY']._serialized_end=786 + _globals['_ONDEMANDFEATUREVIEWMETA']._serialized_start=789 + _globals['_ONDEMANDFEATUREVIEWMETA']._serialized_end=929 + _globals['_ONDEMANDSOURCE']._serialized_start=932 + _globals['_ONDEMANDSOURCE']._serialized_end=1132 + _globals['_USERDEFINEDFUNCTION']._serialized_start=1134 + _globals['_USERDEFINEDFUNCTION']._serialized_end=1202 +# @@protoc_insertion_point(module_scope) diff --git a/sdk/python/feast/protos/feast/core/OnDemandFeatureView_pb2.pyi b/sdk/python/feast/protos/feast/core/OnDemandFeatureView_pb2.pyi new file mode 100644 index 0000000000..0981e34b97 --- /dev/null +++ b/sdk/python/feast/protos/feast/core/OnDemandFeatureView_pb2.pyi @@ -0,0 +1,183 @@ +""" +@generated by mypy-protobuf. Do not edit manually! +isort:skip_file +""" +import builtins +import feast.core.DataSource_pb2 +import feast.core.FeatureViewProjection_pb2 +import feast.core.FeatureView_pb2 +import feast.core.Feature_pb2 +import google.protobuf.descriptor +import google.protobuf.internal.containers +import google.protobuf.message +import google.protobuf.timestamp_pb2 +import typing +import typing_extensions + +DESCRIPTOR: google.protobuf.descriptor.FileDescriptor = ... + +class OnDemandFeatureView(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + SPEC_FIELD_NUMBER: builtins.int + META_FIELD_NUMBER: builtins.int + @property + def spec(self) -> global___OnDemandFeatureViewSpec: + """User-specified specifications of this feature view.""" + pass + @property + def meta(self) -> global___OnDemandFeatureViewMeta: ... + def __init__(self, + *, + spec : typing.Optional[global___OnDemandFeatureViewSpec] = ..., + meta : typing.Optional[global___OnDemandFeatureViewMeta] = ..., + ) -> None: ... + def HasField(self, field_name: typing_extensions.Literal["meta",b"meta","spec",b"spec"]) -> builtins.bool: ... + def ClearField(self, field_name: typing_extensions.Literal["meta",b"meta","spec",b"spec"]) -> None: ... +global___OnDemandFeatureView = OnDemandFeatureView + +class OnDemandFeatureViewSpec(google.protobuf.message.Message): + """Next available id: 9""" + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + class SourcesEntry(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + KEY_FIELD_NUMBER: builtins.int + VALUE_FIELD_NUMBER: builtins.int + key: typing.Text = ... + @property + def value(self) -> global___OnDemandSource: ... + def __init__(self, + *, + key : typing.Text = ..., + value : typing.Optional[global___OnDemandSource] = ..., + ) -> None: ... + def HasField(self, field_name: typing_extensions.Literal["value",b"value"]) -> builtins.bool: ... + def ClearField(self, field_name: typing_extensions.Literal["key",b"key","value",b"value"]) -> None: ... + + class TagsEntry(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + KEY_FIELD_NUMBER: builtins.int + VALUE_FIELD_NUMBER: builtins.int + key: typing.Text = ... + value: typing.Text = ... + def __init__(self, + *, + key : typing.Text = ..., + value : typing.Text = ..., + ) -> None: ... + def ClearField(self, field_name: typing_extensions.Literal["key",b"key","value",b"value"]) -> None: ... + + NAME_FIELD_NUMBER: builtins.int + PROJECT_FIELD_NUMBER: builtins.int + FEATURES_FIELD_NUMBER: builtins.int + SOURCES_FIELD_NUMBER: builtins.int + USER_DEFINED_FUNCTION_FIELD_NUMBER: builtins.int + DESCRIPTION_FIELD_NUMBER: builtins.int + TAGS_FIELD_NUMBER: builtins.int + OWNER_FIELD_NUMBER: builtins.int + name: typing.Text = ... + """Name of the feature view. Must be unique. Not updated.""" + + project: typing.Text = ... + """Name of Feast project that this feature view belongs to.""" + + @property + def features(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[feast.core.Feature_pb2.FeatureSpecV2]: + """List of features specifications for each feature defined with this feature view.""" + pass + @property + def sources(self) -> google.protobuf.internal.containers.MessageMap[typing.Text, global___OnDemandSource]: + """Map of sources for this feature view.""" + pass + @property + def user_defined_function(self) -> global___UserDefinedFunction: ... + description: typing.Text = ... + """Description of the on demand feature view.""" + + @property + def tags(self) -> google.protobuf.internal.containers.ScalarMap[typing.Text, typing.Text]: + """User defined metadata.""" + pass + owner: typing.Text = ... + """Owner of the on demand feature view.""" + + def __init__(self, + *, + name : typing.Text = ..., + project : typing.Text = ..., + features : typing.Optional[typing.Iterable[feast.core.Feature_pb2.FeatureSpecV2]] = ..., + sources : typing.Optional[typing.Mapping[typing.Text, global___OnDemandSource]] = ..., + user_defined_function : typing.Optional[global___UserDefinedFunction] = ..., + description : typing.Text = ..., + tags : typing.Optional[typing.Mapping[typing.Text, typing.Text]] = ..., + owner : typing.Text = ..., + ) -> None: ... + def HasField(self, field_name: typing_extensions.Literal["user_defined_function",b"user_defined_function"]) -> builtins.bool: ... + def ClearField(self, field_name: typing_extensions.Literal["description",b"description","features",b"features","name",b"name","owner",b"owner","project",b"project","sources",b"sources","tags",b"tags","user_defined_function",b"user_defined_function"]) -> None: ... +global___OnDemandFeatureViewSpec = OnDemandFeatureViewSpec + +class OnDemandFeatureViewMeta(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + CREATED_TIMESTAMP_FIELD_NUMBER: builtins.int + LAST_UPDATED_TIMESTAMP_FIELD_NUMBER: builtins.int + @property + def created_timestamp(self) -> google.protobuf.timestamp_pb2.Timestamp: + """Time where this Feature View is created""" + pass + @property + def last_updated_timestamp(self) -> google.protobuf.timestamp_pb2.Timestamp: + """Time where this Feature View is last updated""" + pass + def __init__(self, + *, + created_timestamp : typing.Optional[google.protobuf.timestamp_pb2.Timestamp] = ..., + last_updated_timestamp : typing.Optional[google.protobuf.timestamp_pb2.Timestamp] = ..., + ) -> None: ... + def HasField(self, field_name: typing_extensions.Literal["created_timestamp",b"created_timestamp","last_updated_timestamp",b"last_updated_timestamp"]) -> builtins.bool: ... + def ClearField(self, field_name: typing_extensions.Literal["created_timestamp",b"created_timestamp","last_updated_timestamp",b"last_updated_timestamp"]) -> None: ... +global___OnDemandFeatureViewMeta = OnDemandFeatureViewMeta + +class OnDemandSource(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + FEATURE_VIEW_FIELD_NUMBER: builtins.int + FEATURE_VIEW_PROJECTION_FIELD_NUMBER: builtins.int + REQUEST_DATA_SOURCE_FIELD_NUMBER: builtins.int + @property + def feature_view(self) -> feast.core.FeatureView_pb2.FeatureView: ... + @property + def feature_view_projection(self) -> feast.core.FeatureViewProjection_pb2.FeatureViewProjection: ... + @property + def request_data_source(self) -> feast.core.DataSource_pb2.DataSource: ... + def __init__(self, + *, + feature_view : typing.Optional[feast.core.FeatureView_pb2.FeatureView] = ..., + feature_view_projection : typing.Optional[feast.core.FeatureViewProjection_pb2.FeatureViewProjection] = ..., + request_data_source : typing.Optional[feast.core.DataSource_pb2.DataSource] = ..., + ) -> None: ... + def HasField(self, field_name: typing_extensions.Literal["feature_view",b"feature_view","feature_view_projection",b"feature_view_projection","request_data_source",b"request_data_source","source",b"source"]) -> builtins.bool: ... + def ClearField(self, field_name: typing_extensions.Literal["feature_view",b"feature_view","feature_view_projection",b"feature_view_projection","request_data_source",b"request_data_source","source",b"source"]) -> None: ... + def WhichOneof(self, oneof_group: typing_extensions.Literal["source",b"source"]) -> typing.Optional[typing_extensions.Literal["feature_view","feature_view_projection","request_data_source"]]: ... +global___OnDemandSource = OnDemandSource + +class UserDefinedFunction(google.protobuf.message.Message): + """Serialized representation of python function.""" + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + NAME_FIELD_NUMBER: builtins.int + BODY_FIELD_NUMBER: builtins.int + BODY_TEXT_FIELD_NUMBER: builtins.int + name: typing.Text = ... + """The function name""" + + body: builtins.bytes = ... + """The python-syntax function body (serialized by dill)""" + + body_text: typing.Text = ... + """The string representation of the udf""" + + def __init__(self, + *, + name : typing.Text = ..., + body : builtins.bytes = ..., + body_text : typing.Text = ..., + ) -> None: ... + def ClearField(self, field_name: typing_extensions.Literal["body",b"body","body_text",b"body_text","name",b"name"]) -> None: ... +global___UserDefinedFunction = UserDefinedFunction diff --git a/sdk/python/feast/protos/feast/core/OnDemandFeatureView_pb2_grpc.py b/sdk/python/feast/protos/feast/core/OnDemandFeatureView_pb2_grpc.py new file mode 100644 index 0000000000..2daafffebf --- /dev/null +++ b/sdk/python/feast/protos/feast/core/OnDemandFeatureView_pb2_grpc.py @@ -0,0 +1,4 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +"""Client and server classes corresponding to protobuf-defined services.""" +import grpc + diff --git a/sdk/python/feast/protos/feast/core/Registry_pb2.py b/sdk/python/feast/protos/feast/core/Registry_pb2.py new file mode 100644 index 0000000000..a9d569926e --- /dev/null +++ b/sdk/python/feast/protos/feast/core/Registry_pb2.py @@ -0,0 +1,41 @@ +# -*- coding: utf-8 -*- +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: feast/core/Registry.proto +"""Generated protocol buffer code.""" +from google.protobuf import descriptor as _descriptor +from google.protobuf import descriptor_pool as _descriptor_pool +from google.protobuf import symbol_database as _symbol_database +from google.protobuf.internal import builder as _builder +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +from feast.protos.feast.core import Entity_pb2 as feast_dot_core_dot_Entity__pb2 +from feast.protos.feast.core import FeatureService_pb2 as feast_dot_core_dot_FeatureService__pb2 +from feast.protos.feast.core import FeatureTable_pb2 as feast_dot_core_dot_FeatureTable__pb2 +from feast.protos.feast.core import FeatureView_pb2 as feast_dot_core_dot_FeatureView__pb2 +from feast.protos.feast.core import InfraObject_pb2 as feast_dot_core_dot_InfraObject__pb2 +from feast.protos.feast.core import OnDemandFeatureView_pb2 as feast_dot_core_dot_OnDemandFeatureView__pb2 +from feast.protos.feast.core import RequestFeatureView_pb2 as feast_dot_core_dot_RequestFeatureView__pb2 +from feast.protos.feast.core import StreamFeatureView_pb2 as feast_dot_core_dot_StreamFeatureView__pb2 +from feast.protos.feast.core import DataSource_pb2 as feast_dot_core_dot_DataSource__pb2 +from feast.protos.feast.core import SavedDataset_pb2 as feast_dot_core_dot_SavedDataset__pb2 +from feast.protos.feast.core import ValidationProfile_pb2 as feast_dot_core_dot_ValidationProfile__pb2 +from google.protobuf import timestamp_pb2 as google_dot_protobuf_dot_timestamp__pb2 + + +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x19\x66\x65\x61st/core/Registry.proto\x12\nfeast.core\x1a\x17\x66\x65\x61st/core/Entity.proto\x1a\x1f\x66\x65\x61st/core/FeatureService.proto\x1a\x1d\x66\x65\x61st/core/FeatureTable.proto\x1a\x1c\x66\x65\x61st/core/FeatureView.proto\x1a\x1c\x66\x65\x61st/core/InfraObject.proto\x1a$feast/core/OnDemandFeatureView.proto\x1a#feast/core/RequestFeatureView.proto\x1a\"feast/core/StreamFeatureView.proto\x1a\x1b\x66\x65\x61st/core/DataSource.proto\x1a\x1d\x66\x65\x61st/core/SavedDataset.proto\x1a\"feast/core/ValidationProfile.proto\x1a\x1fgoogle/protobuf/timestamp.proto\"\xe6\x05\n\x08Registry\x12$\n\x08\x65ntities\x18\x01 \x03(\x0b\x32\x12.feast.core.Entity\x12\x30\n\x0e\x66\x65\x61ture_tables\x18\x02 \x03(\x0b\x32\x18.feast.core.FeatureTable\x12.\n\rfeature_views\x18\x06 \x03(\x0b\x32\x17.feast.core.FeatureView\x12,\n\x0c\x64\x61ta_sources\x18\x0c \x03(\x0b\x32\x16.feast.core.DataSource\x12@\n\x17on_demand_feature_views\x18\x08 \x03(\x0b\x32\x1f.feast.core.OnDemandFeatureView\x12=\n\x15request_feature_views\x18\t \x03(\x0b\x32\x1e.feast.core.RequestFeatureView\x12;\n\x14stream_feature_views\x18\x0e \x03(\x0b\x32\x1d.feast.core.StreamFeatureView\x12\x34\n\x10\x66\x65\x61ture_services\x18\x07 \x03(\x0b\x32\x1a.feast.core.FeatureService\x12\x30\n\x0esaved_datasets\x18\x0b \x03(\x0b\x32\x18.feast.core.SavedDataset\x12>\n\x15validation_references\x18\r \x03(\x0b\x32\x1f.feast.core.ValidationReference\x12 \n\x05infra\x18\n \x01(\x0b\x32\x11.feast.core.Infra\x12\x35\n\x10project_metadata\x18\x0f \x03(\x0b\x32\x1b.feast.core.ProjectMetadata\x12\x1f\n\x17registry_schema_version\x18\x03 \x01(\t\x12\x12\n\nversion_id\x18\x04 \x01(\t\x12\x30\n\x0clast_updated\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\"8\n\x0fProjectMetadata\x12\x0f\n\x07project\x18\x01 \x01(\t\x12\x14\n\x0cproject_uuid\x18\x02 \x01(\tBR\n\x10\x66\x65\x61st.proto.coreB\rRegistryProtoZ/github.com/feast-dev/feast/go/protos/feast/coreb\x06proto3') + +_globals = globals() +_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) +_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'feast.core.Registry_pb2', _globals) +if _descriptor._USE_C_DESCRIPTORS == False: + + DESCRIPTOR._options = None + DESCRIPTOR._serialized_options = b'\n\020feast.proto.coreB\rRegistryProtoZ/github.com/feast-dev/feast/go/protos/feast/core' + _globals['_REGISTRY']._serialized_start=431 + _globals['_REGISTRY']._serialized_end=1173 + _globals['_PROJECTMETADATA']._serialized_start=1175 + _globals['_PROJECTMETADATA']._serialized_end=1231 +# @@protoc_insertion_point(module_scope) diff --git a/sdk/python/feast/protos/feast/core/Registry_pb2.pyi b/sdk/python/feast/protos/feast/core/Registry_pb2.pyi new file mode 100644 index 0000000000..a6c3074e02 --- /dev/null +++ b/sdk/python/feast/protos/feast/core/Registry_pb2.pyi @@ -0,0 +1,112 @@ +""" +@generated by mypy-protobuf. Do not edit manually! +isort:skip_file +""" +import builtins +import feast.core.DataSource_pb2 +import feast.core.Entity_pb2 +import feast.core.FeatureService_pb2 +import feast.core.FeatureTable_pb2 +import feast.core.FeatureView_pb2 +import feast.core.InfraObject_pb2 +import feast.core.OnDemandFeatureView_pb2 +import feast.core.RequestFeatureView_pb2 +import feast.core.SavedDataset_pb2 +import feast.core.StreamFeatureView_pb2 +import feast.core.ValidationProfile_pb2 +import google.protobuf.descriptor +import google.protobuf.internal.containers +import google.protobuf.message +import google.protobuf.timestamp_pb2 +import typing +import typing_extensions + +DESCRIPTOR: google.protobuf.descriptor.FileDescriptor = ... + +class Registry(google.protobuf.message.Message): + """Next id: 16""" + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + ENTITIES_FIELD_NUMBER: builtins.int + FEATURE_TABLES_FIELD_NUMBER: builtins.int + FEATURE_VIEWS_FIELD_NUMBER: builtins.int + DATA_SOURCES_FIELD_NUMBER: builtins.int + ON_DEMAND_FEATURE_VIEWS_FIELD_NUMBER: builtins.int + REQUEST_FEATURE_VIEWS_FIELD_NUMBER: builtins.int + STREAM_FEATURE_VIEWS_FIELD_NUMBER: builtins.int + FEATURE_SERVICES_FIELD_NUMBER: builtins.int + SAVED_DATASETS_FIELD_NUMBER: builtins.int + VALIDATION_REFERENCES_FIELD_NUMBER: builtins.int + INFRA_FIELD_NUMBER: builtins.int + PROJECT_METADATA_FIELD_NUMBER: builtins.int + REGISTRY_SCHEMA_VERSION_FIELD_NUMBER: builtins.int + VERSION_ID_FIELD_NUMBER: builtins.int + LAST_UPDATED_FIELD_NUMBER: builtins.int + @property + def entities(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[feast.core.Entity_pb2.Entity]: ... + @property + def feature_tables(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[feast.core.FeatureTable_pb2.FeatureTable]: ... + @property + def feature_views(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[feast.core.FeatureView_pb2.FeatureView]: ... + @property + def data_sources(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[feast.core.DataSource_pb2.DataSource]: ... + @property + def on_demand_feature_views(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[feast.core.OnDemandFeatureView_pb2.OnDemandFeatureView]: ... + @property + def request_feature_views(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[feast.core.RequestFeatureView_pb2.RequestFeatureView]: ... + @property + def stream_feature_views(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[feast.core.StreamFeatureView_pb2.StreamFeatureView]: ... + @property + def feature_services(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[feast.core.FeatureService_pb2.FeatureService]: ... + @property + def saved_datasets(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[feast.core.SavedDataset_pb2.SavedDataset]: ... + @property + def validation_references(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[feast.core.ValidationProfile_pb2.ValidationReference]: ... + @property + def infra(self) -> feast.core.InfraObject_pb2.Infra: ... + @property + def project_metadata(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___ProjectMetadata]: + """Tracking metadata of Feast by project""" + pass + registry_schema_version: typing.Text = ... + """to support migrations; incremented when schema is changed""" + + version_id: typing.Text = ... + """version id, random string generated on each update of the data; now used only for debugging purposes""" + + @property + def last_updated(self) -> google.protobuf.timestamp_pb2.Timestamp: ... + def __init__(self, + *, + entities : typing.Optional[typing.Iterable[feast.core.Entity_pb2.Entity]] = ..., + feature_tables : typing.Optional[typing.Iterable[feast.core.FeatureTable_pb2.FeatureTable]] = ..., + feature_views : typing.Optional[typing.Iterable[feast.core.FeatureView_pb2.FeatureView]] = ..., + data_sources : typing.Optional[typing.Iterable[feast.core.DataSource_pb2.DataSource]] = ..., + on_demand_feature_views : typing.Optional[typing.Iterable[feast.core.OnDemandFeatureView_pb2.OnDemandFeatureView]] = ..., + request_feature_views : typing.Optional[typing.Iterable[feast.core.RequestFeatureView_pb2.RequestFeatureView]] = ..., + stream_feature_views : typing.Optional[typing.Iterable[feast.core.StreamFeatureView_pb2.StreamFeatureView]] = ..., + feature_services : typing.Optional[typing.Iterable[feast.core.FeatureService_pb2.FeatureService]] = ..., + saved_datasets : typing.Optional[typing.Iterable[feast.core.SavedDataset_pb2.SavedDataset]] = ..., + validation_references : typing.Optional[typing.Iterable[feast.core.ValidationProfile_pb2.ValidationReference]] = ..., + infra : typing.Optional[feast.core.InfraObject_pb2.Infra] = ..., + project_metadata : typing.Optional[typing.Iterable[global___ProjectMetadata]] = ..., + registry_schema_version : typing.Text = ..., + version_id : typing.Text = ..., + last_updated : typing.Optional[google.protobuf.timestamp_pb2.Timestamp] = ..., + ) -> None: ... + def HasField(self, field_name: typing_extensions.Literal["infra",b"infra","last_updated",b"last_updated"]) -> builtins.bool: ... + def ClearField(self, field_name: typing_extensions.Literal["data_sources",b"data_sources","entities",b"entities","feature_services",b"feature_services","feature_tables",b"feature_tables","feature_views",b"feature_views","infra",b"infra","last_updated",b"last_updated","on_demand_feature_views",b"on_demand_feature_views","project_metadata",b"project_metadata","registry_schema_version",b"registry_schema_version","request_feature_views",b"request_feature_views","saved_datasets",b"saved_datasets","stream_feature_views",b"stream_feature_views","validation_references",b"validation_references","version_id",b"version_id"]) -> None: ... +global___Registry = Registry + +class ProjectMetadata(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + PROJECT_FIELD_NUMBER: builtins.int + PROJECT_UUID_FIELD_NUMBER: builtins.int + project: typing.Text = ... + project_uuid: typing.Text = ... + def __init__(self, + *, + project : typing.Text = ..., + project_uuid : typing.Text = ..., + ) -> None: ... + def ClearField(self, field_name: typing_extensions.Literal["project",b"project","project_uuid",b"project_uuid"]) -> None: ... +global___ProjectMetadata = ProjectMetadata diff --git a/sdk/python/feast/protos/feast/core/Registry_pb2_grpc.py b/sdk/python/feast/protos/feast/core/Registry_pb2_grpc.py new file mode 100644 index 0000000000..2daafffebf --- /dev/null +++ b/sdk/python/feast/protos/feast/core/Registry_pb2_grpc.py @@ -0,0 +1,4 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +"""Client and server classes corresponding to protobuf-defined services.""" +import grpc + diff --git a/sdk/python/feast/protos/feast/core/RequestFeatureView_pb2.py b/sdk/python/feast/protos/feast/core/RequestFeatureView_pb2.py new file mode 100644 index 0000000000..d68cd9fb62 --- /dev/null +++ b/sdk/python/feast/protos/feast/core/RequestFeatureView_pb2.py @@ -0,0 +1,34 @@ +# -*- coding: utf-8 -*- +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: feast/core/RequestFeatureView.proto +"""Generated protocol buffer code.""" +from google.protobuf import descriptor as _descriptor +from google.protobuf import descriptor_pool as _descriptor_pool +from google.protobuf import symbol_database as _symbol_database +from google.protobuf.internal import builder as _builder +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +from feast.protos.feast.core import DataSource_pb2 as feast_dot_core_dot_DataSource__pb2 + + +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n#feast/core/RequestFeatureView.proto\x12\nfeast.core\x1a\x1b\x66\x65\x61st/core/DataSource.proto\"F\n\x12RequestFeatureView\x12\x30\n\x04spec\x18\x01 \x01(\x0b\x32\".feast.core.RequestFeatureViewSpec\"\xf9\x01\n\x16RequestFeatureViewSpec\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0f\n\x07project\x18\x02 \x01(\t\x12\x33\n\x13request_data_source\x18\x03 \x01(\x0b\x32\x16.feast.core.DataSource\x12\x13\n\x0b\x64\x65scription\x18\x04 \x01(\t\x12:\n\x04tags\x18\x05 \x03(\x0b\x32,.feast.core.RequestFeatureViewSpec.TagsEntry\x12\r\n\x05owner\x18\x06 \x01(\t\x1a+\n\tTagsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x42\\\n\x10\x66\x65\x61st.proto.coreB\x17RequestFeatureViewProtoZ/github.com/feast-dev/feast/go/protos/feast/coreb\x06proto3') + +_globals = globals() +_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) +_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'feast.core.RequestFeatureView_pb2', _globals) +if _descriptor._USE_C_DESCRIPTORS == False: + + DESCRIPTOR._options = None + DESCRIPTOR._serialized_options = b'\n\020feast.proto.coreB\027RequestFeatureViewProtoZ/github.com/feast-dev/feast/go/protos/feast/core' + _REQUESTFEATUREVIEWSPEC_TAGSENTRY._options = None + _REQUESTFEATUREVIEWSPEC_TAGSENTRY._serialized_options = b'8\001' + _globals['_REQUESTFEATUREVIEW']._serialized_start=80 + _globals['_REQUESTFEATUREVIEW']._serialized_end=150 + _globals['_REQUESTFEATUREVIEWSPEC']._serialized_start=153 + _globals['_REQUESTFEATUREVIEWSPEC']._serialized_end=402 + _globals['_REQUESTFEATUREVIEWSPEC_TAGSENTRY']._serialized_start=359 + _globals['_REQUESTFEATUREVIEWSPEC_TAGSENTRY']._serialized_end=402 +# @@protoc_insertion_point(module_scope) diff --git a/sdk/python/feast/protos/feast/core/RequestFeatureView_pb2.pyi b/sdk/python/feast/protos/feast/core/RequestFeatureView_pb2.pyi new file mode 100644 index 0000000000..a526d0baa8 --- /dev/null +++ b/sdk/python/feast/protos/feast/core/RequestFeatureView_pb2.pyi @@ -0,0 +1,83 @@ +""" +@generated by mypy-protobuf. Do not edit manually! +isort:skip_file +""" +import builtins +import feast.core.DataSource_pb2 +import google.protobuf.descriptor +import google.protobuf.internal.containers +import google.protobuf.message +import typing +import typing_extensions + +DESCRIPTOR: google.protobuf.descriptor.FileDescriptor = ... + +class RequestFeatureView(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + SPEC_FIELD_NUMBER: builtins.int + @property + def spec(self) -> global___RequestFeatureViewSpec: + """User-specified specifications of this feature view.""" + pass + def __init__(self, + *, + spec : typing.Optional[global___RequestFeatureViewSpec] = ..., + ) -> None: ... + def HasField(self, field_name: typing_extensions.Literal["spec",b"spec"]) -> builtins.bool: ... + def ClearField(self, field_name: typing_extensions.Literal["spec",b"spec"]) -> None: ... +global___RequestFeatureView = RequestFeatureView + +class RequestFeatureViewSpec(google.protobuf.message.Message): + """Next available id: 7""" + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + class TagsEntry(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + KEY_FIELD_NUMBER: builtins.int + VALUE_FIELD_NUMBER: builtins.int + key: typing.Text = ... + value: typing.Text = ... + def __init__(self, + *, + key : typing.Text = ..., + value : typing.Text = ..., + ) -> None: ... + def ClearField(self, field_name: typing_extensions.Literal["key",b"key","value",b"value"]) -> None: ... + + NAME_FIELD_NUMBER: builtins.int + PROJECT_FIELD_NUMBER: builtins.int + REQUEST_DATA_SOURCE_FIELD_NUMBER: builtins.int + DESCRIPTION_FIELD_NUMBER: builtins.int + TAGS_FIELD_NUMBER: builtins.int + OWNER_FIELD_NUMBER: builtins.int + name: typing.Text = ... + """Name of the feature view. Must be unique. Not updated.""" + + project: typing.Text = ... + """Name of Feast project that this feature view belongs to.""" + + @property + def request_data_source(self) -> feast.core.DataSource_pb2.DataSource: + """Request data which contains the underlying data schema and list of associated features""" + pass + description: typing.Text = ... + """Description of the request feature view.""" + + @property + def tags(self) -> google.protobuf.internal.containers.ScalarMap[typing.Text, typing.Text]: + """User defined metadata.""" + pass + owner: typing.Text = ... + """Owner of the request feature view.""" + + def __init__(self, + *, + name : typing.Text = ..., + project : typing.Text = ..., + request_data_source : typing.Optional[feast.core.DataSource_pb2.DataSource] = ..., + description : typing.Text = ..., + tags : typing.Optional[typing.Mapping[typing.Text, typing.Text]] = ..., + owner : typing.Text = ..., + ) -> None: ... + def HasField(self, field_name: typing_extensions.Literal["request_data_source",b"request_data_source"]) -> builtins.bool: ... + def ClearField(self, field_name: typing_extensions.Literal["description",b"description","name",b"name","owner",b"owner","project",b"project","request_data_source",b"request_data_source","tags",b"tags"]) -> None: ... +global___RequestFeatureViewSpec = RequestFeatureViewSpec diff --git a/sdk/python/feast/protos/feast/core/RequestFeatureView_pb2_grpc.py b/sdk/python/feast/protos/feast/core/RequestFeatureView_pb2_grpc.py new file mode 100644 index 0000000000..2daafffebf --- /dev/null +++ b/sdk/python/feast/protos/feast/core/RequestFeatureView_pb2_grpc.py @@ -0,0 +1,4 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +"""Client and server classes corresponding to protobuf-defined services.""" +import grpc + diff --git a/sdk/python/feast/protos/feast/core/SavedDataset_pb2.py b/sdk/python/feast/protos/feast/core/SavedDataset_pb2.py new file mode 100644 index 0000000000..535d2f5772 --- /dev/null +++ b/sdk/python/feast/protos/feast/core/SavedDataset_pb2.py @@ -0,0 +1,39 @@ +# -*- coding: utf-8 -*- +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: feast/core/SavedDataset.proto +"""Generated protocol buffer code.""" +from google.protobuf import descriptor as _descriptor +from google.protobuf import descriptor_pool as _descriptor_pool +from google.protobuf import symbol_database as _symbol_database +from google.protobuf.internal import builder as _builder +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +from google.protobuf import timestamp_pb2 as google_dot_protobuf_dot_timestamp__pb2 +from feast.protos.feast.core import DataSource_pb2 as feast_dot_core_dot_DataSource__pb2 + + +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1d\x66\x65\x61st/core/SavedDataset.proto\x12\nfeast.core\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x1b\x66\x65\x61st/core/DataSource.proto\"\xa5\x02\n\x10SavedDatasetSpec\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0f\n\x07project\x18\x02 \x01(\t\x12\x10\n\x08\x66\x65\x61tures\x18\x03 \x03(\t\x12\x11\n\tjoin_keys\x18\x04 \x03(\t\x12\x1a\n\x12\x66ull_feature_names\x18\x05 \x01(\x08\x12\x30\n\x07storage\x18\x06 \x01(\x0b\x32\x1f.feast.core.SavedDatasetStorage\x12\x1c\n\x14\x66\x65\x61ture_service_name\x18\x08 \x01(\t\x12\x34\n\x04tags\x18\x07 \x03(\x0b\x32&.feast.core.SavedDatasetSpec.TagsEntry\x1a+\n\tTagsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\xa9\x04\n\x13SavedDatasetStorage\x12:\n\x0c\x66ile_storage\x18\x04 \x01(\x0b\x32\".feast.core.DataSource.FileOptionsH\x00\x12\x42\n\x10\x62igquery_storage\x18\x05 \x01(\x0b\x32&.feast.core.DataSource.BigQueryOptionsH\x00\x12\x42\n\x10redshift_storage\x18\x06 \x01(\x0b\x32&.feast.core.DataSource.RedshiftOptionsH\x00\x12\x44\n\x11snowflake_storage\x18\x07 \x01(\x0b\x32\'.feast.core.DataSource.SnowflakeOptionsH\x00\x12<\n\rtrino_storage\x18\x08 \x01(\x0b\x32#.feast.core.DataSource.TrinoOptionsH\x00\x12<\n\rspark_storage\x18\t \x01(\x0b\x32#.feast.core.DataSource.SparkOptionsH\x00\x12\x44\n\x0e\x63ustom_storage\x18\n \x01(\x0b\x32*.feast.core.DataSource.CustomSourceOptionsH\x00\x12>\n\x0e\x61thena_storage\x18\x0b \x01(\x0b\x32$.feast.core.DataSource.AthenaOptionsH\x00\x42\x06\n\x04kind\"\xf7\x01\n\x10SavedDatasetMeta\x12\x35\n\x11\x63reated_timestamp\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12:\n\x16last_updated_timestamp\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x37\n\x13min_event_timestamp\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x37\n\x13max_event_timestamp\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\"f\n\x0cSavedDataset\x12*\n\x04spec\x18\x01 \x01(\x0b\x32\x1c.feast.core.SavedDatasetSpec\x12*\n\x04meta\x18\x02 \x01(\x0b\x32\x1c.feast.core.SavedDatasetMetaBV\n\x10\x66\x65\x61st.proto.coreB\x11SavedDatasetProtoZ/github.com/feast-dev/feast/go/protos/feast/coreb\x06proto3') + +_globals = globals() +_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) +_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'feast.core.SavedDataset_pb2', _globals) +if _descriptor._USE_C_DESCRIPTORS == False: + + DESCRIPTOR._options = None + DESCRIPTOR._serialized_options = b'\n\020feast.proto.coreB\021SavedDatasetProtoZ/github.com/feast-dev/feast/go/protos/feast/core' + _SAVEDDATASETSPEC_TAGSENTRY._options = None + _SAVEDDATASETSPEC_TAGSENTRY._serialized_options = b'8\001' + _globals['_SAVEDDATASETSPEC']._serialized_start=108 + _globals['_SAVEDDATASETSPEC']._serialized_end=401 + _globals['_SAVEDDATASETSPEC_TAGSENTRY']._serialized_start=358 + _globals['_SAVEDDATASETSPEC_TAGSENTRY']._serialized_end=401 + _globals['_SAVEDDATASETSTORAGE']._serialized_start=404 + _globals['_SAVEDDATASETSTORAGE']._serialized_end=957 + _globals['_SAVEDDATASETMETA']._serialized_start=960 + _globals['_SAVEDDATASETMETA']._serialized_end=1207 + _globals['_SAVEDDATASET']._serialized_start=1209 + _globals['_SAVEDDATASET']._serialized_end=1311 +# @@protoc_insertion_point(module_scope) diff --git a/sdk/python/feast/protos/feast/core/SavedDataset_pb2.pyi b/sdk/python/feast/protos/feast/core/SavedDataset_pb2.pyi new file mode 100644 index 0000000000..5b7fd06bf0 --- /dev/null +++ b/sdk/python/feast/protos/feast/core/SavedDataset_pb2.pyi @@ -0,0 +1,170 @@ +""" +@generated by mypy-protobuf. Do not edit manually! +isort:skip_file +""" +import builtins +import feast.core.DataSource_pb2 +import google.protobuf.descriptor +import google.protobuf.internal.containers +import google.protobuf.message +import google.protobuf.timestamp_pb2 +import typing +import typing_extensions + +DESCRIPTOR: google.protobuf.descriptor.FileDescriptor = ... + +class SavedDatasetSpec(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + class TagsEntry(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + KEY_FIELD_NUMBER: builtins.int + VALUE_FIELD_NUMBER: builtins.int + key: typing.Text = ... + value: typing.Text = ... + def __init__(self, + *, + key : typing.Text = ..., + value : typing.Text = ..., + ) -> None: ... + def ClearField(self, field_name: typing_extensions.Literal["key",b"key","value",b"value"]) -> None: ... + + NAME_FIELD_NUMBER: builtins.int + PROJECT_FIELD_NUMBER: builtins.int + FEATURES_FIELD_NUMBER: builtins.int + JOIN_KEYS_FIELD_NUMBER: builtins.int + FULL_FEATURE_NAMES_FIELD_NUMBER: builtins.int + STORAGE_FIELD_NUMBER: builtins.int + FEATURE_SERVICE_NAME_FIELD_NUMBER: builtins.int + TAGS_FIELD_NUMBER: builtins.int + name: typing.Text = ... + """Name of the dataset. Must be unique since it's possible to overwrite dataset by name""" + + project: typing.Text = ... + """Name of Feast project that this Dataset belongs to.""" + + @property + def features(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[typing.Text]: + """list of feature references with format ":" """ + pass + @property + def join_keys(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[typing.Text]: + """entity columns + request columns from all feature views used during retrieval""" + pass + full_feature_names: builtins.bool = ... + """Whether full feature names are used in stored data""" + + @property + def storage(self) -> global___SavedDatasetStorage: ... + feature_service_name: typing.Text = ... + """Optional and only populated if generated from a feature service fetch""" + + @property + def tags(self) -> google.protobuf.internal.containers.ScalarMap[typing.Text, typing.Text]: + """User defined metadata""" + pass + def __init__(self, + *, + name : typing.Text = ..., + project : typing.Text = ..., + features : typing.Optional[typing.Iterable[typing.Text]] = ..., + join_keys : typing.Optional[typing.Iterable[typing.Text]] = ..., + full_feature_names : builtins.bool = ..., + storage : typing.Optional[global___SavedDatasetStorage] = ..., + feature_service_name : typing.Text = ..., + tags : typing.Optional[typing.Mapping[typing.Text, typing.Text]] = ..., + ) -> None: ... + def HasField(self, field_name: typing_extensions.Literal["storage",b"storage"]) -> builtins.bool: ... + def ClearField(self, field_name: typing_extensions.Literal["feature_service_name",b"feature_service_name","features",b"features","full_feature_names",b"full_feature_names","join_keys",b"join_keys","name",b"name","project",b"project","storage",b"storage","tags",b"tags"]) -> None: ... +global___SavedDatasetSpec = SavedDatasetSpec + +class SavedDatasetStorage(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + FILE_STORAGE_FIELD_NUMBER: builtins.int + BIGQUERY_STORAGE_FIELD_NUMBER: builtins.int + REDSHIFT_STORAGE_FIELD_NUMBER: builtins.int + SNOWFLAKE_STORAGE_FIELD_NUMBER: builtins.int + TRINO_STORAGE_FIELD_NUMBER: builtins.int + SPARK_STORAGE_FIELD_NUMBER: builtins.int + CUSTOM_STORAGE_FIELD_NUMBER: builtins.int + ATHENA_STORAGE_FIELD_NUMBER: builtins.int + @property + def file_storage(self) -> feast.core.DataSource_pb2.DataSource.FileOptions: ... + @property + def bigquery_storage(self) -> feast.core.DataSource_pb2.DataSource.BigQueryOptions: ... + @property + def redshift_storage(self) -> feast.core.DataSource_pb2.DataSource.RedshiftOptions: ... + @property + def snowflake_storage(self) -> feast.core.DataSource_pb2.DataSource.SnowflakeOptions: ... + @property + def trino_storage(self) -> feast.core.DataSource_pb2.DataSource.TrinoOptions: ... + @property + def spark_storage(self) -> feast.core.DataSource_pb2.DataSource.SparkOptions: ... + @property + def custom_storage(self) -> feast.core.DataSource_pb2.DataSource.CustomSourceOptions: ... + @property + def athena_storage(self) -> feast.core.DataSource_pb2.DataSource.AthenaOptions: ... + def __init__(self, + *, + file_storage : typing.Optional[feast.core.DataSource_pb2.DataSource.FileOptions] = ..., + bigquery_storage : typing.Optional[feast.core.DataSource_pb2.DataSource.BigQueryOptions] = ..., + redshift_storage : typing.Optional[feast.core.DataSource_pb2.DataSource.RedshiftOptions] = ..., + snowflake_storage : typing.Optional[feast.core.DataSource_pb2.DataSource.SnowflakeOptions] = ..., + trino_storage : typing.Optional[feast.core.DataSource_pb2.DataSource.TrinoOptions] = ..., + spark_storage : typing.Optional[feast.core.DataSource_pb2.DataSource.SparkOptions] = ..., + custom_storage : typing.Optional[feast.core.DataSource_pb2.DataSource.CustomSourceOptions] = ..., + athena_storage : typing.Optional[feast.core.DataSource_pb2.DataSource.AthenaOptions] = ..., + ) -> None: ... + def HasField(self, field_name: typing_extensions.Literal["athena_storage",b"athena_storage","bigquery_storage",b"bigquery_storage","custom_storage",b"custom_storage","file_storage",b"file_storage","kind",b"kind","redshift_storage",b"redshift_storage","snowflake_storage",b"snowflake_storage","spark_storage",b"spark_storage","trino_storage",b"trino_storage"]) -> builtins.bool: ... + def ClearField(self, field_name: typing_extensions.Literal["athena_storage",b"athena_storage","bigquery_storage",b"bigquery_storage","custom_storage",b"custom_storage","file_storage",b"file_storage","kind",b"kind","redshift_storage",b"redshift_storage","snowflake_storage",b"snowflake_storage","spark_storage",b"spark_storage","trino_storage",b"trino_storage"]) -> None: ... + def WhichOneof(self, oneof_group: typing_extensions.Literal["kind",b"kind"]) -> typing.Optional[typing_extensions.Literal["file_storage","bigquery_storage","redshift_storage","snowflake_storage","trino_storage","spark_storage","custom_storage","athena_storage"]]: ... +global___SavedDatasetStorage = SavedDatasetStorage + +class SavedDatasetMeta(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + CREATED_TIMESTAMP_FIELD_NUMBER: builtins.int + LAST_UPDATED_TIMESTAMP_FIELD_NUMBER: builtins.int + MIN_EVENT_TIMESTAMP_FIELD_NUMBER: builtins.int + MAX_EVENT_TIMESTAMP_FIELD_NUMBER: builtins.int + @property + def created_timestamp(self) -> google.protobuf.timestamp_pb2.Timestamp: + """Time when this saved dataset is created""" + pass + @property + def last_updated_timestamp(self) -> google.protobuf.timestamp_pb2.Timestamp: + """Time when this saved dataset is last updated""" + pass + @property + def min_event_timestamp(self) -> google.protobuf.timestamp_pb2.Timestamp: + """Min timestamp in the dataset (needed for retrieval)""" + pass + @property + def max_event_timestamp(self) -> google.protobuf.timestamp_pb2.Timestamp: + """Max timestamp in the dataset (needed for retrieval)""" + pass + def __init__(self, + *, + created_timestamp : typing.Optional[google.protobuf.timestamp_pb2.Timestamp] = ..., + last_updated_timestamp : typing.Optional[google.protobuf.timestamp_pb2.Timestamp] = ..., + min_event_timestamp : typing.Optional[google.protobuf.timestamp_pb2.Timestamp] = ..., + max_event_timestamp : typing.Optional[google.protobuf.timestamp_pb2.Timestamp] = ..., + ) -> None: ... + def HasField(self, field_name: typing_extensions.Literal["created_timestamp",b"created_timestamp","last_updated_timestamp",b"last_updated_timestamp","max_event_timestamp",b"max_event_timestamp","min_event_timestamp",b"min_event_timestamp"]) -> builtins.bool: ... + def ClearField(self, field_name: typing_extensions.Literal["created_timestamp",b"created_timestamp","last_updated_timestamp",b"last_updated_timestamp","max_event_timestamp",b"max_event_timestamp","min_event_timestamp",b"min_event_timestamp"]) -> None: ... +global___SavedDatasetMeta = SavedDatasetMeta + +class SavedDataset(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + SPEC_FIELD_NUMBER: builtins.int + META_FIELD_NUMBER: builtins.int + @property + def spec(self) -> global___SavedDatasetSpec: ... + @property + def meta(self) -> global___SavedDatasetMeta: ... + def __init__(self, + *, + spec : typing.Optional[global___SavedDatasetSpec] = ..., + meta : typing.Optional[global___SavedDatasetMeta] = ..., + ) -> None: ... + def HasField(self, field_name: typing_extensions.Literal["meta",b"meta","spec",b"spec"]) -> builtins.bool: ... + def ClearField(self, field_name: typing_extensions.Literal["meta",b"meta","spec",b"spec"]) -> None: ... +global___SavedDataset = SavedDataset diff --git a/sdk/python/feast/protos/feast/core/SavedDataset_pb2_grpc.py b/sdk/python/feast/protos/feast/core/SavedDataset_pb2_grpc.py new file mode 100644 index 0000000000..2daafffebf --- /dev/null +++ b/sdk/python/feast/protos/feast/core/SavedDataset_pb2_grpc.py @@ -0,0 +1,4 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +"""Client and server classes corresponding to protobuf-defined services.""" +import grpc + diff --git a/sdk/python/feast/protos/feast/core/SqliteTable_pb2.py b/sdk/python/feast/protos/feast/core/SqliteTable_pb2.py new file mode 100644 index 0000000000..a61f866b51 --- /dev/null +++ b/sdk/python/feast/protos/feast/core/SqliteTable_pb2.py @@ -0,0 +1,27 @@ +# -*- coding: utf-8 -*- +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: feast/core/SqliteTable.proto +"""Generated protocol buffer code.""" +from google.protobuf import descriptor as _descriptor +from google.protobuf import descriptor_pool as _descriptor_pool +from google.protobuf import symbol_database as _symbol_database +from google.protobuf.internal import builder as _builder +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + + + +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1c\x66\x65\x61st/core/SqliteTable.proto\x12\nfeast.core\")\n\x0bSqliteTable\x12\x0c\n\x04path\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\tBU\n\x10\x66\x65\x61st.proto.coreB\x10SqliteTableProtoZ/github.com/feast-dev/feast/go/protos/feast/coreb\x06proto3') + +_globals = globals() +_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) +_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'feast.core.SqliteTable_pb2', _globals) +if _descriptor._USE_C_DESCRIPTORS == False: + + DESCRIPTOR._options = None + DESCRIPTOR._serialized_options = b'\n\020feast.proto.coreB\020SqliteTableProtoZ/github.com/feast-dev/feast/go/protos/feast/core' + _globals['_SQLITETABLE']._serialized_start=44 + _globals['_SQLITETABLE']._serialized_end=85 +# @@protoc_insertion_point(module_scope) diff --git a/sdk/python/feast/protos/feast/core/SqliteTable_pb2.pyi b/sdk/python/feast/protos/feast/core/SqliteTable_pb2.pyi new file mode 100644 index 0000000000..7fa0cac693 --- /dev/null +++ b/sdk/python/feast/protos/feast/core/SqliteTable_pb2.pyi @@ -0,0 +1,30 @@ +""" +@generated by mypy-protobuf. Do not edit manually! +isort:skip_file +""" +import builtins +import google.protobuf.descriptor +import google.protobuf.message +import typing +import typing_extensions + +DESCRIPTOR: google.protobuf.descriptor.FileDescriptor = ... + +class SqliteTable(google.protobuf.message.Message): + """Represents a Sqlite table""" + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + PATH_FIELD_NUMBER: builtins.int + NAME_FIELD_NUMBER: builtins.int + path: typing.Text = ... + """Absolute path of the table""" + + name: typing.Text = ... + """Name of the table""" + + def __init__(self, + *, + path : typing.Text = ..., + name : typing.Text = ..., + ) -> None: ... + def ClearField(self, field_name: typing_extensions.Literal["name",b"name","path",b"path"]) -> None: ... +global___SqliteTable = SqliteTable diff --git a/sdk/python/feast/protos/feast/core/SqliteTable_pb2_grpc.py b/sdk/python/feast/protos/feast/core/SqliteTable_pb2_grpc.py new file mode 100644 index 0000000000..2daafffebf --- /dev/null +++ b/sdk/python/feast/protos/feast/core/SqliteTable_pb2_grpc.py @@ -0,0 +1,4 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +"""Client and server classes corresponding to protobuf-defined services.""" +import grpc + diff --git a/sdk/python/feast/protos/feast/core/Store_pb2.py b/sdk/python/feast/protos/feast/core/Store_pb2.py new file mode 100644 index 0000000000..4169921bc2 --- /dev/null +++ b/sdk/python/feast/protos/feast/core/Store_pb2.py @@ -0,0 +1,37 @@ +# -*- coding: utf-8 -*- +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: feast/core/Store.proto +"""Generated protocol buffer code.""" +from google.protobuf import descriptor as _descriptor +from google.protobuf import descriptor_pool as _descriptor_pool +from google.protobuf import symbol_database as _symbol_database +from google.protobuf.internal import builder as _builder +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + + + +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x16\x66\x65\x61st/core/Store.proto\x12\nfeast.core\"\xfd\x06\n\x05Store\x12\x0c\n\x04name\x18\x01 \x01(\t\x12)\n\x04type\x18\x02 \x01(\x0e\x32\x1b.feast.core.Store.StoreType\x12\x35\n\rsubscriptions\x18\x04 \x03(\x0b\x32\x1e.feast.core.Store.Subscription\x12\x35\n\x0credis_config\x18\x0b \x01(\x0b\x32\x1d.feast.core.Store.RedisConfigH\x00\x12\x44\n\x14redis_cluster_config\x18\x0e \x01(\x0b\x32$.feast.core.Store.RedisClusterConfigH\x00\x1a\x88\x01\n\x0bRedisConfig\x12\x0c\n\x04host\x18\x01 \x01(\t\x12\x0c\n\x04port\x18\x02 \x01(\x05\x12\x1a\n\x12initial_backoff_ms\x18\x03 \x01(\x05\x12\x13\n\x0bmax_retries\x18\x04 \x01(\x05\x12\x1f\n\x17\x66lush_frequency_seconds\x18\x05 \x01(\x05\x12\x0b\n\x03ssl\x18\x06 \x01(\x08\x1a\xdb\x02\n\x12RedisClusterConfig\x12\x19\n\x11\x63onnection_string\x18\x01 \x01(\t\x12\x1a\n\x12initial_backoff_ms\x18\x02 \x01(\x05\x12\x13\n\x0bmax_retries\x18\x03 \x01(\x05\x12\x1f\n\x17\x66lush_frequency_seconds\x18\x04 \x01(\x05\x12\x12\n\nkey_prefix\x18\x05 \x01(\t\x12\x17\n\x0f\x65nable_fallback\x18\x06 \x01(\x08\x12\x17\n\x0f\x66\x61llback_prefix\x18\x07 \x01(\t\x12@\n\tread_from\x18\x08 \x01(\x0e\x32-.feast.core.Store.RedisClusterConfig.ReadFrom\"P\n\x08ReadFrom\x12\n\n\x06MASTER\x10\x00\x12\x14\n\x10MASTER_PREFERRED\x10\x01\x12\x0b\n\x07REPLICA\x10\x02\x12\x15\n\x11REPLICA_PREFERRED\x10\x03\x1a\x44\n\x0cSubscription\x12\x0f\n\x07project\x18\x03 \x01(\t\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0f\n\x07\x65xclude\x18\x04 \x01(\x08J\x04\x08\x02\x10\x03\"N\n\tStoreType\x12\x0b\n\x07INVALID\x10\x00\x12\t\n\x05REDIS\x10\x01\x12\x11\n\rREDIS_CLUSTER\x10\x04\"\x04\x08\x02\x10\x02\"\x04\x08\x03\x10\x03\"\x04\x08\x0c\x10\x0c\"\x04\x08\r\x10\rB\x08\n\x06\x63onfigBO\n\x10\x66\x65\x61st.proto.coreB\nStoreProtoZ/github.com/feast-dev/feast/go/protos/feast/coreb\x06proto3') + +_globals = globals() +_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) +_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'feast.core.Store_pb2', _globals) +if _descriptor._USE_C_DESCRIPTORS == False: + + DESCRIPTOR._options = None + DESCRIPTOR._serialized_options = b'\n\020feast.proto.coreB\nStoreProtoZ/github.com/feast-dev/feast/go/protos/feast/core' + _globals['_STORE']._serialized_start=39 + _globals['_STORE']._serialized_end=932 + _globals['_STORE_REDISCONFIG']._serialized_start=286 + _globals['_STORE_REDISCONFIG']._serialized_end=422 + _globals['_STORE_REDISCLUSTERCONFIG']._serialized_start=425 + _globals['_STORE_REDISCLUSTERCONFIG']._serialized_end=772 + _globals['_STORE_REDISCLUSTERCONFIG_READFROM']._serialized_start=692 + _globals['_STORE_REDISCLUSTERCONFIG_READFROM']._serialized_end=772 + _globals['_STORE_SUBSCRIPTION']._serialized_start=774 + _globals['_STORE_SUBSCRIPTION']._serialized_end=842 + _globals['_STORE_STORETYPE']._serialized_start=844 + _globals['_STORE_STORETYPE']._serialized_end=922 +# @@protoc_insertion_point(module_scope) diff --git a/sdk/python/feast/protos/feast/core/Store_pb2.pyi b/sdk/python/feast/protos/feast/core/Store_pb2.pyi new file mode 100644 index 0000000000..19896b31fc --- /dev/null +++ b/sdk/python/feast/protos/feast/core/Store_pb2.pyi @@ -0,0 +1,220 @@ +""" +@generated by mypy-protobuf. Do not edit manually! +isort:skip_file +""" +import builtins +import google.protobuf.descriptor +import google.protobuf.internal.containers +import google.protobuf.internal.enum_type_wrapper +import google.protobuf.message +import typing +import typing_extensions + +DESCRIPTOR: google.protobuf.descriptor.FileDescriptor = ... + +class Store(google.protobuf.message.Message): + """Store provides a location where Feast reads and writes feature values. + Feature values will be written to the Store in the form of FeatureRow elements. + The way FeatureRow is encoded and decoded when it is written to and read from + the Store depends on the type of the Store. + """ + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + class _StoreType: + ValueType = typing.NewType('ValueType', builtins.int) + V: typing_extensions.TypeAlias = ValueType + class _StoreTypeEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_StoreType.ValueType], builtins.type): + DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor = ... + INVALID: Store.StoreType.ValueType = ... # 0 + REDIS: Store.StoreType.ValueType = ... # 1 + """Redis stores a FeatureRow element as a key, value pair. + + The Redis data types used (https://redis.io/topics/data-types): + - key: STRING + - value: STRING + + Encodings: + - key: byte array of RedisKey (refer to feast.storage.RedisKeyV2) + - value: Redis hashmap + """ + + REDIS_CLUSTER: Store.StoreType.ValueType = ... # 4 + class StoreType(_StoreType, metaclass=_StoreTypeEnumTypeWrapper): + pass + + INVALID: Store.StoreType.ValueType = ... # 0 + REDIS: Store.StoreType.ValueType = ... # 1 + """Redis stores a FeatureRow element as a key, value pair. + + The Redis data types used (https://redis.io/topics/data-types): + - key: STRING + - value: STRING + + Encodings: + - key: byte array of RedisKey (refer to feast.storage.RedisKeyV2) + - value: Redis hashmap + """ + + REDIS_CLUSTER: Store.StoreType.ValueType = ... # 4 + + class RedisConfig(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + HOST_FIELD_NUMBER: builtins.int + PORT_FIELD_NUMBER: builtins.int + INITIAL_BACKOFF_MS_FIELD_NUMBER: builtins.int + MAX_RETRIES_FIELD_NUMBER: builtins.int + FLUSH_FREQUENCY_SECONDS_FIELD_NUMBER: builtins.int + SSL_FIELD_NUMBER: builtins.int + host: typing.Text = ... + port: builtins.int = ... + initial_backoff_ms: builtins.int = ... + """Optional. The number of milliseconds to wait before retrying failed Redis connection. + By default, Feast uses exponential backoff policy and "initial_backoff_ms" sets the initial wait duration. + """ + + max_retries: builtins.int = ... + """Optional. Maximum total number of retries for connecting to Redis. Default to zero retries.""" + + flush_frequency_seconds: builtins.int = ... + """Optional. How often flush data to redis""" + + ssl: builtins.bool = ... + """Optional. Connect over SSL.""" + + def __init__(self, + *, + host : typing.Text = ..., + port : builtins.int = ..., + initial_backoff_ms : builtins.int = ..., + max_retries : builtins.int = ..., + flush_frequency_seconds : builtins.int = ..., + ssl : builtins.bool = ..., + ) -> None: ... + def ClearField(self, field_name: typing_extensions.Literal["flush_frequency_seconds",b"flush_frequency_seconds","host",b"host","initial_backoff_ms",b"initial_backoff_ms","max_retries",b"max_retries","port",b"port","ssl",b"ssl"]) -> None: ... + + class RedisClusterConfig(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + class _ReadFrom: + ValueType = typing.NewType('ValueType', builtins.int) + V: typing_extensions.TypeAlias = ValueType + class _ReadFromEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_ReadFrom.ValueType], builtins.type): + DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor = ... + MASTER: Store.RedisClusterConfig.ReadFrom.ValueType = ... # 0 + MASTER_PREFERRED: Store.RedisClusterConfig.ReadFrom.ValueType = ... # 1 + REPLICA: Store.RedisClusterConfig.ReadFrom.ValueType = ... # 2 + REPLICA_PREFERRED: Store.RedisClusterConfig.ReadFrom.ValueType = ... # 3 + class ReadFrom(_ReadFrom, metaclass=_ReadFromEnumTypeWrapper): + """Optional. Priority of nodes when reading from cluster""" + pass + + MASTER: Store.RedisClusterConfig.ReadFrom.ValueType = ... # 0 + MASTER_PREFERRED: Store.RedisClusterConfig.ReadFrom.ValueType = ... # 1 + REPLICA: Store.RedisClusterConfig.ReadFrom.ValueType = ... # 2 + REPLICA_PREFERRED: Store.RedisClusterConfig.ReadFrom.ValueType = ... # 3 + + CONNECTION_STRING_FIELD_NUMBER: builtins.int + INITIAL_BACKOFF_MS_FIELD_NUMBER: builtins.int + MAX_RETRIES_FIELD_NUMBER: builtins.int + FLUSH_FREQUENCY_SECONDS_FIELD_NUMBER: builtins.int + KEY_PREFIX_FIELD_NUMBER: builtins.int + ENABLE_FALLBACK_FIELD_NUMBER: builtins.int + FALLBACK_PREFIX_FIELD_NUMBER: builtins.int + READ_FROM_FIELD_NUMBER: builtins.int + connection_string: typing.Text = ... + """List of Redis Uri for all the nodes in Redis Cluster, comma separated. Eg. host1:6379, host2:6379""" + + initial_backoff_ms: builtins.int = ... + max_retries: builtins.int = ... + flush_frequency_seconds: builtins.int = ... + """Optional. How often flush data to redis""" + + key_prefix: typing.Text = ... + """Optional. Append a prefix to the Redis Key""" + + enable_fallback: builtins.bool = ... + """Optional. Enable fallback to another key prefix if the original key is not present. + Useful for migrating key prefix without re-ingestion. Disabled by default. + """ + + fallback_prefix: typing.Text = ... + """Optional. This would be the fallback prefix to use if enable_fallback is true.""" + + read_from: global___Store.RedisClusterConfig.ReadFrom.ValueType = ... + def __init__(self, + *, + connection_string : typing.Text = ..., + initial_backoff_ms : builtins.int = ..., + max_retries : builtins.int = ..., + flush_frequency_seconds : builtins.int = ..., + key_prefix : typing.Text = ..., + enable_fallback : builtins.bool = ..., + fallback_prefix : typing.Text = ..., + read_from : global___Store.RedisClusterConfig.ReadFrom.ValueType = ..., + ) -> None: ... + def ClearField(self, field_name: typing_extensions.Literal["connection_string",b"connection_string","enable_fallback",b"enable_fallback","fallback_prefix",b"fallback_prefix","flush_frequency_seconds",b"flush_frequency_seconds","initial_backoff_ms",b"initial_backoff_ms","key_prefix",b"key_prefix","max_retries",b"max_retries","read_from",b"read_from"]) -> None: ... + + class Subscription(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + PROJECT_FIELD_NUMBER: builtins.int + NAME_FIELD_NUMBER: builtins.int + EXCLUDE_FIELD_NUMBER: builtins.int + project: typing.Text = ... + """Name of project that the feature sets belongs to. This can be one of + - [project_name] + - * + If an asterisk is provided, filtering on projects will be disabled. All projects will + be matched. It is NOT possible to provide an asterisk with a string in order to do + pattern matching. + """ + + name: typing.Text = ... + """Name of the desired feature set. Asterisks can be used as wildcards in the name. + Matching on names is only permitted if a specific project is defined. It is disallowed + If the project name is set to "*" + e.g. + - * can be used to match all feature sets + - my-feature-set* can be used to match all features prefixed by "my-feature-set" + - my-feature-set-6 can be used to select a single feature set + """ + + exclude: builtins.bool = ... + """All matches with exclude enabled will be filtered out instead of added""" + + def __init__(self, + *, + project : typing.Text = ..., + name : typing.Text = ..., + exclude : builtins.bool = ..., + ) -> None: ... + def ClearField(self, field_name: typing_extensions.Literal["exclude",b"exclude","name",b"name","project",b"project"]) -> None: ... + + NAME_FIELD_NUMBER: builtins.int + TYPE_FIELD_NUMBER: builtins.int + SUBSCRIPTIONS_FIELD_NUMBER: builtins.int + REDIS_CONFIG_FIELD_NUMBER: builtins.int + REDIS_CLUSTER_CONFIG_FIELD_NUMBER: builtins.int + name: typing.Text = ... + """Name of the store.""" + + type: global___Store.StoreType.ValueType = ... + """Type of store.""" + + @property + def subscriptions(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Store.Subscription]: + """Feature sets to subscribe to.""" + pass + @property + def redis_config(self) -> global___Store.RedisConfig: ... + @property + def redis_cluster_config(self) -> global___Store.RedisClusterConfig: ... + def __init__(self, + *, + name : typing.Text = ..., + type : global___Store.StoreType.ValueType = ..., + subscriptions : typing.Optional[typing.Iterable[global___Store.Subscription]] = ..., + redis_config : typing.Optional[global___Store.RedisConfig] = ..., + redis_cluster_config : typing.Optional[global___Store.RedisClusterConfig] = ..., + ) -> None: ... + def HasField(self, field_name: typing_extensions.Literal["config",b"config","redis_cluster_config",b"redis_cluster_config","redis_config",b"redis_config"]) -> builtins.bool: ... + def ClearField(self, field_name: typing_extensions.Literal["config",b"config","name",b"name","redis_cluster_config",b"redis_cluster_config","redis_config",b"redis_config","subscriptions",b"subscriptions","type",b"type"]) -> None: ... + def WhichOneof(self, oneof_group: typing_extensions.Literal["config",b"config"]) -> typing.Optional[typing_extensions.Literal["redis_config","redis_cluster_config"]]: ... +global___Store = Store diff --git a/sdk/python/feast/protos/feast/core/Store_pb2_grpc.py b/sdk/python/feast/protos/feast/core/Store_pb2_grpc.py new file mode 100644 index 0000000000..2daafffebf --- /dev/null +++ b/sdk/python/feast/protos/feast/core/Store_pb2_grpc.py @@ -0,0 +1,4 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +"""Client and server classes corresponding to protobuf-defined services.""" +import grpc + diff --git a/sdk/python/feast/protos/feast/core/StreamFeatureView_pb2.py b/sdk/python/feast/protos/feast/core/StreamFeatureView_pb2.py new file mode 100644 index 0000000000..1bada7860e --- /dev/null +++ b/sdk/python/feast/protos/feast/core/StreamFeatureView_pb2.py @@ -0,0 +1,39 @@ +# -*- coding: utf-8 -*- +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: feast/core/StreamFeatureView.proto +"""Generated protocol buffer code.""" +from google.protobuf import descriptor as _descriptor +from google.protobuf import descriptor_pool as _descriptor_pool +from google.protobuf import symbol_database as _symbol_database +from google.protobuf.internal import builder as _builder +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +from google.protobuf import duration_pb2 as google_dot_protobuf_dot_duration__pb2 +from feast.protos.feast.core import OnDemandFeatureView_pb2 as feast_dot_core_dot_OnDemandFeatureView__pb2 +from feast.protos.feast.core import FeatureView_pb2 as feast_dot_core_dot_FeatureView__pb2 +from feast.protos.feast.core import Feature_pb2 as feast_dot_core_dot_Feature__pb2 +from feast.protos.feast.core import DataSource_pb2 as feast_dot_core_dot_DataSource__pb2 +from feast.protos.feast.core import Aggregation_pb2 as feast_dot_core_dot_Aggregation__pb2 + + +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\"feast/core/StreamFeatureView.proto\x12\nfeast.core\x1a\x1egoogle/protobuf/duration.proto\x1a$feast/core/OnDemandFeatureView.proto\x1a\x1c\x66\x65\x61st/core/FeatureView.proto\x1a\x18\x66\x65\x61st/core/Feature.proto\x1a\x1b\x66\x65\x61st/core/DataSource.proto\x1a\x1c\x66\x65\x61st/core/Aggregation.proto\"o\n\x11StreamFeatureView\x12/\n\x04spec\x18\x01 \x01(\x0b\x32!.feast.core.StreamFeatureViewSpec\x12)\n\x04meta\x18\x02 \x01(\x0b\x32\x1b.feast.core.FeatureViewMeta\"\xdf\x04\n\x15StreamFeatureViewSpec\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0f\n\x07project\x18\x02 \x01(\t\x12\x10\n\x08\x65ntities\x18\x03 \x03(\t\x12+\n\x08\x66\x65\x61tures\x18\x04 \x03(\x0b\x32\x19.feast.core.FeatureSpecV2\x12\x31\n\x0e\x65ntity_columns\x18\x05 \x03(\x0b\x32\x19.feast.core.FeatureSpecV2\x12\x13\n\x0b\x64\x65scription\x18\x06 \x01(\t\x12\x39\n\x04tags\x18\x07 \x03(\x0b\x32+.feast.core.StreamFeatureViewSpec.TagsEntry\x12\r\n\x05owner\x18\x08 \x01(\t\x12&\n\x03ttl\x18\t \x01(\x0b\x32\x19.google.protobuf.Duration\x12,\n\x0c\x62\x61tch_source\x18\n \x01(\x0b\x32\x16.feast.core.DataSource\x12-\n\rstream_source\x18\x0b \x01(\x0b\x32\x16.feast.core.DataSource\x12\x0e\n\x06online\x18\x0c \x01(\x08\x12>\n\x15user_defined_function\x18\r \x01(\x0b\x32\x1f.feast.core.UserDefinedFunction\x12\x0c\n\x04mode\x18\x0e \x01(\t\x12-\n\x0c\x61ggregations\x18\x0f \x03(\x0b\x32\x17.feast.core.Aggregation\x12\x17\n\x0ftimestamp_field\x18\x10 \x01(\t\x1a+\n\tTagsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x42[\n\x10\x66\x65\x61st.proto.coreB\x16StreamFeatureViewProtoZ/github.com/feast-dev/feast/go/protos/feast/coreb\x06proto3') + +_globals = globals() +_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) +_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'feast.core.StreamFeatureView_pb2', _globals) +if _descriptor._USE_C_DESCRIPTORS == False: + + DESCRIPTOR._options = None + DESCRIPTOR._serialized_options = b'\n\020feast.proto.coreB\026StreamFeatureViewProtoZ/github.com/feast-dev/feast/go/protos/feast/core' + _STREAMFEATUREVIEWSPEC_TAGSENTRY._options = None + _STREAMFEATUREVIEWSPEC_TAGSENTRY._serialized_options = b'8\001' + _globals['_STREAMFEATUREVIEW']._serialized_start=235 + _globals['_STREAMFEATUREVIEW']._serialized_end=346 + _globals['_STREAMFEATUREVIEWSPEC']._serialized_start=349 + _globals['_STREAMFEATUREVIEWSPEC']._serialized_end=956 + _globals['_STREAMFEATUREVIEWSPEC_TAGSENTRY']._serialized_start=913 + _globals['_STREAMFEATUREVIEWSPEC_TAGSENTRY']._serialized_end=956 +# @@protoc_insertion_point(module_scope) diff --git a/sdk/python/feast/protos/feast/core/StreamFeatureView_pb2.pyi b/sdk/python/feast/protos/feast/core/StreamFeatureView_pb2.pyi new file mode 100644 index 0000000000..d46dbe45ae --- /dev/null +++ b/sdk/python/feast/protos/feast/core/StreamFeatureView_pb2.pyi @@ -0,0 +1,153 @@ +""" +@generated by mypy-protobuf. Do not edit manually! +isort:skip_file +""" +import builtins +import feast.core.Aggregation_pb2 +import feast.core.DataSource_pb2 +import feast.core.FeatureView_pb2 +import feast.core.Feature_pb2 +import feast.core.OnDemandFeatureView_pb2 +import google.protobuf.descriptor +import google.protobuf.duration_pb2 +import google.protobuf.internal.containers +import google.protobuf.message +import typing +import typing_extensions + +DESCRIPTOR: google.protobuf.descriptor.FileDescriptor = ... + +class StreamFeatureView(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + SPEC_FIELD_NUMBER: builtins.int + META_FIELD_NUMBER: builtins.int + @property + def spec(self) -> global___StreamFeatureViewSpec: + """User-specified specifications of this feature view.""" + pass + @property + def meta(self) -> feast.core.FeatureView_pb2.FeatureViewMeta: ... + def __init__(self, + *, + spec : typing.Optional[global___StreamFeatureViewSpec] = ..., + meta : typing.Optional[feast.core.FeatureView_pb2.FeatureViewMeta] = ..., + ) -> None: ... + def HasField(self, field_name: typing_extensions.Literal["meta",b"meta","spec",b"spec"]) -> builtins.bool: ... + def ClearField(self, field_name: typing_extensions.Literal["meta",b"meta","spec",b"spec"]) -> None: ... +global___StreamFeatureView = StreamFeatureView + +class StreamFeatureViewSpec(google.protobuf.message.Message): + """Next available id: 17""" + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + class TagsEntry(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + KEY_FIELD_NUMBER: builtins.int + VALUE_FIELD_NUMBER: builtins.int + key: typing.Text = ... + value: typing.Text = ... + def __init__(self, + *, + key : typing.Text = ..., + value : typing.Text = ..., + ) -> None: ... + def ClearField(self, field_name: typing_extensions.Literal["key",b"key","value",b"value"]) -> None: ... + + NAME_FIELD_NUMBER: builtins.int + PROJECT_FIELD_NUMBER: builtins.int + ENTITIES_FIELD_NUMBER: builtins.int + FEATURES_FIELD_NUMBER: builtins.int + ENTITY_COLUMNS_FIELD_NUMBER: builtins.int + DESCRIPTION_FIELD_NUMBER: builtins.int + TAGS_FIELD_NUMBER: builtins.int + OWNER_FIELD_NUMBER: builtins.int + TTL_FIELD_NUMBER: builtins.int + BATCH_SOURCE_FIELD_NUMBER: builtins.int + STREAM_SOURCE_FIELD_NUMBER: builtins.int + ONLINE_FIELD_NUMBER: builtins.int + USER_DEFINED_FUNCTION_FIELD_NUMBER: builtins.int + MODE_FIELD_NUMBER: builtins.int + AGGREGATIONS_FIELD_NUMBER: builtins.int + TIMESTAMP_FIELD_FIELD_NUMBER: builtins.int + name: typing.Text = ... + """Name of the feature view. Must be unique. Not updated.""" + + project: typing.Text = ... + """Name of Feast project that this feature view belongs to.""" + + @property + def entities(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[typing.Text]: + """List of names of entities associated with this feature view.""" + pass + @property + def features(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[feast.core.Feature_pb2.FeatureSpecV2]: + """List of specifications for each feature defined as part of this feature view.""" + pass + @property + def entity_columns(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[feast.core.Feature_pb2.FeatureSpecV2]: + """List of specifications for each entity defined as part of this feature view.""" + pass + description: typing.Text = ... + """Description of the feature view.""" + + @property + def tags(self) -> google.protobuf.internal.containers.ScalarMap[typing.Text, typing.Text]: + """User defined metadata""" + pass + owner: typing.Text = ... + """Owner of the feature view.""" + + @property + def ttl(self) -> google.protobuf.duration_pb2.Duration: + """Features in this feature view can only be retrieved from online serving + younger than ttl. Ttl is measured as the duration of time between + the feature's event timestamp and when the feature is retrieved + Feature values outside ttl will be returned as unset values and indicated to end user + """ + pass + @property + def batch_source(self) -> feast.core.DataSource_pb2.DataSource: + """Batch/Offline DataSource where this view can retrieve offline feature data.""" + pass + @property + def stream_source(self) -> feast.core.DataSource_pb2.DataSource: + """Streaming DataSource from where this view can consume "online" feature data.""" + pass + online: builtins.bool = ... + """Whether these features should be served online or not""" + + @property + def user_defined_function(self) -> feast.core.OnDemandFeatureView_pb2.UserDefinedFunction: + """Serialized function that is encoded in the streamfeatureview""" + pass + mode: typing.Text = ... + """Mode of execution""" + + @property + def aggregations(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[feast.core.Aggregation_pb2.Aggregation]: + """Aggregation definitions""" + pass + timestamp_field: typing.Text = ... + """Timestamp field for aggregation""" + + def __init__(self, + *, + name : typing.Text = ..., + project : typing.Text = ..., + entities : typing.Optional[typing.Iterable[typing.Text]] = ..., + features : typing.Optional[typing.Iterable[feast.core.Feature_pb2.FeatureSpecV2]] = ..., + entity_columns : typing.Optional[typing.Iterable[feast.core.Feature_pb2.FeatureSpecV2]] = ..., + description : typing.Text = ..., + tags : typing.Optional[typing.Mapping[typing.Text, typing.Text]] = ..., + owner : typing.Text = ..., + ttl : typing.Optional[google.protobuf.duration_pb2.Duration] = ..., + batch_source : typing.Optional[feast.core.DataSource_pb2.DataSource] = ..., + stream_source : typing.Optional[feast.core.DataSource_pb2.DataSource] = ..., + online : builtins.bool = ..., + user_defined_function : typing.Optional[feast.core.OnDemandFeatureView_pb2.UserDefinedFunction] = ..., + mode : typing.Text = ..., + aggregations : typing.Optional[typing.Iterable[feast.core.Aggregation_pb2.Aggregation]] = ..., + timestamp_field : typing.Text = ..., + ) -> None: ... + def HasField(self, field_name: typing_extensions.Literal["batch_source",b"batch_source","stream_source",b"stream_source","ttl",b"ttl","user_defined_function",b"user_defined_function"]) -> builtins.bool: ... + def ClearField(self, field_name: typing_extensions.Literal["aggregations",b"aggregations","batch_source",b"batch_source","description",b"description","entities",b"entities","entity_columns",b"entity_columns","features",b"features","mode",b"mode","name",b"name","online",b"online","owner",b"owner","project",b"project","stream_source",b"stream_source","tags",b"tags","timestamp_field",b"timestamp_field","ttl",b"ttl","user_defined_function",b"user_defined_function"]) -> None: ... +global___StreamFeatureViewSpec = StreamFeatureViewSpec diff --git a/sdk/python/feast/protos/feast/core/StreamFeatureView_pb2_grpc.py b/sdk/python/feast/protos/feast/core/StreamFeatureView_pb2_grpc.py new file mode 100644 index 0000000000..2daafffebf --- /dev/null +++ b/sdk/python/feast/protos/feast/core/StreamFeatureView_pb2_grpc.py @@ -0,0 +1,4 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +"""Client and server classes corresponding to protobuf-defined services.""" +import grpc + diff --git a/sdk/python/feast/protos/feast/core/ValidationProfile_pb2.py b/sdk/python/feast/protos/feast/core/ValidationProfile_pb2.py new file mode 100644 index 0000000000..a82d7a4f0b --- /dev/null +++ b/sdk/python/feast/protos/feast/core/ValidationProfile_pb2.py @@ -0,0 +1,37 @@ +# -*- coding: utf-8 -*- +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: feast/core/ValidationProfile.proto +"""Generated protocol buffer code.""" +from google.protobuf import descriptor as _descriptor +from google.protobuf import descriptor_pool as _descriptor_pool +from google.protobuf import symbol_database as _symbol_database +from google.protobuf.internal import builder as _builder +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + + + +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\"feast/core/ValidationProfile.proto\x12\nfeast.core\"\x83\x01\n\x14GEValidationProfiler\x12\x46\n\x08profiler\x18\x01 \x01(\x0b\x32\x34.feast.core.GEValidationProfiler.UserDefinedProfiler\x1a#\n\x13UserDefinedProfiler\x12\x0c\n\x04\x62ody\x18\x01 \x01(\x0c\"0\n\x13GEValidationProfile\x12\x19\n\x11\x65xpectation_suite\x18\x01 \x01(\x0c\"\xdd\x02\n\x13ValidationReference\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x1e\n\x16reference_dataset_name\x18\x02 \x01(\t\x12\x0f\n\x07project\x18\x03 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x04 \x01(\t\x12\x37\n\x04tags\x18\x05 \x03(\x0b\x32).feast.core.ValidationReference.TagsEntry\x12\x37\n\x0bge_profiler\x18\x06 \x01(\x0b\x32 .feast.core.GEValidationProfilerH\x00\x12\x35\n\nge_profile\x18\x07 \x01(\x0b\x32\x1f.feast.core.GEValidationProfileH\x01\x1a+\n\tTagsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x42\n\n\x08profilerB\x10\n\x0e\x63\x61\x63hed_profileBV\n\x10\x66\x65\x61st.proto.coreB\x11ValidationProfileZ/github.com/feast-dev/feast/go/protos/feast/coreb\x06proto3') + +_globals = globals() +_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) +_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'feast.core.ValidationProfile_pb2', _globals) +if _descriptor._USE_C_DESCRIPTORS == False: + + DESCRIPTOR._options = None + DESCRIPTOR._serialized_options = b'\n\020feast.proto.coreB\021ValidationProfileZ/github.com/feast-dev/feast/go/protos/feast/core' + _VALIDATIONREFERENCE_TAGSENTRY._options = None + _VALIDATIONREFERENCE_TAGSENTRY._serialized_options = b'8\001' + _globals['_GEVALIDATIONPROFILER']._serialized_start=51 + _globals['_GEVALIDATIONPROFILER']._serialized_end=182 + _globals['_GEVALIDATIONPROFILER_USERDEFINEDPROFILER']._serialized_start=147 + _globals['_GEVALIDATIONPROFILER_USERDEFINEDPROFILER']._serialized_end=182 + _globals['_GEVALIDATIONPROFILE']._serialized_start=184 + _globals['_GEVALIDATIONPROFILE']._serialized_end=232 + _globals['_VALIDATIONREFERENCE']._serialized_start=235 + _globals['_VALIDATIONREFERENCE']._serialized_end=584 + _globals['_VALIDATIONREFERENCE_TAGSENTRY']._serialized_start=511 + _globals['_VALIDATIONREFERENCE_TAGSENTRY']._serialized_end=554 +# @@protoc_insertion_point(module_scope) diff --git a/sdk/python/feast/protos/feast/core/ValidationProfile_pb2.pyi b/sdk/python/feast/protos/feast/core/ValidationProfile_pb2.pyi new file mode 100644 index 0000000000..321f2c7ea3 --- /dev/null +++ b/sdk/python/feast/protos/feast/core/ValidationProfile_pb2.pyi @@ -0,0 +1,110 @@ +""" +@generated by mypy-protobuf. Do not edit manually! +isort:skip_file +""" +import builtins +import google.protobuf.descriptor +import google.protobuf.internal.containers +import google.protobuf.message +import typing +import typing_extensions + +DESCRIPTOR: google.protobuf.descriptor.FileDescriptor = ... + +class GEValidationProfiler(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + class UserDefinedProfiler(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + BODY_FIELD_NUMBER: builtins.int + body: builtins.bytes = ... + """The python-syntax function body (serialized by dill)""" + + def __init__(self, + *, + body : builtins.bytes = ..., + ) -> None: ... + def ClearField(self, field_name: typing_extensions.Literal["body",b"body"]) -> None: ... + + PROFILER_FIELD_NUMBER: builtins.int + @property + def profiler(self) -> global___GEValidationProfiler.UserDefinedProfiler: ... + def __init__(self, + *, + profiler : typing.Optional[global___GEValidationProfiler.UserDefinedProfiler] = ..., + ) -> None: ... + def HasField(self, field_name: typing_extensions.Literal["profiler",b"profiler"]) -> builtins.bool: ... + def ClearField(self, field_name: typing_extensions.Literal["profiler",b"profiler"]) -> None: ... +global___GEValidationProfiler = GEValidationProfiler + +class GEValidationProfile(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + EXPECTATION_SUITE_FIELD_NUMBER: builtins.int + expectation_suite: builtins.bytes = ... + """JSON-serialized ExpectationSuite object""" + + def __init__(self, + *, + expectation_suite : builtins.bytes = ..., + ) -> None: ... + def ClearField(self, field_name: typing_extensions.Literal["expectation_suite",b"expectation_suite"]) -> None: ... +global___GEValidationProfile = GEValidationProfile + +class ValidationReference(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + class TagsEntry(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + KEY_FIELD_NUMBER: builtins.int + VALUE_FIELD_NUMBER: builtins.int + key: typing.Text = ... + value: typing.Text = ... + def __init__(self, + *, + key : typing.Text = ..., + value : typing.Text = ..., + ) -> None: ... + def ClearField(self, field_name: typing_extensions.Literal["key",b"key","value",b"value"]) -> None: ... + + NAME_FIELD_NUMBER: builtins.int + REFERENCE_DATASET_NAME_FIELD_NUMBER: builtins.int + PROJECT_FIELD_NUMBER: builtins.int + DESCRIPTION_FIELD_NUMBER: builtins.int + TAGS_FIELD_NUMBER: builtins.int + GE_PROFILER_FIELD_NUMBER: builtins.int + GE_PROFILE_FIELD_NUMBER: builtins.int + name: typing.Text = ... + """Unique name of validation reference within the project""" + + reference_dataset_name: typing.Text = ... + """Name of saved dataset used as reference dataset""" + + project: typing.Text = ... + """Name of Feast project that this object source belongs to""" + + description: typing.Text = ... + """Description of the validation reference""" + + @property + def tags(self) -> google.protobuf.internal.containers.ScalarMap[typing.Text, typing.Text]: + """User defined metadata""" + pass + @property + def ge_profiler(self) -> global___GEValidationProfiler: ... + @property + def ge_profile(self) -> global___GEValidationProfile: ... + def __init__(self, + *, + name : typing.Text = ..., + reference_dataset_name : typing.Text = ..., + project : typing.Text = ..., + description : typing.Text = ..., + tags : typing.Optional[typing.Mapping[typing.Text, typing.Text]] = ..., + ge_profiler : typing.Optional[global___GEValidationProfiler] = ..., + ge_profile : typing.Optional[global___GEValidationProfile] = ..., + ) -> None: ... + def HasField(self, field_name: typing_extensions.Literal["cached_profile",b"cached_profile","ge_profile",b"ge_profile","ge_profiler",b"ge_profiler","profiler",b"profiler"]) -> builtins.bool: ... + def ClearField(self, field_name: typing_extensions.Literal["cached_profile",b"cached_profile","description",b"description","ge_profile",b"ge_profile","ge_profiler",b"ge_profiler","name",b"name","profiler",b"profiler","project",b"project","reference_dataset_name",b"reference_dataset_name","tags",b"tags"]) -> None: ... + @typing.overload + def WhichOneof(self, oneof_group: typing_extensions.Literal["cached_profile",b"cached_profile"]) -> typing.Optional[typing_extensions.Literal["ge_profile"]]: ... + @typing.overload + def WhichOneof(self, oneof_group: typing_extensions.Literal["profiler",b"profiler"]) -> typing.Optional[typing_extensions.Literal["ge_profiler"]]: ... +global___ValidationReference = ValidationReference diff --git a/sdk/python/feast/protos/feast/core/ValidationProfile_pb2_grpc.py b/sdk/python/feast/protos/feast/core/ValidationProfile_pb2_grpc.py new file mode 100644 index 0000000000..2daafffebf --- /dev/null +++ b/sdk/python/feast/protos/feast/core/ValidationProfile_pb2_grpc.py @@ -0,0 +1,4 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +"""Client and server classes corresponding to protobuf-defined services.""" +import grpc + diff --git a/sdk/python/feast/protos/feast/core/__init__.py b/sdk/python/feast/protos/feast/core/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/sdk/python/feast/protos/feast/serving/Connector_pb2.py b/sdk/python/feast/protos/feast/serving/Connector_pb2.py new file mode 100644 index 0000000000..8b5516eaba --- /dev/null +++ b/sdk/python/feast/protos/feast/serving/Connector_pb2.py @@ -0,0 +1,39 @@ +# -*- coding: utf-8 -*- +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: feast/serving/Connector.proto +"""Generated protocol buffer code.""" +from google.protobuf import descriptor as _descriptor +from google.protobuf import descriptor_pool as _descriptor_pool +from google.protobuf import symbol_database as _symbol_database +from google.protobuf.internal import builder as _builder +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +from google.protobuf import timestamp_pb2 as google_dot_protobuf_dot_timestamp__pb2 +from feast.protos.feast.types import Value_pb2 as feast_dot_types_dot_Value__pb2 +from feast.protos.feast.types import EntityKey_pb2 as feast_dot_types_dot_EntityKey__pb2 +from feast.protos.feast.serving import ServingService_pb2 as feast_dot_serving_dot_ServingService__pb2 + + +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1d\x66\x65\x61st/serving/Connector.proto\x12\x0egrpc.connector\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x17\x66\x65\x61st/types/Value.proto\x1a\x1b\x66\x65\x61st/types/EntityKey.proto\x1a\"feast/serving/ServingService.proto\"\x9a\x01\n\x10\x43onnectorFeature\x12\x34\n\treference\x18\x01 \x01(\x0b\x32!.feast.serving.FeatureReferenceV2\x12-\n\ttimestamp\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12!\n\x05value\x18\x03 \x01(\x0b\x32\x12.feast.types.Value\"M\n\x14\x43onnectorFeatureList\x12\x35\n\x0b\x66\x65\x61tureList\x18\x01 \x03(\x0b\x32 .grpc.connector.ConnectorFeature\"_\n\x11OnlineReadRequest\x12*\n\nentityKeys\x18\x01 \x03(\x0b\x32\x16.feast.types.EntityKey\x12\x0c\n\x04view\x18\x02 \x01(\t\x12\x10\n\x08\x66\x65\x61tures\x18\x03 \x03(\t\"K\n\x12OnlineReadResponse\x12\x35\n\x07results\x18\x01 \x03(\x0b\x32$.grpc.connector.ConnectorFeatureList2b\n\x0bOnlineStore\x12S\n\nOnlineRead\x12!.grpc.connector.OnlineReadRequest\x1a\".grpc.connector.OnlineReadResponseB4Z2github.com/feast-dev/feast/go/protos/feast/servingb\x06proto3') + +_globals = globals() +_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) +_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'feast.serving.Connector_pb2', _globals) +if _descriptor._USE_C_DESCRIPTORS == False: + + DESCRIPTOR._options = None + DESCRIPTOR._serialized_options = b'Z2github.com/feast-dev/feast/go/protos/feast/serving' + _globals['_CONNECTORFEATURE']._serialized_start=173 + _globals['_CONNECTORFEATURE']._serialized_end=327 + _globals['_CONNECTORFEATURELIST']._serialized_start=329 + _globals['_CONNECTORFEATURELIST']._serialized_end=406 + _globals['_ONLINEREADREQUEST']._serialized_start=408 + _globals['_ONLINEREADREQUEST']._serialized_end=503 + _globals['_ONLINEREADRESPONSE']._serialized_start=505 + _globals['_ONLINEREADRESPONSE']._serialized_end=580 + _globals['_ONLINESTORE']._serialized_start=582 + _globals['_ONLINESTORE']._serialized_end=680 +# @@protoc_insertion_point(module_scope) diff --git a/sdk/python/feast/protos/feast/serving/Connector_pb2.pyi b/sdk/python/feast/protos/feast/serving/Connector_pb2.pyi new file mode 100644 index 0000000000..1ada5c5a7e --- /dev/null +++ b/sdk/python/feast/protos/feast/serving/Connector_pb2.pyi @@ -0,0 +1,80 @@ +""" +@generated by mypy-protobuf. Do not edit manually! +isort:skip_file +""" +import builtins +import feast.serving.ServingService_pb2 +import feast.types.EntityKey_pb2 +import feast.types.Value_pb2 +import google.protobuf.descriptor +import google.protobuf.internal.containers +import google.protobuf.message +import google.protobuf.timestamp_pb2 +import typing +import typing_extensions + +DESCRIPTOR: google.protobuf.descriptor.FileDescriptor = ... + +class ConnectorFeature(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + REFERENCE_FIELD_NUMBER: builtins.int + TIMESTAMP_FIELD_NUMBER: builtins.int + VALUE_FIELD_NUMBER: builtins.int + @property + def reference(self) -> feast.serving.ServingService_pb2.FeatureReferenceV2: ... + @property + def timestamp(self) -> google.protobuf.timestamp_pb2.Timestamp: ... + @property + def value(self) -> feast.types.Value_pb2.Value: ... + def __init__(self, + *, + reference : typing.Optional[feast.serving.ServingService_pb2.FeatureReferenceV2] = ..., + timestamp : typing.Optional[google.protobuf.timestamp_pb2.Timestamp] = ..., + value : typing.Optional[feast.types.Value_pb2.Value] = ..., + ) -> None: ... + def HasField(self, field_name: typing_extensions.Literal["reference",b"reference","timestamp",b"timestamp","value",b"value"]) -> builtins.bool: ... + def ClearField(self, field_name: typing_extensions.Literal["reference",b"reference","timestamp",b"timestamp","value",b"value"]) -> None: ... +global___ConnectorFeature = ConnectorFeature + +class ConnectorFeatureList(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + FEATURELIST_FIELD_NUMBER: builtins.int + @property + def featureList(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___ConnectorFeature]: ... + def __init__(self, + *, + featureList : typing.Optional[typing.Iterable[global___ConnectorFeature]] = ..., + ) -> None: ... + def ClearField(self, field_name: typing_extensions.Literal["featureList",b"featureList"]) -> None: ... +global___ConnectorFeatureList = ConnectorFeatureList + +class OnlineReadRequest(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + ENTITYKEYS_FIELD_NUMBER: builtins.int + VIEW_FIELD_NUMBER: builtins.int + FEATURES_FIELD_NUMBER: builtins.int + @property + def entityKeys(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[feast.types.EntityKey_pb2.EntityKey]: ... + view: typing.Text = ... + @property + def features(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[typing.Text]: ... + def __init__(self, + *, + entityKeys : typing.Optional[typing.Iterable[feast.types.EntityKey_pb2.EntityKey]] = ..., + view : typing.Text = ..., + features : typing.Optional[typing.Iterable[typing.Text]] = ..., + ) -> None: ... + def ClearField(self, field_name: typing_extensions.Literal["entityKeys",b"entityKeys","features",b"features","view",b"view"]) -> None: ... +global___OnlineReadRequest = OnlineReadRequest + +class OnlineReadResponse(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + RESULTS_FIELD_NUMBER: builtins.int + @property + def results(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___ConnectorFeatureList]: ... + def __init__(self, + *, + results : typing.Optional[typing.Iterable[global___ConnectorFeatureList]] = ..., + ) -> None: ... + def ClearField(self, field_name: typing_extensions.Literal["results",b"results"]) -> None: ... +global___OnlineReadResponse = OnlineReadResponse diff --git a/sdk/python/feast/protos/feast/serving/Connector_pb2_grpc.py b/sdk/python/feast/protos/feast/serving/Connector_pb2_grpc.py new file mode 100644 index 0000000000..dfadf982dd --- /dev/null +++ b/sdk/python/feast/protos/feast/serving/Connector_pb2_grpc.py @@ -0,0 +1,66 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +"""Client and server classes corresponding to protobuf-defined services.""" +import grpc + +from feast.protos.feast.serving import Connector_pb2 as feast_dot_serving_dot_Connector__pb2 + + +class OnlineStoreStub(object): + """Missing associated documentation comment in .proto file.""" + + def __init__(self, channel): + """Constructor. + + Args: + channel: A grpc.Channel. + """ + self.OnlineRead = channel.unary_unary( + '/grpc.connector.OnlineStore/OnlineRead', + request_serializer=feast_dot_serving_dot_Connector__pb2.OnlineReadRequest.SerializeToString, + response_deserializer=feast_dot_serving_dot_Connector__pb2.OnlineReadResponse.FromString, + ) + + +class OnlineStoreServicer(object): + """Missing associated documentation comment in .proto file.""" + + def OnlineRead(self, request, context): + """Missing associated documentation comment in .proto file.""" + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + +def add_OnlineStoreServicer_to_server(servicer, server): + rpc_method_handlers = { + 'OnlineRead': grpc.unary_unary_rpc_method_handler( + servicer.OnlineRead, + request_deserializer=feast_dot_serving_dot_Connector__pb2.OnlineReadRequest.FromString, + response_serializer=feast_dot_serving_dot_Connector__pb2.OnlineReadResponse.SerializeToString, + ), + } + generic_handler = grpc.method_handlers_generic_handler( + 'grpc.connector.OnlineStore', rpc_method_handlers) + server.add_generic_rpc_handlers((generic_handler,)) + + + # This class is part of an EXPERIMENTAL API. +class OnlineStore(object): + """Missing associated documentation comment in .proto file.""" + + @staticmethod + def OnlineRead(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_unary(request, target, '/grpc.connector.OnlineStore/OnlineRead', + feast_dot_serving_dot_Connector__pb2.OnlineReadRequest.SerializeToString, + feast_dot_serving_dot_Connector__pb2.OnlineReadResponse.FromString, + options, channel_credentials, + insecure, call_credentials, compression, wait_for_ready, timeout, metadata) diff --git a/sdk/python/feast/protos/feast/serving/GrpcServer_pb2.py b/sdk/python/feast/protos/feast/serving/GrpcServer_pb2.py new file mode 100644 index 0000000000..7a7b9c151b --- /dev/null +++ b/sdk/python/feast/protos/feast/serving/GrpcServer_pb2.py @@ -0,0 +1,42 @@ +# -*- coding: utf-8 -*- +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: feast/serving/GrpcServer.proto +"""Generated protocol buffer code.""" +from google.protobuf import descriptor as _descriptor +from google.protobuf import descriptor_pool as _descriptor_pool +from google.protobuf import symbol_database as _symbol_database +from google.protobuf.internal import builder as _builder +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + + + +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1e\x66\x65\x61st/serving/GrpcServer.proto\"\xb3\x01\n\x0bPushRequest\x12,\n\x08\x66\x65\x61tures\x18\x01 \x03(\x0b\x32\x1a.PushRequest.FeaturesEntry\x12\x1b\n\x13stream_feature_view\x18\x02 \x01(\t\x12\x1c\n\x14\x61llow_registry_cache\x18\x03 \x01(\x08\x12\n\n\x02to\x18\x04 \x01(\t\x1a/\n\rFeaturesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\x1e\n\x0cPushResponse\x12\x0e\n\x06status\x18\x01 \x01(\x08\"\xc1\x01\n\x19WriteToOnlineStoreRequest\x12:\n\x08\x66\x65\x61tures\x18\x01 \x03(\x0b\x32(.WriteToOnlineStoreRequest.FeaturesEntry\x12\x19\n\x11\x66\x65\x61ture_view_name\x18\x02 \x01(\t\x12\x1c\n\x14\x61llow_registry_cache\x18\x03 \x01(\x08\x1a/\n\rFeaturesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\",\n\x1aWriteToOnlineStoreResponse\x12\x0e\n\x06status\x18\x01 \x01(\x08\x32\x89\x01\n\x11GrpcFeatureServer\x12%\n\x04Push\x12\x0c.PushRequest\x1a\r.PushResponse\"\x00\x12M\n\x12WriteToOnlineStore\x12\x1a.WriteToOnlineStoreRequest\x1a\x1b.WriteToOnlineStoreResponseb\x06proto3') + +_globals = globals() +_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) +_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'feast.serving.GrpcServer_pb2', _globals) +if _descriptor._USE_C_DESCRIPTORS == False: + + DESCRIPTOR._options = None + _PUSHREQUEST_FEATURESENTRY._options = None + _PUSHREQUEST_FEATURESENTRY._serialized_options = b'8\001' + _WRITETOONLINESTOREREQUEST_FEATURESENTRY._options = None + _WRITETOONLINESTOREREQUEST_FEATURESENTRY._serialized_options = b'8\001' + _globals['_PUSHREQUEST']._serialized_start=35 + _globals['_PUSHREQUEST']._serialized_end=214 + _globals['_PUSHREQUEST_FEATURESENTRY']._serialized_start=167 + _globals['_PUSHREQUEST_FEATURESENTRY']._serialized_end=214 + _globals['_PUSHRESPONSE']._serialized_start=216 + _globals['_PUSHRESPONSE']._serialized_end=246 + _globals['_WRITETOONLINESTOREREQUEST']._serialized_start=249 + _globals['_WRITETOONLINESTOREREQUEST']._serialized_end=442 + _globals['_WRITETOONLINESTOREREQUEST_FEATURESENTRY']._serialized_start=167 + _globals['_WRITETOONLINESTOREREQUEST_FEATURESENTRY']._serialized_end=214 + _globals['_WRITETOONLINESTORERESPONSE']._serialized_start=444 + _globals['_WRITETOONLINESTORERESPONSE']._serialized_end=488 + _globals['_GRPCFEATURESERVER']._serialized_start=491 + _globals['_GRPCFEATURESERVER']._serialized_end=628 +# @@protoc_insertion_point(module_scope) diff --git a/sdk/python/feast/protos/feast/serving/GrpcServer_pb2.pyi b/sdk/python/feast/protos/feast/serving/GrpcServer_pb2.pyi new file mode 100644 index 0000000000..e096ee59bd --- /dev/null +++ b/sdk/python/feast/protos/feast/serving/GrpcServer_pb2.pyi @@ -0,0 +1,99 @@ +""" +@generated by mypy-protobuf. Do not edit manually! +isort:skip_file +""" +import builtins +import google.protobuf.descriptor +import google.protobuf.internal.containers +import google.protobuf.message +import typing +import typing_extensions + +DESCRIPTOR: google.protobuf.descriptor.FileDescriptor = ... + +class PushRequest(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + class FeaturesEntry(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + KEY_FIELD_NUMBER: builtins.int + VALUE_FIELD_NUMBER: builtins.int + key: typing.Text = ... + value: typing.Text = ... + def __init__(self, + *, + key : typing.Text = ..., + value : typing.Text = ..., + ) -> None: ... + def ClearField(self, field_name: typing_extensions.Literal["key",b"key","value",b"value"]) -> None: ... + + FEATURES_FIELD_NUMBER: builtins.int + STREAM_FEATURE_VIEW_FIELD_NUMBER: builtins.int + ALLOW_REGISTRY_CACHE_FIELD_NUMBER: builtins.int + TO_FIELD_NUMBER: builtins.int + @property + def features(self) -> google.protobuf.internal.containers.ScalarMap[typing.Text, typing.Text]: ... + stream_feature_view: typing.Text = ... + allow_registry_cache: builtins.bool = ... + to: typing.Text = ... + def __init__(self, + *, + features : typing.Optional[typing.Mapping[typing.Text, typing.Text]] = ..., + stream_feature_view : typing.Text = ..., + allow_registry_cache : builtins.bool = ..., + to : typing.Text = ..., + ) -> None: ... + def ClearField(self, field_name: typing_extensions.Literal["allow_registry_cache",b"allow_registry_cache","features",b"features","stream_feature_view",b"stream_feature_view","to",b"to"]) -> None: ... +global___PushRequest = PushRequest + +class PushResponse(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + STATUS_FIELD_NUMBER: builtins.int + status: builtins.bool = ... + def __init__(self, + *, + status : builtins.bool = ..., + ) -> None: ... + def ClearField(self, field_name: typing_extensions.Literal["status",b"status"]) -> None: ... +global___PushResponse = PushResponse + +class WriteToOnlineStoreRequest(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + class FeaturesEntry(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + KEY_FIELD_NUMBER: builtins.int + VALUE_FIELD_NUMBER: builtins.int + key: typing.Text = ... + value: typing.Text = ... + def __init__(self, + *, + key : typing.Text = ..., + value : typing.Text = ..., + ) -> None: ... + def ClearField(self, field_name: typing_extensions.Literal["key",b"key","value",b"value"]) -> None: ... + + FEATURES_FIELD_NUMBER: builtins.int + FEATURE_VIEW_NAME_FIELD_NUMBER: builtins.int + ALLOW_REGISTRY_CACHE_FIELD_NUMBER: builtins.int + @property + def features(self) -> google.protobuf.internal.containers.ScalarMap[typing.Text, typing.Text]: ... + feature_view_name: typing.Text = ... + allow_registry_cache: builtins.bool = ... + def __init__(self, + *, + features : typing.Optional[typing.Mapping[typing.Text, typing.Text]] = ..., + feature_view_name : typing.Text = ..., + allow_registry_cache : builtins.bool = ..., + ) -> None: ... + def ClearField(self, field_name: typing_extensions.Literal["allow_registry_cache",b"allow_registry_cache","feature_view_name",b"feature_view_name","features",b"features"]) -> None: ... +global___WriteToOnlineStoreRequest = WriteToOnlineStoreRequest + +class WriteToOnlineStoreResponse(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + STATUS_FIELD_NUMBER: builtins.int + status: builtins.bool = ... + def __init__(self, + *, + status : builtins.bool = ..., + ) -> None: ... + def ClearField(self, field_name: typing_extensions.Literal["status",b"status"]) -> None: ... +global___WriteToOnlineStoreResponse = WriteToOnlineStoreResponse diff --git a/sdk/python/feast/protos/feast/serving/GrpcServer_pb2_grpc.py b/sdk/python/feast/protos/feast/serving/GrpcServer_pb2_grpc.py new file mode 100644 index 0000000000..882030d7e6 --- /dev/null +++ b/sdk/python/feast/protos/feast/serving/GrpcServer_pb2_grpc.py @@ -0,0 +1,99 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +"""Client and server classes corresponding to protobuf-defined services.""" +import grpc + +from feast.protos.feast.serving import GrpcServer_pb2 as feast_dot_serving_dot_GrpcServer__pb2 + + +class GrpcFeatureServerStub(object): + """Missing associated documentation comment in .proto file.""" + + def __init__(self, channel): + """Constructor. + + Args: + channel: A grpc.Channel. + """ + self.Push = channel.unary_unary( + '/GrpcFeatureServer/Push', + request_serializer=feast_dot_serving_dot_GrpcServer__pb2.PushRequest.SerializeToString, + response_deserializer=feast_dot_serving_dot_GrpcServer__pb2.PushResponse.FromString, + ) + self.WriteToOnlineStore = channel.unary_unary( + '/GrpcFeatureServer/WriteToOnlineStore', + request_serializer=feast_dot_serving_dot_GrpcServer__pb2.WriteToOnlineStoreRequest.SerializeToString, + response_deserializer=feast_dot_serving_dot_GrpcServer__pb2.WriteToOnlineStoreResponse.FromString, + ) + + +class GrpcFeatureServerServicer(object): + """Missing associated documentation comment in .proto file.""" + + def Push(self, request, context): + """Missing associated documentation comment in .proto file.""" + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def WriteToOnlineStore(self, request, context): + """Missing associated documentation comment in .proto file.""" + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + +def add_GrpcFeatureServerServicer_to_server(servicer, server): + rpc_method_handlers = { + 'Push': grpc.unary_unary_rpc_method_handler( + servicer.Push, + request_deserializer=feast_dot_serving_dot_GrpcServer__pb2.PushRequest.FromString, + response_serializer=feast_dot_serving_dot_GrpcServer__pb2.PushResponse.SerializeToString, + ), + 'WriteToOnlineStore': grpc.unary_unary_rpc_method_handler( + servicer.WriteToOnlineStore, + request_deserializer=feast_dot_serving_dot_GrpcServer__pb2.WriteToOnlineStoreRequest.FromString, + response_serializer=feast_dot_serving_dot_GrpcServer__pb2.WriteToOnlineStoreResponse.SerializeToString, + ), + } + generic_handler = grpc.method_handlers_generic_handler( + 'GrpcFeatureServer', rpc_method_handlers) + server.add_generic_rpc_handlers((generic_handler,)) + + + # This class is part of an EXPERIMENTAL API. +class GrpcFeatureServer(object): + """Missing associated documentation comment in .proto file.""" + + @staticmethod + def Push(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_unary(request, target, '/GrpcFeatureServer/Push', + feast_dot_serving_dot_GrpcServer__pb2.PushRequest.SerializeToString, + feast_dot_serving_dot_GrpcServer__pb2.PushResponse.FromString, + options, channel_credentials, + insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + + @staticmethod + def WriteToOnlineStore(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_unary(request, target, '/GrpcFeatureServer/WriteToOnlineStore', + feast_dot_serving_dot_GrpcServer__pb2.WriteToOnlineStoreRequest.SerializeToString, + feast_dot_serving_dot_GrpcServer__pb2.WriteToOnlineStoreResponse.FromString, + options, channel_credentials, + insecure, call_credentials, compression, wait_for_ready, timeout, metadata) diff --git a/sdk/python/feast/protos/feast/serving/ServingService_pb2.py b/sdk/python/feast/protos/feast/serving/ServingService_pb2.py new file mode 100644 index 0000000000..d6fde97481 --- /dev/null +++ b/sdk/python/feast/protos/feast/serving/ServingService_pb2.py @@ -0,0 +1,63 @@ +# -*- coding: utf-8 -*- +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: feast/serving/ServingService.proto +"""Generated protocol buffer code.""" +from google.protobuf import descriptor as _descriptor +from google.protobuf import descriptor_pool as _descriptor_pool +from google.protobuf import symbol_database as _symbol_database +from google.protobuf.internal import builder as _builder +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +from google.protobuf import timestamp_pb2 as google_dot_protobuf_dot_timestamp__pb2 +from feast.protos.feast.types import Value_pb2 as feast_dot_types_dot_Value__pb2 + + +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\"feast/serving/ServingService.proto\x12\rfeast.serving\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x17\x66\x65\x61st/types/Value.proto\"\x1c\n\x1aGetFeastServingInfoRequest\".\n\x1bGetFeastServingInfoResponse\x12\x0f\n\x07version\x18\x01 \x01(\t\"E\n\x12\x46\x65\x61tureReferenceV2\x12\x19\n\x11\x66\x65\x61ture_view_name\x18\x01 \x01(\t\x12\x14\n\x0c\x66\x65\x61ture_name\x18\x02 \x01(\t\"\xfd\x02\n\x1aGetOnlineFeaturesRequestV2\x12\x33\n\x08\x66\x65\x61tures\x18\x04 \x03(\x0b\x32!.feast.serving.FeatureReferenceV2\x12H\n\x0b\x65ntity_rows\x18\x02 \x03(\x0b\x32\x33.feast.serving.GetOnlineFeaturesRequestV2.EntityRow\x12\x0f\n\x07project\x18\x05 \x01(\t\x1a\xce\x01\n\tEntityRow\x12-\n\ttimestamp\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12O\n\x06\x66ields\x18\x02 \x03(\x0b\x32?.feast.serving.GetOnlineFeaturesRequestV2.EntityRow.FieldsEntry\x1a\x41\n\x0b\x46ieldsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12!\n\x05value\x18\x02 \x01(\x0b\x32\x12.feast.types.Value:\x02\x38\x01\"\x1a\n\x0b\x46\x65\x61tureList\x12\x0b\n\x03val\x18\x01 \x03(\t\"\xc8\x03\n\x18GetOnlineFeaturesRequest\x12\x19\n\x0f\x66\x65\x61ture_service\x18\x01 \x01(\tH\x00\x12.\n\x08\x66\x65\x61tures\x18\x02 \x01(\x0b\x32\x1a.feast.serving.FeatureListH\x00\x12G\n\x08\x65ntities\x18\x03 \x03(\x0b\x32\x35.feast.serving.GetOnlineFeaturesRequest.EntitiesEntry\x12\x1a\n\x12\x66ull_feature_names\x18\x04 \x01(\x08\x12T\n\x0frequest_context\x18\x05 \x03(\x0b\x32;.feast.serving.GetOnlineFeaturesRequest.RequestContextEntry\x1aK\n\rEntitiesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12)\n\x05value\x18\x02 \x01(\x0b\x32\x1a.feast.types.RepeatedValue:\x02\x38\x01\x1aQ\n\x13RequestContextEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12)\n\x05value\x18\x02 \x01(\x0b\x32\x1a.feast.types.RepeatedValue:\x02\x38\x01\x42\x06\n\x04kind\"\xc2\x02\n\x19GetOnlineFeaturesResponse\x12\x42\n\x08metadata\x18\x01 \x01(\x0b\x32\x30.feast.serving.GetOnlineFeaturesResponseMetadata\x12G\n\x07results\x18\x02 \x03(\x0b\x32\x36.feast.serving.GetOnlineFeaturesResponse.FeatureVector\x1a\x97\x01\n\rFeatureVector\x12\"\n\x06values\x18\x01 \x03(\x0b\x32\x12.feast.types.Value\x12,\n\x08statuses\x18\x02 \x03(\x0e\x32\x1a.feast.serving.FieldStatus\x12\x34\n\x10\x65vent_timestamps\x18\x03 \x03(\x0b\x32\x1a.google.protobuf.Timestamp\"V\n!GetOnlineFeaturesResponseMetadata\x12\x31\n\rfeature_names\x18\x01 \x01(\x0b\x32\x1a.feast.serving.FeatureList*[\n\x0b\x46ieldStatus\x12\x0b\n\x07INVALID\x10\x00\x12\x0b\n\x07PRESENT\x10\x01\x12\x0e\n\nNULL_VALUE\x10\x02\x12\r\n\tNOT_FOUND\x10\x03\x12\x13\n\x0fOUTSIDE_MAX_AGE\x10\x04\x32\xe6\x01\n\x0eServingService\x12l\n\x13GetFeastServingInfo\x12).feast.serving.GetFeastServingInfoRequest\x1a*.feast.serving.GetFeastServingInfoResponse\x12\x66\n\x11GetOnlineFeatures\x12\'.feast.serving.GetOnlineFeaturesRequest\x1a(.feast.serving.GetOnlineFeaturesResponseBZ\n\x13\x66\x65\x61st.proto.servingB\x0fServingAPIProtoZ2github.com/feast-dev/feast/go/protos/feast/servingb\x06proto3') + +_globals = globals() +_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) +_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'feast.serving.ServingService_pb2', _globals) +if _descriptor._USE_C_DESCRIPTORS == False: + + DESCRIPTOR._options = None + DESCRIPTOR._serialized_options = b'\n\023feast.proto.servingB\017ServingAPIProtoZ2github.com/feast-dev/feast/go/protos/feast/serving' + _GETONLINEFEATURESREQUESTV2_ENTITYROW_FIELDSENTRY._options = None + _GETONLINEFEATURESREQUESTV2_ENTITYROW_FIELDSENTRY._serialized_options = b'8\001' + _GETONLINEFEATURESREQUEST_ENTITIESENTRY._options = None + _GETONLINEFEATURESREQUEST_ENTITIESENTRY._serialized_options = b'8\001' + _GETONLINEFEATURESREQUEST_REQUESTCONTEXTENTRY._options = None + _GETONLINEFEATURESREQUEST_REQUESTCONTEXTENTRY._serialized_options = b'8\001' + _globals['_FIELDSTATUS']._serialized_start=1544 + _globals['_FIELDSTATUS']._serialized_end=1635 + _globals['_GETFEASTSERVINGINFOREQUEST']._serialized_start=111 + _globals['_GETFEASTSERVINGINFOREQUEST']._serialized_end=139 + _globals['_GETFEASTSERVINGINFORESPONSE']._serialized_start=141 + _globals['_GETFEASTSERVINGINFORESPONSE']._serialized_end=187 + _globals['_FEATUREREFERENCEV2']._serialized_start=189 + _globals['_FEATUREREFERENCEV2']._serialized_end=258 + _globals['_GETONLINEFEATURESREQUESTV2']._serialized_start=261 + _globals['_GETONLINEFEATURESREQUESTV2']._serialized_end=642 + _globals['_GETONLINEFEATURESREQUESTV2_ENTITYROW']._serialized_start=436 + _globals['_GETONLINEFEATURESREQUESTV2_ENTITYROW']._serialized_end=642 + _globals['_GETONLINEFEATURESREQUESTV2_ENTITYROW_FIELDSENTRY']._serialized_start=577 + _globals['_GETONLINEFEATURESREQUESTV2_ENTITYROW_FIELDSENTRY']._serialized_end=642 + _globals['_FEATURELIST']._serialized_start=644 + _globals['_FEATURELIST']._serialized_end=670 + _globals['_GETONLINEFEATURESREQUEST']._serialized_start=673 + _globals['_GETONLINEFEATURESREQUEST']._serialized_end=1129 + _globals['_GETONLINEFEATURESREQUEST_ENTITIESENTRY']._serialized_start=963 + _globals['_GETONLINEFEATURESREQUEST_ENTITIESENTRY']._serialized_end=1038 + _globals['_GETONLINEFEATURESREQUEST_REQUESTCONTEXTENTRY']._serialized_start=1040 + _globals['_GETONLINEFEATURESREQUEST_REQUESTCONTEXTENTRY']._serialized_end=1121 + _globals['_GETONLINEFEATURESRESPONSE']._serialized_start=1132 + _globals['_GETONLINEFEATURESRESPONSE']._serialized_end=1454 + _globals['_GETONLINEFEATURESRESPONSE_FEATUREVECTOR']._serialized_start=1303 + _globals['_GETONLINEFEATURESRESPONSE_FEATUREVECTOR']._serialized_end=1454 + _globals['_GETONLINEFEATURESRESPONSEMETADATA']._serialized_start=1456 + _globals['_GETONLINEFEATURESRESPONSEMETADATA']._serialized_end=1542 + _globals['_SERVINGSERVICE']._serialized_start=1638 + _globals['_SERVINGSERVICE']._serialized_end=1868 +# @@protoc_insertion_point(module_scope) diff --git a/sdk/python/feast/protos/feast/serving/ServingService_pb2.pyi b/sdk/python/feast/protos/feast/serving/ServingService_pb2.pyi new file mode 100644 index 0000000000..5dc041b065 --- /dev/null +++ b/sdk/python/feast/protos/feast/serving/ServingService_pb2.pyi @@ -0,0 +1,309 @@ +""" +@generated by mypy-protobuf. Do not edit manually! +isort:skip_file +""" +import builtins +import feast.types.Value_pb2 +import google.protobuf.descriptor +import google.protobuf.internal.containers +import google.protobuf.internal.enum_type_wrapper +import google.protobuf.message +import google.protobuf.timestamp_pb2 +import typing +import typing_extensions + +DESCRIPTOR: google.protobuf.descriptor.FileDescriptor = ... + +class _FieldStatus: + ValueType = typing.NewType('ValueType', builtins.int) + V: typing_extensions.TypeAlias = ValueType +class _FieldStatusEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_FieldStatus.ValueType], builtins.type): + DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor = ... + INVALID: FieldStatus.ValueType = ... # 0 + """Status is unset for this field.""" + + PRESENT: FieldStatus.ValueType = ... # 1 + """Field value is present for this field and age is within max age.""" + + NULL_VALUE: FieldStatus.ValueType = ... # 2 + """Values could be found for entity key and age is within max age, but + this field value is not assigned a value on ingestion into feast. + """ + + NOT_FOUND: FieldStatus.ValueType = ... # 3 + """Entity key did not return any values as they do not exist in Feast. + This could suggest that the feature values have not yet been ingested + into feast or the ingestion failed. + """ + + OUTSIDE_MAX_AGE: FieldStatus.ValueType = ... # 4 + """Values could be found for entity key, but field values are outside the maximum + allowable range. + """ + +class FieldStatus(_FieldStatus, metaclass=_FieldStatusEnumTypeWrapper): + pass + +INVALID: FieldStatus.ValueType = ... # 0 +"""Status is unset for this field.""" + +PRESENT: FieldStatus.ValueType = ... # 1 +"""Field value is present for this field and age is within max age.""" + +NULL_VALUE: FieldStatus.ValueType = ... # 2 +"""Values could be found for entity key and age is within max age, but +this field value is not assigned a value on ingestion into feast. +""" + +NOT_FOUND: FieldStatus.ValueType = ... # 3 +"""Entity key did not return any values as they do not exist in Feast. +This could suggest that the feature values have not yet been ingested +into feast or the ingestion failed. +""" + +OUTSIDE_MAX_AGE: FieldStatus.ValueType = ... # 4 +"""Values could be found for entity key, but field values are outside the maximum +allowable range. +""" + +global___FieldStatus = FieldStatus + + +class GetFeastServingInfoRequest(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + def __init__(self, + ) -> None: ... +global___GetFeastServingInfoRequest = GetFeastServingInfoRequest + +class GetFeastServingInfoResponse(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + VERSION_FIELD_NUMBER: builtins.int + version: typing.Text = ... + """Feast version of this serving deployment.""" + + def __init__(self, + *, + version : typing.Text = ..., + ) -> None: ... + def ClearField(self, field_name: typing_extensions.Literal["version",b"version"]) -> None: ... +global___GetFeastServingInfoResponse = GetFeastServingInfoResponse + +class FeatureReferenceV2(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + FEATURE_VIEW_NAME_FIELD_NUMBER: builtins.int + FEATURE_NAME_FIELD_NUMBER: builtins.int + feature_view_name: typing.Text = ... + """Name of the Feature View to retrieve the feature from.""" + + feature_name: typing.Text = ... + """Name of the Feature to retrieve the feature from.""" + + def __init__(self, + *, + feature_view_name : typing.Text = ..., + feature_name : typing.Text = ..., + ) -> None: ... + def ClearField(self, field_name: typing_extensions.Literal["feature_name",b"feature_name","feature_view_name",b"feature_view_name"]) -> None: ... +global___FeatureReferenceV2 = FeatureReferenceV2 + +class GetOnlineFeaturesRequestV2(google.protobuf.message.Message): + """ToDo (oleksii): remove this message (since it's not used) and move EntityRow on package level""" + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + class EntityRow(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + class FieldsEntry(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + KEY_FIELD_NUMBER: builtins.int + VALUE_FIELD_NUMBER: builtins.int + key: typing.Text = ... + @property + def value(self) -> feast.types.Value_pb2.Value: ... + def __init__(self, + *, + key : typing.Text = ..., + value : typing.Optional[feast.types.Value_pb2.Value] = ..., + ) -> None: ... + def HasField(self, field_name: typing_extensions.Literal["value",b"value"]) -> builtins.bool: ... + def ClearField(self, field_name: typing_extensions.Literal["key",b"key","value",b"value"]) -> None: ... + + TIMESTAMP_FIELD_NUMBER: builtins.int + FIELDS_FIELD_NUMBER: builtins.int + @property + def timestamp(self) -> google.protobuf.timestamp_pb2.Timestamp: + """Request timestamp of this row. This value will be used, + together with maxAge, to determine feature staleness. + """ + pass + @property + def fields(self) -> google.protobuf.internal.containers.MessageMap[typing.Text, feast.types.Value_pb2.Value]: + """Map containing mapping of entity name to entity value.""" + pass + def __init__(self, + *, + timestamp : typing.Optional[google.protobuf.timestamp_pb2.Timestamp] = ..., + fields : typing.Optional[typing.Mapping[typing.Text, feast.types.Value_pb2.Value]] = ..., + ) -> None: ... + def HasField(self, field_name: typing_extensions.Literal["timestamp",b"timestamp"]) -> builtins.bool: ... + def ClearField(self, field_name: typing_extensions.Literal["fields",b"fields","timestamp",b"timestamp"]) -> None: ... + + FEATURES_FIELD_NUMBER: builtins.int + ENTITY_ROWS_FIELD_NUMBER: builtins.int + PROJECT_FIELD_NUMBER: builtins.int + @property + def features(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___FeatureReferenceV2]: + """List of features that are being retrieved""" + pass + @property + def entity_rows(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___GetOnlineFeaturesRequestV2.EntityRow]: + """List of entity rows, containing entity id and timestamp data. + Used during retrieval of feature rows and for joining feature + rows into a final dataset + """ + pass + project: typing.Text = ... + """Optional field to specify project name override. If specified, uses the + given project for retrieval. Overrides the projects specified in + Feature References if both are specified. + """ + + def __init__(self, + *, + features : typing.Optional[typing.Iterable[global___FeatureReferenceV2]] = ..., + entity_rows : typing.Optional[typing.Iterable[global___GetOnlineFeaturesRequestV2.EntityRow]] = ..., + project : typing.Text = ..., + ) -> None: ... + def ClearField(self, field_name: typing_extensions.Literal["entity_rows",b"entity_rows","features",b"features","project",b"project"]) -> None: ... +global___GetOnlineFeaturesRequestV2 = GetOnlineFeaturesRequestV2 + +class FeatureList(google.protobuf.message.Message): + """In JSON "val" field can be omitted""" + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + VAL_FIELD_NUMBER: builtins.int + @property + def val(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[typing.Text]: ... + def __init__(self, + *, + val : typing.Optional[typing.Iterable[typing.Text]] = ..., + ) -> None: ... + def ClearField(self, field_name: typing_extensions.Literal["val",b"val"]) -> None: ... +global___FeatureList = FeatureList + +class GetOnlineFeaturesRequest(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + class EntitiesEntry(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + KEY_FIELD_NUMBER: builtins.int + VALUE_FIELD_NUMBER: builtins.int + key: typing.Text = ... + @property + def value(self) -> feast.types.Value_pb2.RepeatedValue: ... + def __init__(self, + *, + key : typing.Text = ..., + value : typing.Optional[feast.types.Value_pb2.RepeatedValue] = ..., + ) -> None: ... + def HasField(self, field_name: typing_extensions.Literal["value",b"value"]) -> builtins.bool: ... + def ClearField(self, field_name: typing_extensions.Literal["key",b"key","value",b"value"]) -> None: ... + + class RequestContextEntry(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + KEY_FIELD_NUMBER: builtins.int + VALUE_FIELD_NUMBER: builtins.int + key: typing.Text = ... + @property + def value(self) -> feast.types.Value_pb2.RepeatedValue: ... + def __init__(self, + *, + key : typing.Text = ..., + value : typing.Optional[feast.types.Value_pb2.RepeatedValue] = ..., + ) -> None: ... + def HasField(self, field_name: typing_extensions.Literal["value",b"value"]) -> builtins.bool: ... + def ClearField(self, field_name: typing_extensions.Literal["key",b"key","value",b"value"]) -> None: ... + + FEATURE_SERVICE_FIELD_NUMBER: builtins.int + FEATURES_FIELD_NUMBER: builtins.int + ENTITIES_FIELD_NUMBER: builtins.int + FULL_FEATURE_NAMES_FIELD_NUMBER: builtins.int + REQUEST_CONTEXT_FIELD_NUMBER: builtins.int + feature_service: typing.Text = ... + @property + def features(self) -> global___FeatureList: ... + @property + def entities(self) -> google.protobuf.internal.containers.MessageMap[typing.Text, feast.types.Value_pb2.RepeatedValue]: + """The entity data is specified in a columnar format + A map of entity name -> list of values + """ + pass + full_feature_names: builtins.bool = ... + @property + def request_context(self) -> google.protobuf.internal.containers.MessageMap[typing.Text, feast.types.Value_pb2.RepeatedValue]: + """Context for OnDemand Feature Transformation + (was moved to dedicated parameter to avoid unnecessary separation logic on serving side) + A map of variable name -> list of values + """ + pass + def __init__(self, + *, + feature_service : typing.Text = ..., + features : typing.Optional[global___FeatureList] = ..., + entities : typing.Optional[typing.Mapping[typing.Text, feast.types.Value_pb2.RepeatedValue]] = ..., + full_feature_names : builtins.bool = ..., + request_context : typing.Optional[typing.Mapping[typing.Text, feast.types.Value_pb2.RepeatedValue]] = ..., + ) -> None: ... + def HasField(self, field_name: typing_extensions.Literal["feature_service",b"feature_service","features",b"features","kind",b"kind"]) -> builtins.bool: ... + def ClearField(self, field_name: typing_extensions.Literal["entities",b"entities","feature_service",b"feature_service","features",b"features","full_feature_names",b"full_feature_names","kind",b"kind","request_context",b"request_context"]) -> None: ... + def WhichOneof(self, oneof_group: typing_extensions.Literal["kind",b"kind"]) -> typing.Optional[typing_extensions.Literal["feature_service","features"]]: ... +global___GetOnlineFeaturesRequest = GetOnlineFeaturesRequest + +class GetOnlineFeaturesResponse(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + class FeatureVector(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + VALUES_FIELD_NUMBER: builtins.int + STATUSES_FIELD_NUMBER: builtins.int + EVENT_TIMESTAMPS_FIELD_NUMBER: builtins.int + @property + def values(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[feast.types.Value_pb2.Value]: ... + @property + def statuses(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[global___FieldStatus.ValueType]: ... + @property + def event_timestamps(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[google.protobuf.timestamp_pb2.Timestamp]: ... + def __init__(self, + *, + values : typing.Optional[typing.Iterable[feast.types.Value_pb2.Value]] = ..., + statuses : typing.Optional[typing.Iterable[global___FieldStatus.ValueType]] = ..., + event_timestamps : typing.Optional[typing.Iterable[google.protobuf.timestamp_pb2.Timestamp]] = ..., + ) -> None: ... + def ClearField(self, field_name: typing_extensions.Literal["event_timestamps",b"event_timestamps","statuses",b"statuses","values",b"values"]) -> None: ... + + METADATA_FIELD_NUMBER: builtins.int + RESULTS_FIELD_NUMBER: builtins.int + @property + def metadata(self) -> global___GetOnlineFeaturesResponseMetadata: ... + @property + def results(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___GetOnlineFeaturesResponse.FeatureVector]: + """Length of "results" array should match length of requested features. + We also preserve the same order of features here as in metadata.feature_names + """ + pass + def __init__(self, + *, + metadata : typing.Optional[global___GetOnlineFeaturesResponseMetadata] = ..., + results : typing.Optional[typing.Iterable[global___GetOnlineFeaturesResponse.FeatureVector]] = ..., + ) -> None: ... + def HasField(self, field_name: typing_extensions.Literal["metadata",b"metadata"]) -> builtins.bool: ... + def ClearField(self, field_name: typing_extensions.Literal["metadata",b"metadata","results",b"results"]) -> None: ... +global___GetOnlineFeaturesResponse = GetOnlineFeaturesResponse + +class GetOnlineFeaturesResponseMetadata(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + FEATURE_NAMES_FIELD_NUMBER: builtins.int + @property + def feature_names(self) -> global___FeatureList: ... + def __init__(self, + *, + feature_names : typing.Optional[global___FeatureList] = ..., + ) -> None: ... + def HasField(self, field_name: typing_extensions.Literal["feature_names",b"feature_names"]) -> builtins.bool: ... + def ClearField(self, field_name: typing_extensions.Literal["feature_names",b"feature_names"]) -> None: ... +global___GetOnlineFeaturesResponseMetadata = GetOnlineFeaturesResponseMetadata diff --git a/sdk/python/feast/protos/feast/serving/ServingService_pb2_grpc.py b/sdk/python/feast/protos/feast/serving/ServingService_pb2_grpc.py new file mode 100644 index 0000000000..d3cd055f66 --- /dev/null +++ b/sdk/python/feast/protos/feast/serving/ServingService_pb2_grpc.py @@ -0,0 +1,101 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +"""Client and server classes corresponding to protobuf-defined services.""" +import grpc + +from feast.protos.feast.serving import ServingService_pb2 as feast_dot_serving_dot_ServingService__pb2 + + +class ServingServiceStub(object): + """Missing associated documentation comment in .proto file.""" + + def __init__(self, channel): + """Constructor. + + Args: + channel: A grpc.Channel. + """ + self.GetFeastServingInfo = channel.unary_unary( + '/feast.serving.ServingService/GetFeastServingInfo', + request_serializer=feast_dot_serving_dot_ServingService__pb2.GetFeastServingInfoRequest.SerializeToString, + response_deserializer=feast_dot_serving_dot_ServingService__pb2.GetFeastServingInfoResponse.FromString, + ) + self.GetOnlineFeatures = channel.unary_unary( + '/feast.serving.ServingService/GetOnlineFeatures', + request_serializer=feast_dot_serving_dot_ServingService__pb2.GetOnlineFeaturesRequest.SerializeToString, + response_deserializer=feast_dot_serving_dot_ServingService__pb2.GetOnlineFeaturesResponse.FromString, + ) + + +class ServingServiceServicer(object): + """Missing associated documentation comment in .proto file.""" + + def GetFeastServingInfo(self, request, context): + """Get information about this Feast serving. + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def GetOnlineFeatures(self, request, context): + """Get online features synchronously. + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + +def add_ServingServiceServicer_to_server(servicer, server): + rpc_method_handlers = { + 'GetFeastServingInfo': grpc.unary_unary_rpc_method_handler( + servicer.GetFeastServingInfo, + request_deserializer=feast_dot_serving_dot_ServingService__pb2.GetFeastServingInfoRequest.FromString, + response_serializer=feast_dot_serving_dot_ServingService__pb2.GetFeastServingInfoResponse.SerializeToString, + ), + 'GetOnlineFeatures': grpc.unary_unary_rpc_method_handler( + servicer.GetOnlineFeatures, + request_deserializer=feast_dot_serving_dot_ServingService__pb2.GetOnlineFeaturesRequest.FromString, + response_serializer=feast_dot_serving_dot_ServingService__pb2.GetOnlineFeaturesResponse.SerializeToString, + ), + } + generic_handler = grpc.method_handlers_generic_handler( + 'feast.serving.ServingService', rpc_method_handlers) + server.add_generic_rpc_handlers((generic_handler,)) + + + # This class is part of an EXPERIMENTAL API. +class ServingService(object): + """Missing associated documentation comment in .proto file.""" + + @staticmethod + def GetFeastServingInfo(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_unary(request, target, '/feast.serving.ServingService/GetFeastServingInfo', + feast_dot_serving_dot_ServingService__pb2.GetFeastServingInfoRequest.SerializeToString, + feast_dot_serving_dot_ServingService__pb2.GetFeastServingInfoResponse.FromString, + options, channel_credentials, + insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + + @staticmethod + def GetOnlineFeatures(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_unary(request, target, '/feast.serving.ServingService/GetOnlineFeatures', + feast_dot_serving_dot_ServingService__pb2.GetOnlineFeaturesRequest.SerializeToString, + feast_dot_serving_dot_ServingService__pb2.GetOnlineFeaturesResponse.FromString, + options, channel_credentials, + insecure, call_credentials, compression, wait_for_ready, timeout, metadata) diff --git a/sdk/python/feast/protos/feast/serving/TransformationService_pb2.py b/sdk/python/feast/protos/feast/serving/TransformationService_pb2.py new file mode 100644 index 0000000000..0416d84b6f --- /dev/null +++ b/sdk/python/feast/protos/feast/serving/TransformationService_pb2.py @@ -0,0 +1,39 @@ +# -*- coding: utf-8 -*- +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: feast/serving/TransformationService.proto +"""Generated protocol buffer code.""" +from google.protobuf import descriptor as _descriptor +from google.protobuf import descriptor_pool as _descriptor_pool +from google.protobuf import symbol_database as _symbol_database +from google.protobuf.internal import builder as _builder +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + + + +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n)feast/serving/TransformationService.proto\x12\rfeast.serving\"+\n\tValueType\x12\x15\n\x0b\x61rrow_value\x18\x01 \x01(\x0cH\x00\x42\x07\n\x05value\"%\n#GetTransformationServiceInfoRequest\"\x9c\x01\n$GetTransformationServiceInfoResponse\x12\x0f\n\x07version\x18\x01 \x01(\t\x12\x36\n\x04type\x18\x02 \x01(\x0e\x32(.feast.serving.TransformationServiceType\x12+\n#transformation_service_type_details\x18\x03 \x01(\t\"\x88\x01\n\x18TransformFeaturesRequest\x12#\n\x1bon_demand_feature_view_name\x18\x01 \x01(\t\x12\x0f\n\x07project\x18\x02 \x01(\t\x12\x36\n\x14transformation_input\x18\x03 \x01(\x0b\x32\x18.feast.serving.ValueType\"T\n\x19TransformFeaturesResponse\x12\x37\n\x15transformation_output\x18\x03 \x01(\x0b\x32\x18.feast.serving.ValueType*\x94\x01\n\x19TransformationServiceType\x12\'\n#TRANSFORMATION_SERVICE_TYPE_INVALID\x10\x00\x12&\n\"TRANSFORMATION_SERVICE_TYPE_PYTHON\x10\x01\x12&\n\"TRANSFORMATION_SERVICE_TYPE_CUSTOM\x10\x64\x32\x89\x02\n\x15TransformationService\x12\x87\x01\n\x1cGetTransformationServiceInfo\x12\x32.feast.serving.GetTransformationServiceInfoRequest\x1a\x33.feast.serving.GetTransformationServiceInfoResponse\x12\x66\n\x11TransformFeatures\x12\'.feast.serving.TransformFeaturesRequest\x1a(.feast.serving.TransformFeaturesResponseBh\n\x13\x66\x65\x61st.proto.servingB\x1dTransformationServiceAPIProtoZ2github.com/feast-dev/feast/go/protos/feast/servingb\x06proto3') + +_globals = globals() +_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) +_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'feast.serving.TransformationService_pb2', _globals) +if _descriptor._USE_C_DESCRIPTORS == False: + + DESCRIPTOR._options = None + DESCRIPTOR._serialized_options = b'\n\023feast.proto.servingB\035TransformationServiceAPIProtoZ2github.com/feast-dev/feast/go/protos/feast/serving' + _globals['_TRANSFORMATIONSERVICETYPE']._serialized_start=529 + _globals['_TRANSFORMATIONSERVICETYPE']._serialized_end=677 + _globals['_VALUETYPE']._serialized_start=60 + _globals['_VALUETYPE']._serialized_end=103 + _globals['_GETTRANSFORMATIONSERVICEINFOREQUEST']._serialized_start=105 + _globals['_GETTRANSFORMATIONSERVICEINFOREQUEST']._serialized_end=142 + _globals['_GETTRANSFORMATIONSERVICEINFORESPONSE']._serialized_start=145 + _globals['_GETTRANSFORMATIONSERVICEINFORESPONSE']._serialized_end=301 + _globals['_TRANSFORMFEATURESREQUEST']._serialized_start=304 + _globals['_TRANSFORMFEATURESREQUEST']._serialized_end=440 + _globals['_TRANSFORMFEATURESRESPONSE']._serialized_start=442 + _globals['_TRANSFORMFEATURESRESPONSE']._serialized_end=526 + _globals['_TRANSFORMATIONSERVICE']._serialized_start=680 + _globals['_TRANSFORMATIONSERVICE']._serialized_end=945 +# @@protoc_insertion_point(module_scope) diff --git a/sdk/python/feast/protos/feast/serving/TransformationService_pb2.pyi b/sdk/python/feast/protos/feast/serving/TransformationService_pb2.pyi new file mode 100644 index 0000000000..2862f4b0ab --- /dev/null +++ b/sdk/python/feast/protos/feast/serving/TransformationService_pb2.pyi @@ -0,0 +1,105 @@ +""" +@generated by mypy-protobuf. Do not edit manually! +isort:skip_file +""" +import builtins +import google.protobuf.descriptor +import google.protobuf.internal.enum_type_wrapper +import google.protobuf.message +import typing +import typing_extensions + +DESCRIPTOR: google.protobuf.descriptor.FileDescriptor = ... + +class _TransformationServiceType: + ValueType = typing.NewType('ValueType', builtins.int) + V: typing_extensions.TypeAlias = ValueType +class _TransformationServiceTypeEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_TransformationServiceType.ValueType], builtins.type): + DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor = ... + TRANSFORMATION_SERVICE_TYPE_INVALID: TransformationServiceType.ValueType = ... # 0 + TRANSFORMATION_SERVICE_TYPE_PYTHON: TransformationServiceType.ValueType = ... # 1 + TRANSFORMATION_SERVICE_TYPE_CUSTOM: TransformationServiceType.ValueType = ... # 100 +class TransformationServiceType(_TransformationServiceType, metaclass=_TransformationServiceTypeEnumTypeWrapper): + pass + +TRANSFORMATION_SERVICE_TYPE_INVALID: TransformationServiceType.ValueType = ... # 0 +TRANSFORMATION_SERVICE_TYPE_PYTHON: TransformationServiceType.ValueType = ... # 1 +TRANSFORMATION_SERVICE_TYPE_CUSTOM: TransformationServiceType.ValueType = ... # 100 +global___TransformationServiceType = TransformationServiceType + + +class ValueType(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + ARROW_VALUE_FIELD_NUMBER: builtins.int + arrow_value: builtins.bytes = ... + """Having a oneOf provides forward compatibility if we need to support compound types + that are not supported by arrow natively. + """ + + def __init__(self, + *, + arrow_value : builtins.bytes = ..., + ) -> None: ... + def HasField(self, field_name: typing_extensions.Literal["arrow_value",b"arrow_value","value",b"value"]) -> builtins.bool: ... + def ClearField(self, field_name: typing_extensions.Literal["arrow_value",b"arrow_value","value",b"value"]) -> None: ... + def WhichOneof(self, oneof_group: typing_extensions.Literal["value",b"value"]) -> typing.Optional[typing_extensions.Literal["arrow_value"]]: ... +global___ValueType = ValueType + +class GetTransformationServiceInfoRequest(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + def __init__(self, + ) -> None: ... +global___GetTransformationServiceInfoRequest = GetTransformationServiceInfoRequest + +class GetTransformationServiceInfoResponse(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + VERSION_FIELD_NUMBER: builtins.int + TYPE_FIELD_NUMBER: builtins.int + TRANSFORMATION_SERVICE_TYPE_DETAILS_FIELD_NUMBER: builtins.int + version: typing.Text = ... + """Feast version of this transformation service deployment.""" + + type: global___TransformationServiceType.ValueType = ... + """Type of transformation service deployment. This is either Python, or custom""" + + transformation_service_type_details: typing.Text = ... + def __init__(self, + *, + version : typing.Text = ..., + type : global___TransformationServiceType.ValueType = ..., + transformation_service_type_details : typing.Text = ..., + ) -> None: ... + def ClearField(self, field_name: typing_extensions.Literal["transformation_service_type_details",b"transformation_service_type_details","type",b"type","version",b"version"]) -> None: ... +global___GetTransformationServiceInfoResponse = GetTransformationServiceInfoResponse + +class TransformFeaturesRequest(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + ON_DEMAND_FEATURE_VIEW_NAME_FIELD_NUMBER: builtins.int + PROJECT_FIELD_NUMBER: builtins.int + TRANSFORMATION_INPUT_FIELD_NUMBER: builtins.int + on_demand_feature_view_name: typing.Text = ... + project: typing.Text = ... + @property + def transformation_input(self) -> global___ValueType: ... + def __init__(self, + *, + on_demand_feature_view_name : typing.Text = ..., + project : typing.Text = ..., + transformation_input : typing.Optional[global___ValueType] = ..., + ) -> None: ... + def HasField(self, field_name: typing_extensions.Literal["transformation_input",b"transformation_input"]) -> builtins.bool: ... + def ClearField(self, field_name: typing_extensions.Literal["on_demand_feature_view_name",b"on_demand_feature_view_name","project",b"project","transformation_input",b"transformation_input"]) -> None: ... +global___TransformFeaturesRequest = TransformFeaturesRequest + +class TransformFeaturesResponse(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + TRANSFORMATION_OUTPUT_FIELD_NUMBER: builtins.int + @property + def transformation_output(self) -> global___ValueType: ... + def __init__(self, + *, + transformation_output : typing.Optional[global___ValueType] = ..., + ) -> None: ... + def HasField(self, field_name: typing_extensions.Literal["transformation_output",b"transformation_output"]) -> builtins.bool: ... + def ClearField(self, field_name: typing_extensions.Literal["transformation_output",b"transformation_output"]) -> None: ... +global___TransformFeaturesResponse = TransformFeaturesResponse diff --git a/sdk/python/feast/protos/feast/serving/TransformationService_pb2_grpc.py b/sdk/python/feast/protos/feast/serving/TransformationService_pb2_grpc.py new file mode 100644 index 0000000000..30099e39ca --- /dev/null +++ b/sdk/python/feast/protos/feast/serving/TransformationService_pb2_grpc.py @@ -0,0 +1,99 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +"""Client and server classes corresponding to protobuf-defined services.""" +import grpc + +from feast.protos.feast.serving import TransformationService_pb2 as feast_dot_serving_dot_TransformationService__pb2 + + +class TransformationServiceStub(object): + """Missing associated documentation comment in .proto file.""" + + def __init__(self, channel): + """Constructor. + + Args: + channel: A grpc.Channel. + """ + self.GetTransformationServiceInfo = channel.unary_unary( + '/feast.serving.TransformationService/GetTransformationServiceInfo', + request_serializer=feast_dot_serving_dot_TransformationService__pb2.GetTransformationServiceInfoRequest.SerializeToString, + response_deserializer=feast_dot_serving_dot_TransformationService__pb2.GetTransformationServiceInfoResponse.FromString, + ) + self.TransformFeatures = channel.unary_unary( + '/feast.serving.TransformationService/TransformFeatures', + request_serializer=feast_dot_serving_dot_TransformationService__pb2.TransformFeaturesRequest.SerializeToString, + response_deserializer=feast_dot_serving_dot_TransformationService__pb2.TransformFeaturesResponse.FromString, + ) + + +class TransformationServiceServicer(object): + """Missing associated documentation comment in .proto file.""" + + def GetTransformationServiceInfo(self, request, context): + """Missing associated documentation comment in .proto file.""" + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def TransformFeatures(self, request, context): + """Missing associated documentation comment in .proto file.""" + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + +def add_TransformationServiceServicer_to_server(servicer, server): + rpc_method_handlers = { + 'GetTransformationServiceInfo': grpc.unary_unary_rpc_method_handler( + servicer.GetTransformationServiceInfo, + request_deserializer=feast_dot_serving_dot_TransformationService__pb2.GetTransformationServiceInfoRequest.FromString, + response_serializer=feast_dot_serving_dot_TransformationService__pb2.GetTransformationServiceInfoResponse.SerializeToString, + ), + 'TransformFeatures': grpc.unary_unary_rpc_method_handler( + servicer.TransformFeatures, + request_deserializer=feast_dot_serving_dot_TransformationService__pb2.TransformFeaturesRequest.FromString, + response_serializer=feast_dot_serving_dot_TransformationService__pb2.TransformFeaturesResponse.SerializeToString, + ), + } + generic_handler = grpc.method_handlers_generic_handler( + 'feast.serving.TransformationService', rpc_method_handlers) + server.add_generic_rpc_handlers((generic_handler,)) + + + # This class is part of an EXPERIMENTAL API. +class TransformationService(object): + """Missing associated documentation comment in .proto file.""" + + @staticmethod + def GetTransformationServiceInfo(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_unary(request, target, '/feast.serving.TransformationService/GetTransformationServiceInfo', + feast_dot_serving_dot_TransformationService__pb2.GetTransformationServiceInfoRequest.SerializeToString, + feast_dot_serving_dot_TransformationService__pb2.GetTransformationServiceInfoResponse.FromString, + options, channel_credentials, + insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + + @staticmethod + def TransformFeatures(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_unary(request, target, '/feast.serving.TransformationService/TransformFeatures', + feast_dot_serving_dot_TransformationService__pb2.TransformFeaturesRequest.SerializeToString, + feast_dot_serving_dot_TransformationService__pb2.TransformFeaturesResponse.FromString, + options, channel_credentials, + insecure, call_credentials, compression, wait_for_ready, timeout, metadata) diff --git a/sdk/python/feast/protos/feast/serving/__init__.py b/sdk/python/feast/protos/feast/serving/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/sdk/python/feast/protos/feast/storage/Redis_pb2.py b/sdk/python/feast/protos/feast/storage/Redis_pb2.py new file mode 100644 index 0000000000..c7c6e967a4 --- /dev/null +++ b/sdk/python/feast/protos/feast/storage/Redis_pb2.py @@ -0,0 +1,28 @@ +# -*- coding: utf-8 -*- +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: feast/storage/Redis.proto +"""Generated protocol buffer code.""" +from google.protobuf import descriptor as _descriptor +from google.protobuf import descriptor_pool as _descriptor_pool +from google.protobuf import symbol_database as _symbol_database +from google.protobuf.internal import builder as _builder +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +from feast.protos.feast.types import Value_pb2 as feast_dot_types_dot_Value__pb2 + + +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x19\x66\x65\x61st/storage/Redis.proto\x12\rfeast.storage\x1a\x17\x66\x65\x61st/types/Value.proto\"^\n\nRedisKeyV2\x12\x0f\n\x07project\x18\x01 \x01(\t\x12\x14\n\x0c\x65ntity_names\x18\x02 \x03(\t\x12)\n\rentity_values\x18\x03 \x03(\x0b\x32\x12.feast.types.ValueBU\n\x13\x66\x65\x61st.proto.storageB\nRedisProtoZ2github.com/feast-dev/feast/go/protos/feast/storageb\x06proto3') + +_globals = globals() +_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) +_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'feast.storage.Redis_pb2', _globals) +if _descriptor._USE_C_DESCRIPTORS == False: + + DESCRIPTOR._options = None + DESCRIPTOR._serialized_options = b'\n\023feast.proto.storageB\nRedisProtoZ2github.com/feast-dev/feast/go/protos/feast/storage' + _globals['_REDISKEYV2']._serialized_start=69 + _globals['_REDISKEYV2']._serialized_end=163 +# @@protoc_insertion_point(module_scope) diff --git a/sdk/python/feast/protos/feast/storage/Redis_pb2.pyi b/sdk/python/feast/protos/feast/storage/Redis_pb2.pyi new file mode 100644 index 0000000000..caa0086263 --- /dev/null +++ b/sdk/python/feast/protos/feast/storage/Redis_pb2.pyi @@ -0,0 +1,32 @@ +""" +@generated by mypy-protobuf. Do not edit manually! +isort:skip_file +""" +import builtins +import feast.types.Value_pb2 +import google.protobuf.descriptor +import google.protobuf.internal.containers +import google.protobuf.message +import typing +import typing_extensions + +DESCRIPTOR: google.protobuf.descriptor.FileDescriptor = ... + +class RedisKeyV2(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + PROJECT_FIELD_NUMBER: builtins.int + ENTITY_NAMES_FIELD_NUMBER: builtins.int + ENTITY_VALUES_FIELD_NUMBER: builtins.int + project: typing.Text = ... + @property + def entity_names(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[typing.Text]: ... + @property + def entity_values(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[feast.types.Value_pb2.Value]: ... + def __init__(self, + *, + project : typing.Text = ..., + entity_names : typing.Optional[typing.Iterable[typing.Text]] = ..., + entity_values : typing.Optional[typing.Iterable[feast.types.Value_pb2.Value]] = ..., + ) -> None: ... + def ClearField(self, field_name: typing_extensions.Literal["entity_names",b"entity_names","entity_values",b"entity_values","project",b"project"]) -> None: ... +global___RedisKeyV2 = RedisKeyV2 diff --git a/sdk/python/feast/protos/feast/storage/Redis_pb2_grpc.py b/sdk/python/feast/protos/feast/storage/Redis_pb2_grpc.py new file mode 100644 index 0000000000..2daafffebf --- /dev/null +++ b/sdk/python/feast/protos/feast/storage/Redis_pb2_grpc.py @@ -0,0 +1,4 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +"""Client and server classes corresponding to protobuf-defined services.""" +import grpc + diff --git a/sdk/python/feast/protos/feast/storage/__init__.py b/sdk/python/feast/protos/feast/storage/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/sdk/python/feast/protos/feast/types/EntityKey_pb2.py b/sdk/python/feast/protos/feast/types/EntityKey_pb2.py new file mode 100644 index 0000000000..34480eb8a3 --- /dev/null +++ b/sdk/python/feast/protos/feast/types/EntityKey_pb2.py @@ -0,0 +1,28 @@ +# -*- coding: utf-8 -*- +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: feast/types/EntityKey.proto +"""Generated protocol buffer code.""" +from google.protobuf import descriptor as _descriptor +from google.protobuf import descriptor_pool as _descriptor_pool +from google.protobuf import symbol_database as _symbol_database +from google.protobuf.internal import builder as _builder +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +from feast.protos.feast.types import Value_pb2 as feast_dot_types_dot_Value__pb2 + + +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1b\x66\x65\x61st/types/EntityKey.proto\x12\x0b\x66\x65\x61st.types\x1a\x17\x66\x65\x61st/types/Value.proto\"I\n\tEntityKey\x12\x11\n\tjoin_keys\x18\x01 \x03(\t\x12)\n\rentity_values\x18\x02 \x03(\x0b\x32\x12.feast.types.ValueBU\n\x11\x66\x65\x61st.proto.typesB\x0e\x45ntityKeyProtoZ0github.com/feast-dev/feast/go/protos/feast/typesb\x06proto3') + +_globals = globals() +_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) +_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'feast.types.EntityKey_pb2', _globals) +if _descriptor._USE_C_DESCRIPTORS == False: + + DESCRIPTOR._options = None + DESCRIPTOR._serialized_options = b'\n\021feast.proto.typesB\016EntityKeyProtoZ0github.com/feast-dev/feast/go/protos/feast/types' + _globals['_ENTITYKEY']._serialized_start=69 + _globals['_ENTITYKEY']._serialized_end=142 +# @@protoc_insertion_point(module_scope) diff --git a/sdk/python/feast/protos/feast/types/EntityKey_pb2.pyi b/sdk/python/feast/protos/feast/types/EntityKey_pb2.pyi new file mode 100644 index 0000000000..f302f6d681 --- /dev/null +++ b/sdk/python/feast/protos/feast/types/EntityKey_pb2.pyi @@ -0,0 +1,29 @@ +""" +@generated by mypy-protobuf. Do not edit manually! +isort:skip_file +""" +import builtins +import feast.types.Value_pb2 +import google.protobuf.descriptor +import google.protobuf.internal.containers +import google.protobuf.message +import typing +import typing_extensions + +DESCRIPTOR: google.protobuf.descriptor.FileDescriptor = ... + +class EntityKey(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + JOIN_KEYS_FIELD_NUMBER: builtins.int + ENTITY_VALUES_FIELD_NUMBER: builtins.int + @property + def join_keys(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[typing.Text]: ... + @property + def entity_values(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[feast.types.Value_pb2.Value]: ... + def __init__(self, + *, + join_keys : typing.Optional[typing.Iterable[typing.Text]] = ..., + entity_values : typing.Optional[typing.Iterable[feast.types.Value_pb2.Value]] = ..., + ) -> None: ... + def ClearField(self, field_name: typing_extensions.Literal["entity_values",b"entity_values","join_keys",b"join_keys"]) -> None: ... +global___EntityKey = EntityKey diff --git a/sdk/python/feast/protos/feast/types/EntityKey_pb2_grpc.py b/sdk/python/feast/protos/feast/types/EntityKey_pb2_grpc.py new file mode 100644 index 0000000000..2daafffebf --- /dev/null +++ b/sdk/python/feast/protos/feast/types/EntityKey_pb2_grpc.py @@ -0,0 +1,4 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +"""Client and server classes corresponding to protobuf-defined services.""" +import grpc + diff --git a/sdk/python/feast/protos/feast/types/Field_pb2.py b/sdk/python/feast/protos/feast/types/Field_pb2.py new file mode 100644 index 0000000000..f85b67245b --- /dev/null +++ b/sdk/python/feast/protos/feast/types/Field_pb2.py @@ -0,0 +1,32 @@ +# -*- coding: utf-8 -*- +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: feast/types/Field.proto +"""Generated protocol buffer code.""" +from google.protobuf import descriptor as _descriptor +from google.protobuf import descriptor_pool as _descriptor_pool +from google.protobuf import symbol_database as _symbol_database +from google.protobuf.internal import builder as _builder +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +from feast.protos.feast.types import Value_pb2 as feast_dot_types_dot_Value__pb2 + + +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x17\x66\x65\x61st/types/Field.proto\x12\x0b\x66\x65\x61st.types\x1a\x17\x66\x65\x61st/types/Value.proto\"\xaf\x01\n\x05\x46ield\x12\x0c\n\x04name\x18\x01 \x01(\t\x12*\n\x05value\x18\x02 \x01(\x0e\x32\x1b.feast.types.ValueType.Enum\x12*\n\x04tags\x18\x03 \x03(\x0b\x32\x1c.feast.types.Field.TagsEntry\x12\x13\n\x0b\x64\x65scription\x18\x04 \x01(\t\x1a+\n\tTagsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x42Q\n\x11\x66\x65\x61st.proto.typesB\nFieldProtoZ0github.com/feast-dev/feast/go/protos/feast/typesb\x06proto3') + +_globals = globals() +_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) +_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'feast.types.Field_pb2', _globals) +if _descriptor._USE_C_DESCRIPTORS == False: + + DESCRIPTOR._options = None + DESCRIPTOR._serialized_options = b'\n\021feast.proto.typesB\nFieldProtoZ0github.com/feast-dev/feast/go/protos/feast/types' + _FIELD_TAGSENTRY._options = None + _FIELD_TAGSENTRY._serialized_options = b'8\001' + _globals['_FIELD']._serialized_start=66 + _globals['_FIELD']._serialized_end=241 + _globals['_FIELD_TAGSENTRY']._serialized_start=198 + _globals['_FIELD_TAGSENTRY']._serialized_end=241 +# @@protoc_insertion_point(module_scope) diff --git a/sdk/python/feast/protos/feast/types/Field_pb2.pyi b/sdk/python/feast/protos/feast/types/Field_pb2.pyi new file mode 100644 index 0000000000..94ebc13ab2 --- /dev/null +++ b/sdk/python/feast/protos/feast/types/Field_pb2.pyi @@ -0,0 +1,51 @@ +""" +@generated by mypy-protobuf. Do not edit manually! +isort:skip_file +""" +import builtins +import feast.types.Value_pb2 +import google.protobuf.descriptor +import google.protobuf.internal.containers +import google.protobuf.message +import typing +import typing_extensions + +DESCRIPTOR: google.protobuf.descriptor.FileDescriptor = ... + +class Field(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + class TagsEntry(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + KEY_FIELD_NUMBER: builtins.int + VALUE_FIELD_NUMBER: builtins.int + key: typing.Text = ... + value: typing.Text = ... + def __init__(self, + *, + key : typing.Text = ..., + value : typing.Text = ..., + ) -> None: ... + def ClearField(self, field_name: typing_extensions.Literal["key",b"key","value",b"value"]) -> None: ... + + NAME_FIELD_NUMBER: builtins.int + VALUE_FIELD_NUMBER: builtins.int + TAGS_FIELD_NUMBER: builtins.int + DESCRIPTION_FIELD_NUMBER: builtins.int + name: typing.Text = ... + value: feast.types.Value_pb2.ValueType.Enum.ValueType = ... + @property + def tags(self) -> google.protobuf.internal.containers.ScalarMap[typing.Text, typing.Text]: + """Tags for user defined metadata on a field""" + pass + description: typing.Text = ... + """Description of the field.""" + + def __init__(self, + *, + name : typing.Text = ..., + value : feast.types.Value_pb2.ValueType.Enum.ValueType = ..., + tags : typing.Optional[typing.Mapping[typing.Text, typing.Text]] = ..., + description : typing.Text = ..., + ) -> None: ... + def ClearField(self, field_name: typing_extensions.Literal["description",b"description","name",b"name","tags",b"tags","value",b"value"]) -> None: ... +global___Field = Field diff --git a/sdk/python/feast/protos/feast/types/Field_pb2_grpc.py b/sdk/python/feast/protos/feast/types/Field_pb2_grpc.py new file mode 100644 index 0000000000..2daafffebf --- /dev/null +++ b/sdk/python/feast/protos/feast/types/Field_pb2_grpc.py @@ -0,0 +1,4 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +"""Client and server classes corresponding to protobuf-defined services.""" +import grpc + diff --git a/sdk/python/feast/protos/feast/types/Value_pb2.py b/sdk/python/feast/protos/feast/types/Value_pb2.py new file mode 100644 index 0000000000..942359f7d7 --- /dev/null +++ b/sdk/python/feast/protos/feast/types/Value_pb2.py @@ -0,0 +1,49 @@ +# -*- coding: utf-8 -*- +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: feast/types/Value.proto +"""Generated protocol buffer code.""" +from google.protobuf import descriptor as _descriptor +from google.protobuf import descriptor_pool as _descriptor_pool +from google.protobuf import symbol_database as _symbol_database +from google.protobuf.internal import builder as _builder +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + + + +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x17\x66\x65\x61st/types/Value.proto\x12\x0b\x66\x65\x61st.types\"\x97\x02\n\tValueType\"\x89\x02\n\x04\x45num\x12\x0b\n\x07INVALID\x10\x00\x12\t\n\x05\x42YTES\x10\x01\x12\n\n\x06STRING\x10\x02\x12\t\n\x05INT32\x10\x03\x12\t\n\x05INT64\x10\x04\x12\n\n\x06\x44OUBLE\x10\x05\x12\t\n\x05\x46LOAT\x10\x06\x12\x08\n\x04\x42OOL\x10\x07\x12\x12\n\x0eUNIX_TIMESTAMP\x10\x08\x12\x0e\n\nBYTES_LIST\x10\x0b\x12\x0f\n\x0bSTRING_LIST\x10\x0c\x12\x0e\n\nINT32_LIST\x10\r\x12\x0e\n\nINT64_LIST\x10\x0e\x12\x0f\n\x0b\x44OUBLE_LIST\x10\x0f\x12\x0e\n\nFLOAT_LIST\x10\x10\x12\r\n\tBOOL_LIST\x10\x11\x12\x17\n\x13UNIX_TIMESTAMP_LIST\x10\x12\x12\x08\n\x04NULL\x10\x13\"\x82\x05\n\x05Value\x12\x13\n\tbytes_val\x18\x01 \x01(\x0cH\x00\x12\x14\n\nstring_val\x18\x02 \x01(\tH\x00\x12\x13\n\tint32_val\x18\x03 \x01(\x05H\x00\x12\x13\n\tint64_val\x18\x04 \x01(\x03H\x00\x12\x14\n\ndouble_val\x18\x05 \x01(\x01H\x00\x12\x13\n\tfloat_val\x18\x06 \x01(\x02H\x00\x12\x12\n\x08\x62ool_val\x18\x07 \x01(\x08H\x00\x12\x1c\n\x12unix_timestamp_val\x18\x08 \x01(\x03H\x00\x12\x30\n\x0e\x62ytes_list_val\x18\x0b \x01(\x0b\x32\x16.feast.types.BytesListH\x00\x12\x32\n\x0fstring_list_val\x18\x0c \x01(\x0b\x32\x17.feast.types.StringListH\x00\x12\x30\n\x0eint32_list_val\x18\r \x01(\x0b\x32\x16.feast.types.Int32ListH\x00\x12\x30\n\x0eint64_list_val\x18\x0e \x01(\x0b\x32\x16.feast.types.Int64ListH\x00\x12\x32\n\x0f\x64ouble_list_val\x18\x0f \x01(\x0b\x32\x17.feast.types.DoubleListH\x00\x12\x30\n\x0e\x66loat_list_val\x18\x10 \x01(\x0b\x32\x16.feast.types.FloatListH\x00\x12.\n\rbool_list_val\x18\x11 \x01(\x0b\x32\x15.feast.types.BoolListH\x00\x12\x39\n\x17unix_timestamp_list_val\x18\x12 \x01(\x0b\x32\x16.feast.types.Int64ListH\x00\x12%\n\x08null_val\x18\x13 \x01(\x0e\x32\x11.feast.types.NullH\x00\x42\x05\n\x03val\"\x18\n\tBytesList\x12\x0b\n\x03val\x18\x01 \x03(\x0c\"\x19\n\nStringList\x12\x0b\n\x03val\x18\x01 \x03(\t\"\x18\n\tInt32List\x12\x0b\n\x03val\x18\x01 \x03(\x05\"\x18\n\tInt64List\x12\x0b\n\x03val\x18\x01 \x03(\x03\"\x19\n\nDoubleList\x12\x0b\n\x03val\x18\x01 \x03(\x01\"\x18\n\tFloatList\x12\x0b\n\x03val\x18\x01 \x03(\x02\"\x17\n\x08\x42oolList\x12\x0b\n\x03val\x18\x01 \x03(\x08\"0\n\rRepeatedValue\x12\x1f\n\x03val\x18\x01 \x03(\x0b\x32\x12.feast.types.Value*\x10\n\x04Null\x12\x08\n\x04NULL\x10\x00\x42Q\n\x11\x66\x65\x61st.proto.typesB\nValueProtoZ0github.com/feast-dev/feast/go/protos/feast/typesb\x06proto3') + +_globals = globals() +_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) +_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'feast.types.Value_pb2', _globals) +if _descriptor._USE_C_DESCRIPTORS == False: + + DESCRIPTOR._options = None + DESCRIPTOR._serialized_options = b'\n\021feast.proto.typesB\nValueProtoZ0github.com/feast-dev/feast/go/protos/feast/types' + _globals['_NULL']._serialized_start=1200 + _globals['_NULL']._serialized_end=1216 + _globals['_VALUETYPE']._serialized_start=41 + _globals['_VALUETYPE']._serialized_end=320 + _globals['_VALUETYPE_ENUM']._serialized_start=55 + _globals['_VALUETYPE_ENUM']._serialized_end=320 + _globals['_VALUE']._serialized_start=323 + _globals['_VALUE']._serialized_end=965 + _globals['_BYTESLIST']._serialized_start=967 + _globals['_BYTESLIST']._serialized_end=991 + _globals['_STRINGLIST']._serialized_start=993 + _globals['_STRINGLIST']._serialized_end=1018 + _globals['_INT32LIST']._serialized_start=1020 + _globals['_INT32LIST']._serialized_end=1044 + _globals['_INT64LIST']._serialized_start=1046 + _globals['_INT64LIST']._serialized_end=1070 + _globals['_DOUBLELIST']._serialized_start=1072 + _globals['_DOUBLELIST']._serialized_end=1097 + _globals['_FLOATLIST']._serialized_start=1099 + _globals['_FLOATLIST']._serialized_end=1123 + _globals['_BOOLLIST']._serialized_start=1125 + _globals['_BOOLLIST']._serialized_end=1148 + _globals['_REPEATEDVALUE']._serialized_start=1150 + _globals['_REPEATEDVALUE']._serialized_end=1198 +# @@protoc_insertion_point(module_scope) diff --git a/sdk/python/feast/protos/feast/types/Value_pb2.pyi b/sdk/python/feast/protos/feast/types/Value_pb2.pyi new file mode 100644 index 0000000000..5832641e4a --- /dev/null +++ b/sdk/python/feast/protos/feast/types/Value_pb2.pyi @@ -0,0 +1,245 @@ +""" +@generated by mypy-protobuf. Do not edit manually! +isort:skip_file +""" +import builtins +import google.protobuf.descriptor +import google.protobuf.internal.containers +import google.protobuf.internal.enum_type_wrapper +import google.protobuf.message +import typing +import typing_extensions + +DESCRIPTOR: google.protobuf.descriptor.FileDescriptor = ... + +class _Null: + ValueType = typing.NewType('ValueType', builtins.int) + V: typing_extensions.TypeAlias = ValueType +class _NullEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_Null.ValueType], builtins.type): + DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor = ... + NULL: Null.ValueType = ... # 0 +class Null(_Null, metaclass=_NullEnumTypeWrapper): + pass + +NULL: Null.ValueType = ... # 0 +global___Null = Null + + +class ValueType(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + class _Enum: + ValueType = typing.NewType('ValueType', builtins.int) + V: typing_extensions.TypeAlias = ValueType + class _EnumEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_Enum.ValueType], builtins.type): + DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor = ... + INVALID: ValueType.Enum.ValueType = ... # 0 + BYTES: ValueType.Enum.ValueType = ... # 1 + STRING: ValueType.Enum.ValueType = ... # 2 + INT32: ValueType.Enum.ValueType = ... # 3 + INT64: ValueType.Enum.ValueType = ... # 4 + DOUBLE: ValueType.Enum.ValueType = ... # 5 + FLOAT: ValueType.Enum.ValueType = ... # 6 + BOOL: ValueType.Enum.ValueType = ... # 7 + UNIX_TIMESTAMP: ValueType.Enum.ValueType = ... # 8 + BYTES_LIST: ValueType.Enum.ValueType = ... # 11 + STRING_LIST: ValueType.Enum.ValueType = ... # 12 + INT32_LIST: ValueType.Enum.ValueType = ... # 13 + INT64_LIST: ValueType.Enum.ValueType = ... # 14 + DOUBLE_LIST: ValueType.Enum.ValueType = ... # 15 + FLOAT_LIST: ValueType.Enum.ValueType = ... # 16 + BOOL_LIST: ValueType.Enum.ValueType = ... # 17 + UNIX_TIMESTAMP_LIST: ValueType.Enum.ValueType = ... # 18 + NULL: ValueType.Enum.ValueType = ... # 19 + class Enum(_Enum, metaclass=_EnumEnumTypeWrapper): + pass + + INVALID: ValueType.Enum.ValueType = ... # 0 + BYTES: ValueType.Enum.ValueType = ... # 1 + STRING: ValueType.Enum.ValueType = ... # 2 + INT32: ValueType.Enum.ValueType = ... # 3 + INT64: ValueType.Enum.ValueType = ... # 4 + DOUBLE: ValueType.Enum.ValueType = ... # 5 + FLOAT: ValueType.Enum.ValueType = ... # 6 + BOOL: ValueType.Enum.ValueType = ... # 7 + UNIX_TIMESTAMP: ValueType.Enum.ValueType = ... # 8 + BYTES_LIST: ValueType.Enum.ValueType = ... # 11 + STRING_LIST: ValueType.Enum.ValueType = ... # 12 + INT32_LIST: ValueType.Enum.ValueType = ... # 13 + INT64_LIST: ValueType.Enum.ValueType = ... # 14 + DOUBLE_LIST: ValueType.Enum.ValueType = ... # 15 + FLOAT_LIST: ValueType.Enum.ValueType = ... # 16 + BOOL_LIST: ValueType.Enum.ValueType = ... # 17 + UNIX_TIMESTAMP_LIST: ValueType.Enum.ValueType = ... # 18 + NULL: ValueType.Enum.ValueType = ... # 19 + + def __init__(self, + ) -> None: ... +global___ValueType = ValueType + +class Value(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + BYTES_VAL_FIELD_NUMBER: builtins.int + STRING_VAL_FIELD_NUMBER: builtins.int + INT32_VAL_FIELD_NUMBER: builtins.int + INT64_VAL_FIELD_NUMBER: builtins.int + DOUBLE_VAL_FIELD_NUMBER: builtins.int + FLOAT_VAL_FIELD_NUMBER: builtins.int + BOOL_VAL_FIELD_NUMBER: builtins.int + UNIX_TIMESTAMP_VAL_FIELD_NUMBER: builtins.int + BYTES_LIST_VAL_FIELD_NUMBER: builtins.int + STRING_LIST_VAL_FIELD_NUMBER: builtins.int + INT32_LIST_VAL_FIELD_NUMBER: builtins.int + INT64_LIST_VAL_FIELD_NUMBER: builtins.int + DOUBLE_LIST_VAL_FIELD_NUMBER: builtins.int + FLOAT_LIST_VAL_FIELD_NUMBER: builtins.int + BOOL_LIST_VAL_FIELD_NUMBER: builtins.int + UNIX_TIMESTAMP_LIST_VAL_FIELD_NUMBER: builtins.int + NULL_VAL_FIELD_NUMBER: builtins.int + bytes_val: builtins.bytes = ... + string_val: typing.Text = ... + int32_val: builtins.int = ... + int64_val: builtins.int = ... + double_val: builtins.float = ... + float_val: builtins.float = ... + bool_val: builtins.bool = ... + unix_timestamp_val: builtins.int = ... + @property + def bytes_list_val(self) -> global___BytesList: ... + @property + def string_list_val(self) -> global___StringList: ... + @property + def int32_list_val(self) -> global___Int32List: ... + @property + def int64_list_val(self) -> global___Int64List: ... + @property + def double_list_val(self) -> global___DoubleList: ... + @property + def float_list_val(self) -> global___FloatList: ... + @property + def bool_list_val(self) -> global___BoolList: ... + @property + def unix_timestamp_list_val(self) -> global___Int64List: ... + null_val: global___Null.ValueType = ... + def __init__(self, + *, + bytes_val : builtins.bytes = ..., + string_val : typing.Text = ..., + int32_val : builtins.int = ..., + int64_val : builtins.int = ..., + double_val : builtins.float = ..., + float_val : builtins.float = ..., + bool_val : builtins.bool = ..., + unix_timestamp_val : builtins.int = ..., + bytes_list_val : typing.Optional[global___BytesList] = ..., + string_list_val : typing.Optional[global___StringList] = ..., + int32_list_val : typing.Optional[global___Int32List] = ..., + int64_list_val : typing.Optional[global___Int64List] = ..., + double_list_val : typing.Optional[global___DoubleList] = ..., + float_list_val : typing.Optional[global___FloatList] = ..., + bool_list_val : typing.Optional[global___BoolList] = ..., + unix_timestamp_list_val : typing.Optional[global___Int64List] = ..., + null_val : global___Null.ValueType = ..., + ) -> None: ... + def HasField(self, field_name: typing_extensions.Literal["bool_list_val",b"bool_list_val","bool_val",b"bool_val","bytes_list_val",b"bytes_list_val","bytes_val",b"bytes_val","double_list_val",b"double_list_val","double_val",b"double_val","float_list_val",b"float_list_val","float_val",b"float_val","int32_list_val",b"int32_list_val","int32_val",b"int32_val","int64_list_val",b"int64_list_val","int64_val",b"int64_val","null_val",b"null_val","string_list_val",b"string_list_val","string_val",b"string_val","unix_timestamp_list_val",b"unix_timestamp_list_val","unix_timestamp_val",b"unix_timestamp_val","val",b"val"]) -> builtins.bool: ... + def ClearField(self, field_name: typing_extensions.Literal["bool_list_val",b"bool_list_val","bool_val",b"bool_val","bytes_list_val",b"bytes_list_val","bytes_val",b"bytes_val","double_list_val",b"double_list_val","double_val",b"double_val","float_list_val",b"float_list_val","float_val",b"float_val","int32_list_val",b"int32_list_val","int32_val",b"int32_val","int64_list_val",b"int64_list_val","int64_val",b"int64_val","null_val",b"null_val","string_list_val",b"string_list_val","string_val",b"string_val","unix_timestamp_list_val",b"unix_timestamp_list_val","unix_timestamp_val",b"unix_timestamp_val","val",b"val"]) -> None: ... + def WhichOneof(self, oneof_group: typing_extensions.Literal["val",b"val"]) -> typing.Optional[typing_extensions.Literal["bytes_val","string_val","int32_val","int64_val","double_val","float_val","bool_val","unix_timestamp_val","bytes_list_val","string_list_val","int32_list_val","int64_list_val","double_list_val","float_list_val","bool_list_val","unix_timestamp_list_val","null_val"]]: ... +global___Value = Value + +class BytesList(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + VAL_FIELD_NUMBER: builtins.int + @property + def val(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.bytes]: ... + def __init__(self, + *, + val : typing.Optional[typing.Iterable[builtins.bytes]] = ..., + ) -> None: ... + def ClearField(self, field_name: typing_extensions.Literal["val",b"val"]) -> None: ... +global___BytesList = BytesList + +class StringList(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + VAL_FIELD_NUMBER: builtins.int + @property + def val(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[typing.Text]: ... + def __init__(self, + *, + val : typing.Optional[typing.Iterable[typing.Text]] = ..., + ) -> None: ... + def ClearField(self, field_name: typing_extensions.Literal["val",b"val"]) -> None: ... +global___StringList = StringList + +class Int32List(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + VAL_FIELD_NUMBER: builtins.int + @property + def val(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.int]: ... + def __init__(self, + *, + val : typing.Optional[typing.Iterable[builtins.int]] = ..., + ) -> None: ... + def ClearField(self, field_name: typing_extensions.Literal["val",b"val"]) -> None: ... +global___Int32List = Int32List + +class Int64List(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + VAL_FIELD_NUMBER: builtins.int + @property + def val(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.int]: ... + def __init__(self, + *, + val : typing.Optional[typing.Iterable[builtins.int]] = ..., + ) -> None: ... + def ClearField(self, field_name: typing_extensions.Literal["val",b"val"]) -> None: ... +global___Int64List = Int64List + +class DoubleList(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + VAL_FIELD_NUMBER: builtins.int + @property + def val(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.float]: ... + def __init__(self, + *, + val : typing.Optional[typing.Iterable[builtins.float]] = ..., + ) -> None: ... + def ClearField(self, field_name: typing_extensions.Literal["val",b"val"]) -> None: ... +global___DoubleList = DoubleList + +class FloatList(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + VAL_FIELD_NUMBER: builtins.int + @property + def val(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.float]: ... + def __init__(self, + *, + val : typing.Optional[typing.Iterable[builtins.float]] = ..., + ) -> None: ... + def ClearField(self, field_name: typing_extensions.Literal["val",b"val"]) -> None: ... +global___FloatList = FloatList + +class BoolList(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + VAL_FIELD_NUMBER: builtins.int + @property + def val(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.bool]: ... + def __init__(self, + *, + val : typing.Optional[typing.Iterable[builtins.bool]] = ..., + ) -> None: ... + def ClearField(self, field_name: typing_extensions.Literal["val",b"val"]) -> None: ... +global___BoolList = BoolList + +class RepeatedValue(google.protobuf.message.Message): + """This is to avoid an issue of being unable to specify `repeated value` in oneofs or maps + In JSON "val" field can be omitted + """ + DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... + VAL_FIELD_NUMBER: builtins.int + @property + def val(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Value]: ... + def __init__(self, + *, + val : typing.Optional[typing.Iterable[global___Value]] = ..., + ) -> None: ... + def ClearField(self, field_name: typing_extensions.Literal["val",b"val"]) -> None: ... +global___RepeatedValue = RepeatedValue diff --git a/sdk/python/feast/protos/feast/types/Value_pb2_grpc.py b/sdk/python/feast/protos/feast/types/Value_pb2_grpc.py new file mode 100644 index 0000000000..2daafffebf --- /dev/null +++ b/sdk/python/feast/protos/feast/types/Value_pb2_grpc.py @@ -0,0 +1,4 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +"""Client and server classes corresponding to protobuf-defined services.""" +import grpc + diff --git a/sdk/python/feast/protos/feast/types/__init__.py b/sdk/python/feast/protos/feast/types/__init__.py new file mode 100644 index 0000000000..e69de29bb2 From 564459c9adfdf4b580676dea2b7a5625b44d899c Mon Sep 17 00:00:00 2001 From: danielsalvador Date: Wed, 18 Oct 2023 00:11:40 +0300 Subject: [PATCH 5/7] Allow for scret SQL registry pass --- .../contrib/postgres/postgres_registry_store.py | 4 ++-- sdk/python/feast/infra/registry/sql.py | 12 +++++++++++- 2 files changed, 13 insertions(+), 3 deletions(-) diff --git a/sdk/python/feast/infra/registry/contrib/postgres/postgres_registry_store.py b/sdk/python/feast/infra/registry/contrib/postgres/postgres_registry_store.py index f990e151d7..0fa4c63b66 100644 --- a/sdk/python/feast/infra/registry/contrib/postgres/postgres_registry_store.py +++ b/sdk/python/feast/infra/registry/contrib/postgres/postgres_registry_store.py @@ -31,8 +31,8 @@ def __init__(self, config: PostgresRegistryConfig, registry_path: str): port=config.port, database=config.database, db_schema=config.db_schema, - user=os.environ.get("FEAST_REGISTRY_PSQL_USER", config.user), - password=os.environ.get("FEAST_REGISTRY_PSQL_PASSWORD", config.password), + user=config.user, + password=config.password, sslmode=getattr(config, "sslmode", None), sslkey_path=getattr(config, "sslkey_path", None), sslcert_path=getattr(config, "sslcert_path", None), diff --git a/sdk/python/feast/infra/registry/sql.py b/sdk/python/feast/infra/registry/sql.py index d57bcc7c0a..06abd1b6e7 100644 --- a/sdk/python/feast/infra/registry/sql.py +++ b/sdk/python/feast/infra/registry/sql.py @@ -1,4 +1,5 @@ import logging +import os import uuid from datetime import datetime, timedelta from enum import Enum @@ -199,7 +200,16 @@ def __init__( repo_path: Optional[Path], ): assert registry_config is not None, "SqlRegistry needs a valid registry_config" - self.engine: Engine = create_engine(registry_config.path, echo=False) + + sqlalchemy_url = registry_config.path + if "__placeholder_password__" in sqlalchemy_url: + secret_password = os.getenv("FEAST_SQL_REGISTRY_PASSWORD") + if secret_password: + sqlalchemy_url = sqlalchemy_url.replace("__placeholder_password__", secret_password) + else: + raise ValueError("'FEAST_SQL_REGISTRY_PASSWORD' is not set!") + + self.engine: Engine = create_engine(sqlalchemy_url, echo=False) metadata.create_all(self.engine) self.cached_registry_proto = self.proto() proto_registry_utils.init_project_metadata(self.cached_registry_proto, project) From 86126d4b17aaf9c616db80631db956a6d588818e Mon Sep 17 00:00:00 2001 From: danielsalvador Date: Wed, 18 Oct 2023 11:15:29 +0300 Subject: [PATCH 6/7] remove unnecessary import --- .../infra/registry/contrib/postgres/postgres_registry_store.py | 1 - 1 file changed, 1 deletion(-) diff --git a/sdk/python/feast/infra/registry/contrib/postgres/postgres_registry_store.py b/sdk/python/feast/infra/registry/contrib/postgres/postgres_registry_store.py index 0fa4c63b66..362ec9f485 100644 --- a/sdk/python/feast/infra/registry/contrib/postgres/postgres_registry_store.py +++ b/sdk/python/feast/infra/registry/contrib/postgres/postgres_registry_store.py @@ -1,4 +1,3 @@ -import os from typing import Optional import psycopg2 From 864783b7633184093bf92e2115f6af981766f9f1 Mon Sep 17 00:00:00 2001 From: danielsalvador Date: Wed, 18 Oct 2023 11:57:08 +0300 Subject: [PATCH 7/7] remove protos --- .gitignore | 2 +- sdk/python/feast/protos/__init__.py | 0 sdk/python/feast/protos/feast/__init__.py | 0 .../protos/feast/core/Aggregation_pb2.py | 28 - .../protos/feast/core/Aggregation_pb2.pyi | 35 -- .../protos/feast/core/Aggregation_pb2_grpc.py | 4 - .../feast/protos/feast/core/DataFormat_pb2.py | 37 -- .../protos/feast/core/DataFormat_pb2.pyi | 95 ---- .../protos/feast/core/DataFormat_pb2_grpc.py | 4 - .../feast/protos/feast/core/DataSource_pb2.py | 72 --- .../protos/feast/core/DataSource_pb2.pyi | 529 ------------------ .../protos/feast/core/DataSource_pb2_grpc.py | 4 - .../protos/feast/core/DatastoreTable_pb2.py | 28 - .../protos/feast/core/DatastoreTable_pb2.pyi | 44 -- .../feast/core/DatastoreTable_pb2_grpc.py | 4 - .../protos/feast/core/DynamoDBTable_pb2.py | 27 - .../protos/feast/core/DynamoDBTable_pb2.pyi | 30 - .../feast/core/DynamoDBTable_pb2_grpc.py | 4 - .../feast/protos/feast/core/Entity_pb2.py | 37 -- .../feast/protos/feast/core/Entity_pb2.pyi | 109 ---- .../protos/feast/core/Entity_pb2_grpc.py | 4 - .../protos/feast/core/FeatureService_pb2.py | 55 -- .../protos/feast/core/FeatureService_pb2.pyi | 249 --------- .../feast/core/FeatureService_pb2_grpc.py | 4 - .../protos/feast/core/FeatureTable_pb2.py | 39 -- .../protos/feast/core/FeatureTable_pb2.pyi | 150 ----- .../feast/core/FeatureTable_pb2_grpc.py | 4 - .../feast/core/FeatureViewProjection_pb2.py | 32 -- .../feast/core/FeatureViewProjection_pb2.pyi | 59 -- .../core/FeatureViewProjection_pb2_grpc.py | 4 - .../protos/feast/core/FeatureView_pb2.py | 41 -- .../protos/feast/core/FeatureView_pb2.pyi | 177 ------ .../protos/feast/core/FeatureView_pb2_grpc.py | 4 - .../feast/protos/feast/core/Feature_pb2.py | 32 -- .../feast/protos/feast/core/Feature_pb2.pyi | 57 -- .../protos/feast/core/Feature_pb2_grpc.py | 4 - .../protos/feast/core/InfraObject_pb2.py | 34 -- .../protos/feast/core/InfraObject_pb2.pyi | 73 --- .../protos/feast/core/InfraObject_pb2_grpc.py | 4 - .../feast/core/OnDemandFeatureView_pb2.py | 48 -- .../feast/core/OnDemandFeatureView_pb2.pyi | 183 ------ .../core/OnDemandFeatureView_pb2_grpc.py | 4 - .../feast/protos/feast/core/Registry_pb2.py | 41 -- .../feast/protos/feast/core/Registry_pb2.pyi | 112 ---- .../protos/feast/core/Registry_pb2_grpc.py | 4 - .../feast/core/RequestFeatureView_pb2.py | 34 -- .../feast/core/RequestFeatureView_pb2.pyi | 83 --- .../feast/core/RequestFeatureView_pb2_grpc.py | 4 - .../protos/feast/core/SavedDataset_pb2.py | 39 -- .../protos/feast/core/SavedDataset_pb2.pyi | 170 ------ .../feast/core/SavedDataset_pb2_grpc.py | 4 - .../protos/feast/core/SqliteTable_pb2.py | 27 - .../protos/feast/core/SqliteTable_pb2.pyi | 30 - .../protos/feast/core/SqliteTable_pb2_grpc.py | 4 - .../feast/protos/feast/core/Store_pb2.py | 37 -- .../feast/protos/feast/core/Store_pb2.pyi | 220 -------- .../feast/protos/feast/core/Store_pb2_grpc.py | 4 - .../feast/core/StreamFeatureView_pb2.py | 39 -- .../feast/core/StreamFeatureView_pb2.pyi | 153 ----- .../feast/core/StreamFeatureView_pb2_grpc.py | 4 - .../feast/core/ValidationProfile_pb2.py | 37 -- .../feast/core/ValidationProfile_pb2.pyi | 110 ---- .../feast/core/ValidationProfile_pb2_grpc.py | 4 - .../feast/protos/feast/core/__init__.py | 0 .../protos/feast/serving/Connector_pb2.py | 39 -- .../protos/feast/serving/Connector_pb2.pyi | 80 --- .../feast/serving/Connector_pb2_grpc.py | 66 --- .../protos/feast/serving/GrpcServer_pb2.py | 42 -- .../protos/feast/serving/GrpcServer_pb2.pyi | 99 ---- .../feast/serving/GrpcServer_pb2_grpc.py | 99 ---- .../feast/serving/ServingService_pb2.py | 63 --- .../feast/serving/ServingService_pb2.pyi | 309 ---------- .../feast/serving/ServingService_pb2_grpc.py | 101 ---- .../serving/TransformationService_pb2.py | 39 -- .../serving/TransformationService_pb2.pyi | 105 ---- .../serving/TransformationService_pb2_grpc.py | 99 ---- .../feast/protos/feast/serving/__init__.py | 0 .../feast/protos/feast/storage/Redis_pb2.py | 28 - .../feast/protos/feast/storage/Redis_pb2.pyi | 32 -- .../protos/feast/storage/Redis_pb2_grpc.py | 4 - .../feast/protos/feast/storage/__init__.py | 0 .../feast/protos/feast/types/EntityKey_pb2.py | 28 - .../protos/feast/types/EntityKey_pb2.pyi | 29 - .../protos/feast/types/EntityKey_pb2_grpc.py | 4 - .../feast/protos/feast/types/Field_pb2.py | 32 -- .../feast/protos/feast/types/Field_pb2.pyi | 51 -- .../protos/feast/types/Field_pb2_grpc.py | 4 - .../feast/protos/feast/types/Value_pb2.py | 49 -- .../feast/protos/feast/types/Value_pb2.pyi | 245 -------- .../protos/feast/types/Value_pb2_grpc.py | 4 - .../feast/protos/feast/types/__init__.py | 0 91 files changed, 1 insertion(+), 5164 deletions(-) delete mode 100644 sdk/python/feast/protos/__init__.py delete mode 100644 sdk/python/feast/protos/feast/__init__.py delete mode 100644 sdk/python/feast/protos/feast/core/Aggregation_pb2.py delete mode 100644 sdk/python/feast/protos/feast/core/Aggregation_pb2.pyi delete mode 100644 sdk/python/feast/protos/feast/core/Aggregation_pb2_grpc.py delete mode 100644 sdk/python/feast/protos/feast/core/DataFormat_pb2.py delete mode 100644 sdk/python/feast/protos/feast/core/DataFormat_pb2.pyi delete mode 100644 sdk/python/feast/protos/feast/core/DataFormat_pb2_grpc.py delete mode 100644 sdk/python/feast/protos/feast/core/DataSource_pb2.py delete mode 100644 sdk/python/feast/protos/feast/core/DataSource_pb2.pyi delete mode 100644 sdk/python/feast/protos/feast/core/DataSource_pb2_grpc.py delete mode 100644 sdk/python/feast/protos/feast/core/DatastoreTable_pb2.py delete mode 100644 sdk/python/feast/protos/feast/core/DatastoreTable_pb2.pyi delete mode 100644 sdk/python/feast/protos/feast/core/DatastoreTable_pb2_grpc.py delete mode 100644 sdk/python/feast/protos/feast/core/DynamoDBTable_pb2.py delete mode 100644 sdk/python/feast/protos/feast/core/DynamoDBTable_pb2.pyi delete mode 100644 sdk/python/feast/protos/feast/core/DynamoDBTable_pb2_grpc.py delete mode 100644 sdk/python/feast/protos/feast/core/Entity_pb2.py delete mode 100644 sdk/python/feast/protos/feast/core/Entity_pb2.pyi delete mode 100644 sdk/python/feast/protos/feast/core/Entity_pb2_grpc.py delete mode 100644 sdk/python/feast/protos/feast/core/FeatureService_pb2.py delete mode 100644 sdk/python/feast/protos/feast/core/FeatureService_pb2.pyi delete mode 100644 sdk/python/feast/protos/feast/core/FeatureService_pb2_grpc.py delete mode 100644 sdk/python/feast/protos/feast/core/FeatureTable_pb2.py delete mode 100644 sdk/python/feast/protos/feast/core/FeatureTable_pb2.pyi delete mode 100644 sdk/python/feast/protos/feast/core/FeatureTable_pb2_grpc.py delete mode 100644 sdk/python/feast/protos/feast/core/FeatureViewProjection_pb2.py delete mode 100644 sdk/python/feast/protos/feast/core/FeatureViewProjection_pb2.pyi delete mode 100644 sdk/python/feast/protos/feast/core/FeatureViewProjection_pb2_grpc.py delete mode 100644 sdk/python/feast/protos/feast/core/FeatureView_pb2.py delete mode 100644 sdk/python/feast/protos/feast/core/FeatureView_pb2.pyi delete mode 100644 sdk/python/feast/protos/feast/core/FeatureView_pb2_grpc.py delete mode 100644 sdk/python/feast/protos/feast/core/Feature_pb2.py delete mode 100644 sdk/python/feast/protos/feast/core/Feature_pb2.pyi delete mode 100644 sdk/python/feast/protos/feast/core/Feature_pb2_grpc.py delete mode 100644 sdk/python/feast/protos/feast/core/InfraObject_pb2.py delete mode 100644 sdk/python/feast/protos/feast/core/InfraObject_pb2.pyi delete mode 100644 sdk/python/feast/protos/feast/core/InfraObject_pb2_grpc.py delete mode 100644 sdk/python/feast/protos/feast/core/OnDemandFeatureView_pb2.py delete mode 100644 sdk/python/feast/protos/feast/core/OnDemandFeatureView_pb2.pyi delete mode 100644 sdk/python/feast/protos/feast/core/OnDemandFeatureView_pb2_grpc.py delete mode 100644 sdk/python/feast/protos/feast/core/Registry_pb2.py delete mode 100644 sdk/python/feast/protos/feast/core/Registry_pb2.pyi delete mode 100644 sdk/python/feast/protos/feast/core/Registry_pb2_grpc.py delete mode 100644 sdk/python/feast/protos/feast/core/RequestFeatureView_pb2.py delete mode 100644 sdk/python/feast/protos/feast/core/RequestFeatureView_pb2.pyi delete mode 100644 sdk/python/feast/protos/feast/core/RequestFeatureView_pb2_grpc.py delete mode 100644 sdk/python/feast/protos/feast/core/SavedDataset_pb2.py delete mode 100644 sdk/python/feast/protos/feast/core/SavedDataset_pb2.pyi delete mode 100644 sdk/python/feast/protos/feast/core/SavedDataset_pb2_grpc.py delete mode 100644 sdk/python/feast/protos/feast/core/SqliteTable_pb2.py delete mode 100644 sdk/python/feast/protos/feast/core/SqliteTable_pb2.pyi delete mode 100644 sdk/python/feast/protos/feast/core/SqliteTable_pb2_grpc.py delete mode 100644 sdk/python/feast/protos/feast/core/Store_pb2.py delete mode 100644 sdk/python/feast/protos/feast/core/Store_pb2.pyi delete mode 100644 sdk/python/feast/protos/feast/core/Store_pb2_grpc.py delete mode 100644 sdk/python/feast/protos/feast/core/StreamFeatureView_pb2.py delete mode 100644 sdk/python/feast/protos/feast/core/StreamFeatureView_pb2.pyi delete mode 100644 sdk/python/feast/protos/feast/core/StreamFeatureView_pb2_grpc.py delete mode 100644 sdk/python/feast/protos/feast/core/ValidationProfile_pb2.py delete mode 100644 sdk/python/feast/protos/feast/core/ValidationProfile_pb2.pyi delete mode 100644 sdk/python/feast/protos/feast/core/ValidationProfile_pb2_grpc.py delete mode 100644 sdk/python/feast/protos/feast/core/__init__.py delete mode 100644 sdk/python/feast/protos/feast/serving/Connector_pb2.py delete mode 100644 sdk/python/feast/protos/feast/serving/Connector_pb2.pyi delete mode 100644 sdk/python/feast/protos/feast/serving/Connector_pb2_grpc.py delete mode 100644 sdk/python/feast/protos/feast/serving/GrpcServer_pb2.py delete mode 100644 sdk/python/feast/protos/feast/serving/GrpcServer_pb2.pyi delete mode 100644 sdk/python/feast/protos/feast/serving/GrpcServer_pb2_grpc.py delete mode 100644 sdk/python/feast/protos/feast/serving/ServingService_pb2.py delete mode 100644 sdk/python/feast/protos/feast/serving/ServingService_pb2.pyi delete mode 100644 sdk/python/feast/protos/feast/serving/ServingService_pb2_grpc.py delete mode 100644 sdk/python/feast/protos/feast/serving/TransformationService_pb2.py delete mode 100644 sdk/python/feast/protos/feast/serving/TransformationService_pb2.pyi delete mode 100644 sdk/python/feast/protos/feast/serving/TransformationService_pb2_grpc.py delete mode 100644 sdk/python/feast/protos/feast/serving/__init__.py delete mode 100644 sdk/python/feast/protos/feast/storage/Redis_pb2.py delete mode 100644 sdk/python/feast/protos/feast/storage/Redis_pb2.pyi delete mode 100644 sdk/python/feast/protos/feast/storage/Redis_pb2_grpc.py delete mode 100644 sdk/python/feast/protos/feast/storage/__init__.py delete mode 100644 sdk/python/feast/protos/feast/types/EntityKey_pb2.py delete mode 100644 sdk/python/feast/protos/feast/types/EntityKey_pb2.pyi delete mode 100644 sdk/python/feast/protos/feast/types/EntityKey_pb2_grpc.py delete mode 100644 sdk/python/feast/protos/feast/types/Field_pb2.py delete mode 100644 sdk/python/feast/protos/feast/types/Field_pb2.pyi delete mode 100644 sdk/python/feast/protos/feast/types/Field_pb2_grpc.py delete mode 100644 sdk/python/feast/protos/feast/types/Value_pb2.py delete mode 100644 sdk/python/feast/protos/feast/types/Value_pb2.pyi delete mode 100644 sdk/python/feast/protos/feast/types/Value_pb2_grpc.py delete mode 100644 sdk/python/feast/protos/feast/types/__init__.py diff --git a/.gitignore b/.gitignore index 88c6b50a76..6a86eb2682 100644 --- a/.gitignore +++ b/.gitignore @@ -185,7 +185,7 @@ dmypy.json # Protos sdk/python/docs/html -#sdk/python/feast/protos/ +sdk/python/feast/protos/ sdk/go/protos/ go/protos/ diff --git a/sdk/python/feast/protos/__init__.py b/sdk/python/feast/protos/__init__.py deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/sdk/python/feast/protos/feast/__init__.py b/sdk/python/feast/protos/feast/__init__.py deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/sdk/python/feast/protos/feast/core/Aggregation_pb2.py b/sdk/python/feast/protos/feast/core/Aggregation_pb2.py deleted file mode 100644 index 25b68bfc49..0000000000 --- a/sdk/python/feast/protos/feast/core/Aggregation_pb2.py +++ /dev/null @@ -1,28 +0,0 @@ -# -*- coding: utf-8 -*- -# Generated by the protocol buffer compiler. DO NOT EDIT! -# source: feast/core/Aggregation.proto -"""Generated protocol buffer code.""" -from google.protobuf import descriptor as _descriptor -from google.protobuf import descriptor_pool as _descriptor_pool -from google.protobuf import symbol_database as _symbol_database -from google.protobuf.internal import builder as _builder -# @@protoc_insertion_point(imports) - -_sym_db = _symbol_database.Default() - - -from google.protobuf import duration_pb2 as google_dot_protobuf_dot_duration__pb2 - - -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1c\x66\x65\x61st/core/Aggregation.proto\x12\nfeast.core\x1a\x1egoogle/protobuf/duration.proto\"\x92\x01\n\x0b\x41ggregation\x12\x0e\n\x06\x63olumn\x18\x01 \x01(\t\x12\x10\n\x08\x66unction\x18\x02 \x01(\t\x12.\n\x0btime_window\x18\x03 \x01(\x0b\x32\x19.google.protobuf.Duration\x12\x31\n\x0eslide_interval\x18\x04 \x01(\x0b\x32\x19.google.protobuf.DurationBU\n\x10\x66\x65\x61st.proto.coreB\x10\x41ggregationProtoZ/github.com/feast-dev/feast/go/protos/feast/coreb\x06proto3') - -_globals = globals() -_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) -_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'feast.core.Aggregation_pb2', _globals) -if _descriptor._USE_C_DESCRIPTORS == False: - - DESCRIPTOR._options = None - DESCRIPTOR._serialized_options = b'\n\020feast.proto.coreB\020AggregationProtoZ/github.com/feast-dev/feast/go/protos/feast/core' - _globals['_AGGREGATION']._serialized_start=77 - _globals['_AGGREGATION']._serialized_end=223 -# @@protoc_insertion_point(module_scope) diff --git a/sdk/python/feast/protos/feast/core/Aggregation_pb2.pyi b/sdk/python/feast/protos/feast/core/Aggregation_pb2.pyi deleted file mode 100644 index d81e4c25cf..0000000000 --- a/sdk/python/feast/protos/feast/core/Aggregation_pb2.pyi +++ /dev/null @@ -1,35 +0,0 @@ -""" -@generated by mypy-protobuf. Do not edit manually! -isort:skip_file -""" -import builtins -import google.protobuf.descriptor -import google.protobuf.duration_pb2 -import google.protobuf.message -import typing -import typing_extensions - -DESCRIPTOR: google.protobuf.descriptor.FileDescriptor = ... - -class Aggregation(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - COLUMN_FIELD_NUMBER: builtins.int - FUNCTION_FIELD_NUMBER: builtins.int - TIME_WINDOW_FIELD_NUMBER: builtins.int - SLIDE_INTERVAL_FIELD_NUMBER: builtins.int - column: typing.Text = ... - function: typing.Text = ... - @property - def time_window(self) -> google.protobuf.duration_pb2.Duration: ... - @property - def slide_interval(self) -> google.protobuf.duration_pb2.Duration: ... - def __init__(self, - *, - column : typing.Text = ..., - function : typing.Text = ..., - time_window : typing.Optional[google.protobuf.duration_pb2.Duration] = ..., - slide_interval : typing.Optional[google.protobuf.duration_pb2.Duration] = ..., - ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["slide_interval",b"slide_interval","time_window",b"time_window"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["column",b"column","function",b"function","slide_interval",b"slide_interval","time_window",b"time_window"]) -> None: ... -global___Aggregation = Aggregation diff --git a/sdk/python/feast/protos/feast/core/Aggregation_pb2_grpc.py b/sdk/python/feast/protos/feast/core/Aggregation_pb2_grpc.py deleted file mode 100644 index 2daafffebf..0000000000 --- a/sdk/python/feast/protos/feast/core/Aggregation_pb2_grpc.py +++ /dev/null @@ -1,4 +0,0 @@ -# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! -"""Client and server classes corresponding to protobuf-defined services.""" -import grpc - diff --git a/sdk/python/feast/protos/feast/core/DataFormat_pb2.py b/sdk/python/feast/protos/feast/core/DataFormat_pb2.py deleted file mode 100644 index b155aa8967..0000000000 --- a/sdk/python/feast/protos/feast/core/DataFormat_pb2.py +++ /dev/null @@ -1,37 +0,0 @@ -# -*- coding: utf-8 -*- -# Generated by the protocol buffer compiler. DO NOT EDIT! -# source: feast/core/DataFormat.proto -"""Generated protocol buffer code.""" -from google.protobuf import descriptor as _descriptor -from google.protobuf import descriptor_pool as _descriptor_pool -from google.protobuf import symbol_database as _symbol_database -from google.protobuf.internal import builder as _builder -# @@protoc_insertion_point(imports) - -_sym_db = _symbol_database.Default() - - - - -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1b\x66\x65\x61st/core/DataFormat.proto\x12\nfeast.core\"g\n\nFileFormat\x12>\n\x0eparquet_format\x18\x01 \x01(\x0b\x32$.feast.core.FileFormat.ParquetFormatH\x00\x1a\x0f\n\rParquetFormatB\x08\n\x06\x66ormat\"\xb7\x02\n\x0cStreamFormat\x12:\n\x0b\x61vro_format\x18\x01 \x01(\x0b\x32#.feast.core.StreamFormat.AvroFormatH\x00\x12<\n\x0cproto_format\x18\x02 \x01(\x0b\x32$.feast.core.StreamFormat.ProtoFormatH\x00\x12:\n\x0bjson_format\x18\x03 \x01(\x0b\x32#.feast.core.StreamFormat.JsonFormatH\x00\x1a!\n\x0bProtoFormat\x12\x12\n\nclass_path\x18\x01 \x01(\t\x1a!\n\nAvroFormat\x12\x13\n\x0bschema_json\x18\x01 \x01(\t\x1a!\n\nJsonFormat\x12\x13\n\x0bschema_json\x18\x01 \x01(\tB\x08\n\x06\x66ormatBT\n\x10\x66\x65\x61st.proto.coreB\x0f\x44\x61taFormatProtoZ/github.com/feast-dev/feast/go/protos/feast/coreb\x06proto3') - -_globals = globals() -_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) -_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'feast.core.DataFormat_pb2', _globals) -if _descriptor._USE_C_DESCRIPTORS == False: - - DESCRIPTOR._options = None - DESCRIPTOR._serialized_options = b'\n\020feast.proto.coreB\017DataFormatProtoZ/github.com/feast-dev/feast/go/protos/feast/core' - _globals['_FILEFORMAT']._serialized_start=43 - _globals['_FILEFORMAT']._serialized_end=146 - _globals['_FILEFORMAT_PARQUETFORMAT']._serialized_start=121 - _globals['_FILEFORMAT_PARQUETFORMAT']._serialized_end=136 - _globals['_STREAMFORMAT']._serialized_start=149 - _globals['_STREAMFORMAT']._serialized_end=460 - _globals['_STREAMFORMAT_PROTOFORMAT']._serialized_start=347 - _globals['_STREAMFORMAT_PROTOFORMAT']._serialized_end=380 - _globals['_STREAMFORMAT_AVROFORMAT']._serialized_start=382 - _globals['_STREAMFORMAT_AVROFORMAT']._serialized_end=415 - _globals['_STREAMFORMAT_JSONFORMAT']._serialized_start=417 - _globals['_STREAMFORMAT_JSONFORMAT']._serialized_end=450 -# @@protoc_insertion_point(module_scope) diff --git a/sdk/python/feast/protos/feast/core/DataFormat_pb2.pyi b/sdk/python/feast/protos/feast/core/DataFormat_pb2.pyi deleted file mode 100644 index ae10905a17..0000000000 --- a/sdk/python/feast/protos/feast/core/DataFormat_pb2.pyi +++ /dev/null @@ -1,95 +0,0 @@ -""" -@generated by mypy-protobuf. Do not edit manually! -isort:skip_file -""" -import builtins -import google.protobuf.descriptor -import google.protobuf.message -import typing -import typing_extensions - -DESCRIPTOR: google.protobuf.descriptor.FileDescriptor = ... - -class FileFormat(google.protobuf.message.Message): - """Defines the file format encoding the features/entity data in files""" - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - class ParquetFormat(google.protobuf.message.Message): - """Defines options for the Parquet data format""" - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - def __init__(self, - ) -> None: ... - - PARQUET_FORMAT_FIELD_NUMBER: builtins.int - @property - def parquet_format(self) -> global___FileFormat.ParquetFormat: ... - def __init__(self, - *, - parquet_format : typing.Optional[global___FileFormat.ParquetFormat] = ..., - ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["format",b"format","parquet_format",b"parquet_format"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["format",b"format","parquet_format",b"parquet_format"]) -> None: ... - def WhichOneof(self, oneof_group: typing_extensions.Literal["format",b"format"]) -> typing.Optional[typing_extensions.Literal["parquet_format"]]: ... -global___FileFormat = FileFormat - -class StreamFormat(google.protobuf.message.Message): - """Defines the data format encoding features/entity data in data streams""" - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - class ProtoFormat(google.protobuf.message.Message): - """Defines options for the protobuf data format""" - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - CLASS_PATH_FIELD_NUMBER: builtins.int - class_path: typing.Text = ... - """Classpath to the generated Java Protobuf class that can be used to decode - Feature data from the obtained stream message - """ - - def __init__(self, - *, - class_path : typing.Text = ..., - ) -> None: ... - def ClearField(self, field_name: typing_extensions.Literal["class_path",b"class_path"]) -> None: ... - - class AvroFormat(google.protobuf.message.Message): - """Defines options for the avro data format""" - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - SCHEMA_JSON_FIELD_NUMBER: builtins.int - schema_json: typing.Text = ... - """Optional if used in a File DataSource as schema is embedded in avro file. - Specifies the schema of the Avro message as JSON string. - """ - - def __init__(self, - *, - schema_json : typing.Text = ..., - ) -> None: ... - def ClearField(self, field_name: typing_extensions.Literal["schema_json",b"schema_json"]) -> None: ... - - class JsonFormat(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - SCHEMA_JSON_FIELD_NUMBER: builtins.int - schema_json: typing.Text = ... - def __init__(self, - *, - schema_json : typing.Text = ..., - ) -> None: ... - def ClearField(self, field_name: typing_extensions.Literal["schema_json",b"schema_json"]) -> None: ... - - AVRO_FORMAT_FIELD_NUMBER: builtins.int - PROTO_FORMAT_FIELD_NUMBER: builtins.int - JSON_FORMAT_FIELD_NUMBER: builtins.int - @property - def avro_format(self) -> global___StreamFormat.AvroFormat: ... - @property - def proto_format(self) -> global___StreamFormat.ProtoFormat: ... - @property - def json_format(self) -> global___StreamFormat.JsonFormat: ... - def __init__(self, - *, - avro_format : typing.Optional[global___StreamFormat.AvroFormat] = ..., - proto_format : typing.Optional[global___StreamFormat.ProtoFormat] = ..., - json_format : typing.Optional[global___StreamFormat.JsonFormat] = ..., - ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["avro_format",b"avro_format","format",b"format","json_format",b"json_format","proto_format",b"proto_format"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["avro_format",b"avro_format","format",b"format","json_format",b"json_format","proto_format",b"proto_format"]) -> None: ... - def WhichOneof(self, oneof_group: typing_extensions.Literal["format",b"format"]) -> typing.Optional[typing_extensions.Literal["avro_format","proto_format","json_format"]]: ... -global___StreamFormat = StreamFormat diff --git a/sdk/python/feast/protos/feast/core/DataFormat_pb2_grpc.py b/sdk/python/feast/protos/feast/core/DataFormat_pb2_grpc.py deleted file mode 100644 index 2daafffebf..0000000000 --- a/sdk/python/feast/protos/feast/core/DataFormat_pb2_grpc.py +++ /dev/null @@ -1,4 +0,0 @@ -# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! -"""Client and server classes corresponding to protobuf-defined services.""" -import grpc - diff --git a/sdk/python/feast/protos/feast/core/DataSource_pb2.py b/sdk/python/feast/protos/feast/core/DataSource_pb2.py deleted file mode 100644 index 0704279d12..0000000000 --- a/sdk/python/feast/protos/feast/core/DataSource_pb2.py +++ /dev/null @@ -1,72 +0,0 @@ -# -*- coding: utf-8 -*- -# Generated by the protocol buffer compiler. DO NOT EDIT! -# source: feast/core/DataSource.proto -"""Generated protocol buffer code.""" -from google.protobuf import descriptor as _descriptor -from google.protobuf import descriptor_pool as _descriptor_pool -from google.protobuf import symbol_database as _symbol_database -from google.protobuf.internal import builder as _builder -# @@protoc_insertion_point(imports) - -_sym_db = _symbol_database.Default() - - -from google.protobuf import duration_pb2 as google_dot_protobuf_dot_duration__pb2 -from google.protobuf import timestamp_pb2 as google_dot_protobuf_dot_timestamp__pb2 -from feast.protos.feast.core import DataFormat_pb2 as feast_dot_core_dot_DataFormat__pb2 -from feast.protos.feast.types import Value_pb2 as feast_dot_types_dot_Value__pb2 -from feast.protos.feast.core import Feature_pb2 as feast_dot_core_dot_Feature__pb2 - - -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1b\x66\x65\x61st/core/DataSource.proto\x12\nfeast.core\x1a\x1egoogle/protobuf/duration.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x1b\x66\x65\x61st/core/DataFormat.proto\x1a\x17\x66\x65\x61st/types/Value.proto\x1a\x18\x66\x65\x61st/core/Feature.proto\"\xc0\x16\n\nDataSource\x12\x0c\n\x04name\x18\x14 \x01(\t\x12\x0f\n\x07project\x18\x15 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x17 \x01(\t\x12.\n\x04tags\x18\x18 \x03(\x0b\x32 .feast.core.DataSource.TagsEntry\x12\r\n\x05owner\x18\x19 \x01(\t\x12/\n\x04type\x18\x01 \x01(\x0e\x32!.feast.core.DataSource.SourceType\x12?\n\rfield_mapping\x18\x02 \x03(\x0b\x32(.feast.core.DataSource.FieldMappingEntry\x12\x17\n\x0ftimestamp_field\x18\x03 \x01(\t\x12\x1d\n\x15\x64\x61te_partition_column\x18\x04 \x01(\t\x12 \n\x18\x63reated_timestamp_column\x18\x05 \x01(\t\x12\x1e\n\x16\x64\x61ta_source_class_type\x18\x11 \x01(\t\x12,\n\x0c\x62\x61tch_source\x18\x1a \x01(\x0b\x32\x16.feast.core.DataSource\x12/\n\x04meta\x18\x32 \x01(\x0b\x32!.feast.core.DataSource.SourceMeta\x12:\n\x0c\x66ile_options\x18\x0b \x01(\x0b\x32\".feast.core.DataSource.FileOptionsH\x00\x12\x42\n\x10\x62igquery_options\x18\x0c \x01(\x0b\x32&.feast.core.DataSource.BigQueryOptionsH\x00\x12<\n\rkafka_options\x18\r \x01(\x0b\x32#.feast.core.DataSource.KafkaOptionsH\x00\x12@\n\x0fkinesis_options\x18\x0e \x01(\x0b\x32%.feast.core.DataSource.KinesisOptionsH\x00\x12\x42\n\x10redshift_options\x18\x0f \x01(\x0b\x32&.feast.core.DataSource.RedshiftOptionsH\x00\x12I\n\x14request_data_options\x18\x12 \x01(\x0b\x32).feast.core.DataSource.RequestDataOptionsH\x00\x12\x44\n\x0e\x63ustom_options\x18\x10 \x01(\x0b\x32*.feast.core.DataSource.CustomSourceOptionsH\x00\x12\x44\n\x11snowflake_options\x18\x13 \x01(\x0b\x32\'.feast.core.DataSource.SnowflakeOptionsH\x00\x12:\n\x0cpush_options\x18\x16 \x01(\x0b\x32\".feast.core.DataSource.PushOptionsH\x00\x12<\n\rspark_options\x18\x1b \x01(\x0b\x32#.feast.core.DataSource.SparkOptionsH\x00\x12<\n\rtrino_options\x18\x1e \x01(\x0b\x32#.feast.core.DataSource.TrinoOptionsH\x00\x12>\n\x0e\x61thena_options\x18# \x01(\x0b\x32$.feast.core.DataSource.AthenaOptionsH\x00\x1a+\n\tTagsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x1a\x33\n\x11\x46ieldMappingEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x1a\x82\x01\n\nSourceMeta\x12:\n\x16\x65\x61rliestEventTimestamp\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x38\n\x14latestEventTimestamp\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x1a\x65\n\x0b\x46ileOptions\x12+\n\x0b\x66ile_format\x18\x01 \x01(\x0b\x32\x16.feast.core.FileFormat\x12\x0b\n\x03uri\x18\x02 \x01(\t\x12\x1c\n\x14s3_endpoint_override\x18\x03 \x01(\t\x1a/\n\x0f\x42igQueryOptions\x12\r\n\x05table\x18\x01 \x01(\t\x12\r\n\x05query\x18\x02 \x01(\t\x1a,\n\x0cTrinoOptions\x12\r\n\x05table\x18\x01 \x01(\t\x12\r\n\x05query\x18\x02 \x01(\t\x1a\xae\x01\n\x0cKafkaOptions\x12\x1f\n\x17kafka_bootstrap_servers\x18\x01 \x01(\t\x12\r\n\x05topic\x18\x02 \x01(\t\x12\x30\n\x0emessage_format\x18\x03 \x01(\x0b\x32\x18.feast.core.StreamFormat\x12<\n\x19watermark_delay_threshold\x18\x04 \x01(\x0b\x32\x19.google.protobuf.Duration\x1a\x66\n\x0eKinesisOptions\x12\x0e\n\x06region\x18\x01 \x01(\t\x12\x13\n\x0bstream_name\x18\x02 \x01(\t\x12/\n\rrecord_format\x18\x03 \x01(\x0b\x32\x18.feast.core.StreamFormat\x1aQ\n\x0fRedshiftOptions\x12\r\n\x05table\x18\x01 \x01(\t\x12\r\n\x05query\x18\x02 \x01(\t\x12\x0e\n\x06schema\x18\x03 \x01(\t\x12\x10\n\x08\x64\x61tabase\x18\x04 \x01(\t\x1aT\n\rAthenaOptions\x12\r\n\x05table\x18\x01 \x01(\t\x12\r\n\x05query\x18\x02 \x01(\t\x12\x10\n\x08\x64\x61tabase\x18\x03 \x01(\t\x12\x13\n\x0b\x64\x61ta_source\x18\x04 \x01(\t\x1aX\n\x10SnowflakeOptions\x12\r\n\x05table\x18\x01 \x01(\t\x12\r\n\x05query\x18\x02 \x01(\t\x12\x0e\n\x06schema\x18\x03 \x01(\t\x12\x10\n\x08\x64\x61tabase\x18\x04 \x01(\tJ\x04\x08\x05\x10\x06\x1aO\n\x0cSparkOptions\x12\r\n\x05table\x18\x01 \x01(\t\x12\r\n\x05query\x18\x02 \x01(\t\x12\x0c\n\x04path\x18\x03 \x01(\t\x12\x13\n\x0b\x66ile_format\x18\x04 \x01(\t\x1a,\n\x13\x43ustomSourceOptions\x12\x15\n\rconfiguration\x18\x01 \x01(\x0c\x1a\xf7\x01\n\x12RequestDataOptions\x12Z\n\x11\x64\x65precated_schema\x18\x02 \x03(\x0b\x32?.feast.core.DataSource.RequestDataOptions.DeprecatedSchemaEntry\x12)\n\x06schema\x18\x03 \x03(\x0b\x32\x19.feast.core.FeatureSpecV2\x1aT\n\x15\x44\x65precatedSchemaEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12*\n\x05value\x18\x02 \x01(\x0e\x32\x1b.feast.types.ValueType.Enum:\x02\x38\x01J\x04\x08\x01\x10\x02\x1a\x13\n\x0bPushOptionsJ\x04\x08\x01\x10\x02\"\xf8\x01\n\nSourceType\x12\x0b\n\x07INVALID\x10\x00\x12\x0e\n\nBATCH_FILE\x10\x01\x12\x13\n\x0f\x42\x41TCH_SNOWFLAKE\x10\x08\x12\x12\n\x0e\x42\x41TCH_BIGQUERY\x10\x02\x12\x12\n\x0e\x42\x41TCH_REDSHIFT\x10\x05\x12\x10\n\x0cSTREAM_KAFKA\x10\x03\x12\x12\n\x0eSTREAM_KINESIS\x10\x04\x12\x11\n\rCUSTOM_SOURCE\x10\x06\x12\x12\n\x0eREQUEST_SOURCE\x10\x07\x12\x0f\n\x0bPUSH_SOURCE\x10\t\x12\x0f\n\x0b\x42\x41TCH_TRINO\x10\n\x12\x0f\n\x0b\x42\x41TCH_SPARK\x10\x0b\x12\x10\n\x0c\x42\x41TCH_ATHENA\x10\x0c\x42\t\n\x07optionsJ\x04\x08\x06\x10\x0b\x42T\n\x10\x66\x65\x61st.proto.coreB\x0f\x44\x61taSourceProtoZ/github.com/feast-dev/feast/go/protos/feast/coreb\x06proto3') - -_globals = globals() -_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) -_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'feast.core.DataSource_pb2', _globals) -if _descriptor._USE_C_DESCRIPTORS == False: - - DESCRIPTOR._options = None - DESCRIPTOR._serialized_options = b'\n\020feast.proto.coreB\017DataSourceProtoZ/github.com/feast-dev/feast/go/protos/feast/core' - _DATASOURCE_TAGSENTRY._options = None - _DATASOURCE_TAGSENTRY._serialized_options = b'8\001' - _DATASOURCE_FIELDMAPPINGENTRY._options = None - _DATASOURCE_FIELDMAPPINGENTRY._serialized_options = b'8\001' - _DATASOURCE_REQUESTDATAOPTIONS_DEPRECATEDSCHEMAENTRY._options = None - _DATASOURCE_REQUESTDATAOPTIONS_DEPRECATEDSCHEMAENTRY._serialized_options = b'8\001' - _globals['_DATASOURCE']._serialized_start=189 - _globals['_DATASOURCE']._serialized_end=3069 - _globals['_DATASOURCE_TAGSENTRY']._serialized_start=1436 - _globals['_DATASOURCE_TAGSENTRY']._serialized_end=1479 - _globals['_DATASOURCE_FIELDMAPPINGENTRY']._serialized_start=1481 - _globals['_DATASOURCE_FIELDMAPPINGENTRY']._serialized_end=1532 - _globals['_DATASOURCE_SOURCEMETA']._serialized_start=1535 - _globals['_DATASOURCE_SOURCEMETA']._serialized_end=1665 - _globals['_DATASOURCE_FILEOPTIONS']._serialized_start=1667 - _globals['_DATASOURCE_FILEOPTIONS']._serialized_end=1768 - _globals['_DATASOURCE_BIGQUERYOPTIONS']._serialized_start=1770 - _globals['_DATASOURCE_BIGQUERYOPTIONS']._serialized_end=1817 - _globals['_DATASOURCE_TRINOOPTIONS']._serialized_start=1819 - _globals['_DATASOURCE_TRINOOPTIONS']._serialized_end=1863 - _globals['_DATASOURCE_KAFKAOPTIONS']._serialized_start=1866 - _globals['_DATASOURCE_KAFKAOPTIONS']._serialized_end=2040 - _globals['_DATASOURCE_KINESISOPTIONS']._serialized_start=2042 - _globals['_DATASOURCE_KINESISOPTIONS']._serialized_end=2144 - _globals['_DATASOURCE_REDSHIFTOPTIONS']._serialized_start=2146 - _globals['_DATASOURCE_REDSHIFTOPTIONS']._serialized_end=2227 - _globals['_DATASOURCE_ATHENAOPTIONS']._serialized_start=2229 - _globals['_DATASOURCE_ATHENAOPTIONS']._serialized_end=2313 - _globals['_DATASOURCE_SNOWFLAKEOPTIONS']._serialized_start=2315 - _globals['_DATASOURCE_SNOWFLAKEOPTIONS']._serialized_end=2403 - _globals['_DATASOURCE_SPARKOPTIONS']._serialized_start=2405 - _globals['_DATASOURCE_SPARKOPTIONS']._serialized_end=2484 - _globals['_DATASOURCE_CUSTOMSOURCEOPTIONS']._serialized_start=2486 - _globals['_DATASOURCE_CUSTOMSOURCEOPTIONS']._serialized_end=2530 - _globals['_DATASOURCE_REQUESTDATAOPTIONS']._serialized_start=2533 - _globals['_DATASOURCE_REQUESTDATAOPTIONS']._serialized_end=2780 - _globals['_DATASOURCE_REQUESTDATAOPTIONS_DEPRECATEDSCHEMAENTRY']._serialized_start=2690 - _globals['_DATASOURCE_REQUESTDATAOPTIONS_DEPRECATEDSCHEMAENTRY']._serialized_end=2774 - _globals['_DATASOURCE_PUSHOPTIONS']._serialized_start=2782 - _globals['_DATASOURCE_PUSHOPTIONS']._serialized_end=2801 - _globals['_DATASOURCE_SOURCETYPE']._serialized_start=2804 - _globals['_DATASOURCE_SOURCETYPE']._serialized_end=3052 -# @@protoc_insertion_point(module_scope) diff --git a/sdk/python/feast/protos/feast/core/DataSource_pb2.pyi b/sdk/python/feast/protos/feast/core/DataSource_pb2.pyi deleted file mode 100644 index fa7721a669..0000000000 --- a/sdk/python/feast/protos/feast/core/DataSource_pb2.pyi +++ /dev/null @@ -1,529 +0,0 @@ -""" -@generated by mypy-protobuf. Do not edit manually! -isort:skip_file -""" -import builtins -import feast.core.DataFormat_pb2 -import feast.core.Feature_pb2 -import feast.types.Value_pb2 -import google.protobuf.descriptor -import google.protobuf.duration_pb2 -import google.protobuf.internal.containers -import google.protobuf.internal.enum_type_wrapper -import google.protobuf.message -import google.protobuf.timestamp_pb2 -import typing -import typing_extensions - -DESCRIPTOR: google.protobuf.descriptor.FileDescriptor = ... - -class DataSource(google.protobuf.message.Message): - """Defines a Data Source that can be used source Feature data - Next available id: 28 - """ - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - class _SourceType: - ValueType = typing.NewType('ValueType', builtins.int) - V: typing_extensions.TypeAlias = ValueType - class _SourceTypeEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_SourceType.ValueType], builtins.type): - DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor = ... - INVALID: DataSource.SourceType.ValueType = ... # 0 - BATCH_FILE: DataSource.SourceType.ValueType = ... # 1 - BATCH_SNOWFLAKE: DataSource.SourceType.ValueType = ... # 8 - BATCH_BIGQUERY: DataSource.SourceType.ValueType = ... # 2 - BATCH_REDSHIFT: DataSource.SourceType.ValueType = ... # 5 - STREAM_KAFKA: DataSource.SourceType.ValueType = ... # 3 - STREAM_KINESIS: DataSource.SourceType.ValueType = ... # 4 - CUSTOM_SOURCE: DataSource.SourceType.ValueType = ... # 6 - REQUEST_SOURCE: DataSource.SourceType.ValueType = ... # 7 - PUSH_SOURCE: DataSource.SourceType.ValueType = ... # 9 - BATCH_TRINO: DataSource.SourceType.ValueType = ... # 10 - BATCH_SPARK: DataSource.SourceType.ValueType = ... # 11 - BATCH_ATHENA: DataSource.SourceType.ValueType = ... # 12 - class SourceType(_SourceType, metaclass=_SourceTypeEnumTypeWrapper): - """Type of Data Source. - Next available id: 12 - """ - pass - - INVALID: DataSource.SourceType.ValueType = ... # 0 - BATCH_FILE: DataSource.SourceType.ValueType = ... # 1 - BATCH_SNOWFLAKE: DataSource.SourceType.ValueType = ... # 8 - BATCH_BIGQUERY: DataSource.SourceType.ValueType = ... # 2 - BATCH_REDSHIFT: DataSource.SourceType.ValueType = ... # 5 - STREAM_KAFKA: DataSource.SourceType.ValueType = ... # 3 - STREAM_KINESIS: DataSource.SourceType.ValueType = ... # 4 - CUSTOM_SOURCE: DataSource.SourceType.ValueType = ... # 6 - REQUEST_SOURCE: DataSource.SourceType.ValueType = ... # 7 - PUSH_SOURCE: DataSource.SourceType.ValueType = ... # 9 - BATCH_TRINO: DataSource.SourceType.ValueType = ... # 10 - BATCH_SPARK: DataSource.SourceType.ValueType = ... # 11 - BATCH_ATHENA: DataSource.SourceType.ValueType = ... # 12 - - class TagsEntry(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - KEY_FIELD_NUMBER: builtins.int - VALUE_FIELD_NUMBER: builtins.int - key: typing.Text = ... - value: typing.Text = ... - def __init__(self, - *, - key : typing.Text = ..., - value : typing.Text = ..., - ) -> None: ... - def ClearField(self, field_name: typing_extensions.Literal["key",b"key","value",b"value"]) -> None: ... - - class FieldMappingEntry(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - KEY_FIELD_NUMBER: builtins.int - VALUE_FIELD_NUMBER: builtins.int - key: typing.Text = ... - value: typing.Text = ... - def __init__(self, - *, - key : typing.Text = ..., - value : typing.Text = ..., - ) -> None: ... - def ClearField(self, field_name: typing_extensions.Literal["key",b"key","value",b"value"]) -> None: ... - - class SourceMeta(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - EARLIESTEVENTTIMESTAMP_FIELD_NUMBER: builtins.int - LATESTEVENTTIMESTAMP_FIELD_NUMBER: builtins.int - @property - def earliestEventTimestamp(self) -> google.protobuf.timestamp_pb2.Timestamp: ... - @property - def latestEventTimestamp(self) -> google.protobuf.timestamp_pb2.Timestamp: ... - def __init__(self, - *, - earliestEventTimestamp : typing.Optional[google.protobuf.timestamp_pb2.Timestamp] = ..., - latestEventTimestamp : typing.Optional[google.protobuf.timestamp_pb2.Timestamp] = ..., - ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["earliestEventTimestamp",b"earliestEventTimestamp","latestEventTimestamp",b"latestEventTimestamp"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["earliestEventTimestamp",b"earliestEventTimestamp","latestEventTimestamp",b"latestEventTimestamp"]) -> None: ... - - class FileOptions(google.protobuf.message.Message): - """Defines options for DataSource that sources features from a file""" - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - FILE_FORMAT_FIELD_NUMBER: builtins.int - URI_FIELD_NUMBER: builtins.int - S3_ENDPOINT_OVERRIDE_FIELD_NUMBER: builtins.int - @property - def file_format(self) -> feast.core.DataFormat_pb2.FileFormat: ... - uri: typing.Text = ... - """Target URL of file to retrieve and source features from. - s3://path/to/file for AWS S3 storage - gs://path/to/file for GCP GCS storage - file:///path/to/file for local storage - """ - - s3_endpoint_override: typing.Text = ... - """override AWS S3 storage endpoint with custom S3 endpoint""" - - def __init__(self, - *, - file_format : typing.Optional[feast.core.DataFormat_pb2.FileFormat] = ..., - uri : typing.Text = ..., - s3_endpoint_override : typing.Text = ..., - ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["file_format",b"file_format"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["file_format",b"file_format","s3_endpoint_override",b"s3_endpoint_override","uri",b"uri"]) -> None: ... - - class BigQueryOptions(google.protobuf.message.Message): - """Defines options for DataSource that sources features from a BigQuery Query""" - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - TABLE_FIELD_NUMBER: builtins.int - QUERY_FIELD_NUMBER: builtins.int - table: typing.Text = ... - """Full table reference in the form of [project:dataset.table]""" - - query: typing.Text = ... - """SQL query that returns a table containing feature data. Must contain an event_timestamp column, and respective - entity columns - """ - - def __init__(self, - *, - table : typing.Text = ..., - query : typing.Text = ..., - ) -> None: ... - def ClearField(self, field_name: typing_extensions.Literal["query",b"query","table",b"table"]) -> None: ... - - class TrinoOptions(google.protobuf.message.Message): - """Defines options for DataSource that sources features from a Trino Query""" - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - TABLE_FIELD_NUMBER: builtins.int - QUERY_FIELD_NUMBER: builtins.int - table: typing.Text = ... - """Full table reference in the form of [project:dataset.table]""" - - query: typing.Text = ... - """SQL query that returns a table containing feature data. Must contain an event_timestamp column, and respective - entity columns - """ - - def __init__(self, - *, - table : typing.Text = ..., - query : typing.Text = ..., - ) -> None: ... - def ClearField(self, field_name: typing_extensions.Literal["query",b"query","table",b"table"]) -> None: ... - - class KafkaOptions(google.protobuf.message.Message): - """Defines options for DataSource that sources features from Kafka messages. - Each message should be a Protobuf that can be decoded with the generated - Java Protobuf class at the given class path - """ - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - KAFKA_BOOTSTRAP_SERVERS_FIELD_NUMBER: builtins.int - TOPIC_FIELD_NUMBER: builtins.int - MESSAGE_FORMAT_FIELD_NUMBER: builtins.int - WATERMARK_DELAY_THRESHOLD_FIELD_NUMBER: builtins.int - kafka_bootstrap_servers: typing.Text = ... - """Comma separated list of Kafka bootstrap servers. Used for feature tables without a defined source host[:port]]""" - - topic: typing.Text = ... - """Kafka topic to collect feature data from.""" - - @property - def message_format(self) -> feast.core.DataFormat_pb2.StreamFormat: - """Defines the stream data format encoding feature/entity data in Kafka messages.""" - pass - @property - def watermark_delay_threshold(self) -> google.protobuf.duration_pb2.Duration: - """Watermark delay threshold for stream data""" - pass - def __init__(self, - *, - kafka_bootstrap_servers : typing.Text = ..., - topic : typing.Text = ..., - message_format : typing.Optional[feast.core.DataFormat_pb2.StreamFormat] = ..., - watermark_delay_threshold : typing.Optional[google.protobuf.duration_pb2.Duration] = ..., - ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["message_format",b"message_format","watermark_delay_threshold",b"watermark_delay_threshold"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["kafka_bootstrap_servers",b"kafka_bootstrap_servers","message_format",b"message_format","topic",b"topic","watermark_delay_threshold",b"watermark_delay_threshold"]) -> None: ... - - class KinesisOptions(google.protobuf.message.Message): - """Defines options for DataSource that sources features from Kinesis records. - Each record should be a Protobuf that can be decoded with the generated - Java Protobuf class at the given class path - """ - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - REGION_FIELD_NUMBER: builtins.int - STREAM_NAME_FIELD_NUMBER: builtins.int - RECORD_FORMAT_FIELD_NUMBER: builtins.int - region: typing.Text = ... - """AWS region of the Kinesis stream""" - - stream_name: typing.Text = ... - """Name of the Kinesis stream to obtain feature data from.""" - - @property - def record_format(self) -> feast.core.DataFormat_pb2.StreamFormat: - """Defines the data format encoding the feature/entity data in Kinesis records. - Kinesis Data Sources support Avro and Proto as data formats. - """ - pass - def __init__(self, - *, - region : typing.Text = ..., - stream_name : typing.Text = ..., - record_format : typing.Optional[feast.core.DataFormat_pb2.StreamFormat] = ..., - ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["record_format",b"record_format"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["record_format",b"record_format","region",b"region","stream_name",b"stream_name"]) -> None: ... - - class RedshiftOptions(google.protobuf.message.Message): - """Defines options for DataSource that sources features from a Redshift Query""" - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - TABLE_FIELD_NUMBER: builtins.int - QUERY_FIELD_NUMBER: builtins.int - SCHEMA_FIELD_NUMBER: builtins.int - DATABASE_FIELD_NUMBER: builtins.int - table: typing.Text = ... - """Redshift table name""" - - query: typing.Text = ... - """SQL query that returns a table containing feature data. Must contain an event_timestamp column, and respective - entity columns - """ - - schema: typing.Text = ... - """Redshift schema name""" - - database: typing.Text = ... - """Redshift database name""" - - def __init__(self, - *, - table : typing.Text = ..., - query : typing.Text = ..., - schema : typing.Text = ..., - database : typing.Text = ..., - ) -> None: ... - def ClearField(self, field_name: typing_extensions.Literal["database",b"database","query",b"query","schema",b"schema","table",b"table"]) -> None: ... - - class AthenaOptions(google.protobuf.message.Message): - """Defines options for DataSource that sources features from a Athena Query""" - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - TABLE_FIELD_NUMBER: builtins.int - QUERY_FIELD_NUMBER: builtins.int - DATABASE_FIELD_NUMBER: builtins.int - DATA_SOURCE_FIELD_NUMBER: builtins.int - table: typing.Text = ... - """Athena table name""" - - query: typing.Text = ... - """SQL query that returns a table containing feature data. Must contain an event_timestamp column, and respective - entity columns - """ - - database: typing.Text = ... - """Athena database name""" - - data_source: typing.Text = ... - """Athena schema name""" - - def __init__(self, - *, - table : typing.Text = ..., - query : typing.Text = ..., - database : typing.Text = ..., - data_source : typing.Text = ..., - ) -> None: ... - def ClearField(self, field_name: typing_extensions.Literal["data_source",b"data_source","database",b"database","query",b"query","table",b"table"]) -> None: ... - - class SnowflakeOptions(google.protobuf.message.Message): - """Defines options for DataSource that sources features from a Snowflake Query""" - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - TABLE_FIELD_NUMBER: builtins.int - QUERY_FIELD_NUMBER: builtins.int - SCHEMA_FIELD_NUMBER: builtins.int - DATABASE_FIELD_NUMBER: builtins.int - table: typing.Text = ... - """Snowflake table name""" - - query: typing.Text = ... - """SQL query that returns a table containing feature data. Must contain an event_timestamp column, and respective - entity columns - """ - - schema: typing.Text = ... - """Snowflake schema name""" - - database: typing.Text = ... - """Snowflake schema name""" - - def __init__(self, - *, - table : typing.Text = ..., - query : typing.Text = ..., - schema : typing.Text = ..., - database : typing.Text = ..., - ) -> None: ... - def ClearField(self, field_name: typing_extensions.Literal["database",b"database","query",b"query","schema",b"schema","table",b"table"]) -> None: ... - - class SparkOptions(google.protobuf.message.Message): - """Defines options for DataSource that sources features from a spark table/query""" - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - TABLE_FIELD_NUMBER: builtins.int - QUERY_FIELD_NUMBER: builtins.int - PATH_FIELD_NUMBER: builtins.int - FILE_FORMAT_FIELD_NUMBER: builtins.int - table: typing.Text = ... - """Table name""" - - query: typing.Text = ... - """Spark SQl query that returns the table, this is an alternative to `table`""" - - path: typing.Text = ... - """Path from which spark can read the table, this is an alternative to `table`""" - - file_format: typing.Text = ... - """Format of files at `path` (e.g. parquet, avro, etc)""" - - def __init__(self, - *, - table : typing.Text = ..., - query : typing.Text = ..., - path : typing.Text = ..., - file_format : typing.Text = ..., - ) -> None: ... - def ClearField(self, field_name: typing_extensions.Literal["file_format",b"file_format","path",b"path","query",b"query","table",b"table"]) -> None: ... - - class CustomSourceOptions(google.protobuf.message.Message): - """Defines configuration for custom third-party data sources.""" - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - CONFIGURATION_FIELD_NUMBER: builtins.int - configuration: builtins.bytes = ... - """Serialized configuration information for the data source. The implementer of the custom data source is - responsible for serializing and deserializing data from bytes - """ - - def __init__(self, - *, - configuration : builtins.bytes = ..., - ) -> None: ... - def ClearField(self, field_name: typing_extensions.Literal["configuration",b"configuration"]) -> None: ... - - class RequestDataOptions(google.protobuf.message.Message): - """Defines options for DataSource that sources features from request data""" - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - class DeprecatedSchemaEntry(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - KEY_FIELD_NUMBER: builtins.int - VALUE_FIELD_NUMBER: builtins.int - key: typing.Text = ... - value: feast.types.Value_pb2.ValueType.Enum.ValueType = ... - def __init__(self, - *, - key : typing.Text = ..., - value : feast.types.Value_pb2.ValueType.Enum.ValueType = ..., - ) -> None: ... - def ClearField(self, field_name: typing_extensions.Literal["key",b"key","value",b"value"]) -> None: ... - - DEPRECATED_SCHEMA_FIELD_NUMBER: builtins.int - SCHEMA_FIELD_NUMBER: builtins.int - @property - def deprecated_schema(self) -> google.protobuf.internal.containers.ScalarMap[typing.Text, feast.types.Value_pb2.ValueType.Enum.ValueType]: - """Mapping of feature name to type""" - pass - @property - def schema(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[feast.core.Feature_pb2.FeatureSpecV2]: ... - def __init__(self, - *, - deprecated_schema : typing.Optional[typing.Mapping[typing.Text, feast.types.Value_pb2.ValueType.Enum.ValueType]] = ..., - schema : typing.Optional[typing.Iterable[feast.core.Feature_pb2.FeatureSpecV2]] = ..., - ) -> None: ... - def ClearField(self, field_name: typing_extensions.Literal["deprecated_schema",b"deprecated_schema","schema",b"schema"]) -> None: ... - - class PushOptions(google.protobuf.message.Message): - """Defines options for DataSource that supports pushing data to it. This allows data to be pushed to - the online store on-demand, such as by stream consumers. - """ - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - def __init__(self, - ) -> None: ... - - NAME_FIELD_NUMBER: builtins.int - PROJECT_FIELD_NUMBER: builtins.int - DESCRIPTION_FIELD_NUMBER: builtins.int - TAGS_FIELD_NUMBER: builtins.int - OWNER_FIELD_NUMBER: builtins.int - TYPE_FIELD_NUMBER: builtins.int - FIELD_MAPPING_FIELD_NUMBER: builtins.int - TIMESTAMP_FIELD_FIELD_NUMBER: builtins.int - DATE_PARTITION_COLUMN_FIELD_NUMBER: builtins.int - CREATED_TIMESTAMP_COLUMN_FIELD_NUMBER: builtins.int - DATA_SOURCE_CLASS_TYPE_FIELD_NUMBER: builtins.int - BATCH_SOURCE_FIELD_NUMBER: builtins.int - META_FIELD_NUMBER: builtins.int - FILE_OPTIONS_FIELD_NUMBER: builtins.int - BIGQUERY_OPTIONS_FIELD_NUMBER: builtins.int - KAFKA_OPTIONS_FIELD_NUMBER: builtins.int - KINESIS_OPTIONS_FIELD_NUMBER: builtins.int - REDSHIFT_OPTIONS_FIELD_NUMBER: builtins.int - REQUEST_DATA_OPTIONS_FIELD_NUMBER: builtins.int - CUSTOM_OPTIONS_FIELD_NUMBER: builtins.int - SNOWFLAKE_OPTIONS_FIELD_NUMBER: builtins.int - PUSH_OPTIONS_FIELD_NUMBER: builtins.int - SPARK_OPTIONS_FIELD_NUMBER: builtins.int - TRINO_OPTIONS_FIELD_NUMBER: builtins.int - ATHENA_OPTIONS_FIELD_NUMBER: builtins.int - name: typing.Text = ... - """Unique name of data source within the project""" - - project: typing.Text = ... - """Name of Feast project that this data source belongs to.""" - - description: typing.Text = ... - @property - def tags(self) -> google.protobuf.internal.containers.ScalarMap[typing.Text, typing.Text]: ... - owner: typing.Text = ... - type: global___DataSource.SourceType.ValueType = ... - @property - def field_mapping(self) -> google.protobuf.internal.containers.ScalarMap[typing.Text, typing.Text]: - """Defines mapping between fields in the sourced data - and fields in parent FeatureTable. - """ - pass - timestamp_field: typing.Text = ... - """Must specify event timestamp column name""" - - date_partition_column: typing.Text = ... - """(Optional) Specify partition column - useful for file sources - """ - - created_timestamp_column: typing.Text = ... - """Must specify creation timestamp column name""" - - data_source_class_type: typing.Text = ... - """This is an internal field that is represents the python class for the data source object a proto object represents. - This should be set by feast, and not by users. - The field is used primarily by custom data sources and is mandatory for them to set. Feast may set it for - first party sources as well. - """ - - @property - def batch_source(self) -> global___DataSource: - """Optional batch source for streaming sources for historical features and materialization.""" - pass - @property - def meta(self) -> global___DataSource.SourceMeta: ... - @property - def file_options(self) -> global___DataSource.FileOptions: ... - @property - def bigquery_options(self) -> global___DataSource.BigQueryOptions: ... - @property - def kafka_options(self) -> global___DataSource.KafkaOptions: ... - @property - def kinesis_options(self) -> global___DataSource.KinesisOptions: ... - @property - def redshift_options(self) -> global___DataSource.RedshiftOptions: ... - @property - def request_data_options(self) -> global___DataSource.RequestDataOptions: ... - @property - def custom_options(self) -> global___DataSource.CustomSourceOptions: ... - @property - def snowflake_options(self) -> global___DataSource.SnowflakeOptions: ... - @property - def push_options(self) -> global___DataSource.PushOptions: ... - @property - def spark_options(self) -> global___DataSource.SparkOptions: ... - @property - def trino_options(self) -> global___DataSource.TrinoOptions: ... - @property - def athena_options(self) -> global___DataSource.AthenaOptions: ... - def __init__(self, - *, - name : typing.Text = ..., - project : typing.Text = ..., - description : typing.Text = ..., - tags : typing.Optional[typing.Mapping[typing.Text, typing.Text]] = ..., - owner : typing.Text = ..., - type : global___DataSource.SourceType.ValueType = ..., - field_mapping : typing.Optional[typing.Mapping[typing.Text, typing.Text]] = ..., - timestamp_field : typing.Text = ..., - date_partition_column : typing.Text = ..., - created_timestamp_column : typing.Text = ..., - data_source_class_type : typing.Text = ..., - batch_source : typing.Optional[global___DataSource] = ..., - meta : typing.Optional[global___DataSource.SourceMeta] = ..., - file_options : typing.Optional[global___DataSource.FileOptions] = ..., - bigquery_options : typing.Optional[global___DataSource.BigQueryOptions] = ..., - kafka_options : typing.Optional[global___DataSource.KafkaOptions] = ..., - kinesis_options : typing.Optional[global___DataSource.KinesisOptions] = ..., - redshift_options : typing.Optional[global___DataSource.RedshiftOptions] = ..., - request_data_options : typing.Optional[global___DataSource.RequestDataOptions] = ..., - custom_options : typing.Optional[global___DataSource.CustomSourceOptions] = ..., - snowflake_options : typing.Optional[global___DataSource.SnowflakeOptions] = ..., - push_options : typing.Optional[global___DataSource.PushOptions] = ..., - spark_options : typing.Optional[global___DataSource.SparkOptions] = ..., - trino_options : typing.Optional[global___DataSource.TrinoOptions] = ..., - athena_options : typing.Optional[global___DataSource.AthenaOptions] = ..., - ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["athena_options",b"athena_options","batch_source",b"batch_source","bigquery_options",b"bigquery_options","custom_options",b"custom_options","file_options",b"file_options","kafka_options",b"kafka_options","kinesis_options",b"kinesis_options","meta",b"meta","options",b"options","push_options",b"push_options","redshift_options",b"redshift_options","request_data_options",b"request_data_options","snowflake_options",b"snowflake_options","spark_options",b"spark_options","trino_options",b"trino_options"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["athena_options",b"athena_options","batch_source",b"batch_source","bigquery_options",b"bigquery_options","created_timestamp_column",b"created_timestamp_column","custom_options",b"custom_options","data_source_class_type",b"data_source_class_type","date_partition_column",b"date_partition_column","description",b"description","field_mapping",b"field_mapping","file_options",b"file_options","kafka_options",b"kafka_options","kinesis_options",b"kinesis_options","meta",b"meta","name",b"name","options",b"options","owner",b"owner","project",b"project","push_options",b"push_options","redshift_options",b"redshift_options","request_data_options",b"request_data_options","snowflake_options",b"snowflake_options","spark_options",b"spark_options","tags",b"tags","timestamp_field",b"timestamp_field","trino_options",b"trino_options","type",b"type"]) -> None: ... - def WhichOneof(self, oneof_group: typing_extensions.Literal["options",b"options"]) -> typing.Optional[typing_extensions.Literal["file_options","bigquery_options","kafka_options","kinesis_options","redshift_options","request_data_options","custom_options","snowflake_options","push_options","spark_options","trino_options","athena_options"]]: ... -global___DataSource = DataSource diff --git a/sdk/python/feast/protos/feast/core/DataSource_pb2_grpc.py b/sdk/python/feast/protos/feast/core/DataSource_pb2_grpc.py deleted file mode 100644 index 2daafffebf..0000000000 --- a/sdk/python/feast/protos/feast/core/DataSource_pb2_grpc.py +++ /dev/null @@ -1,4 +0,0 @@ -# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! -"""Client and server classes corresponding to protobuf-defined services.""" -import grpc - diff --git a/sdk/python/feast/protos/feast/core/DatastoreTable_pb2.py b/sdk/python/feast/protos/feast/core/DatastoreTable_pb2.py deleted file mode 100644 index bf5fa875cd..0000000000 --- a/sdk/python/feast/protos/feast/core/DatastoreTable_pb2.py +++ /dev/null @@ -1,28 +0,0 @@ -# -*- coding: utf-8 -*- -# Generated by the protocol buffer compiler. DO NOT EDIT! -# source: feast/core/DatastoreTable.proto -"""Generated protocol buffer code.""" -from google.protobuf import descriptor as _descriptor -from google.protobuf import descriptor_pool as _descriptor_pool -from google.protobuf import symbol_database as _symbol_database -from google.protobuf.internal import builder as _builder -# @@protoc_insertion_point(imports) - -_sym_db = _symbol_database.Default() - - -from google.protobuf import wrappers_pb2 as google_dot_protobuf_dot_wrappers__pb2 - - -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1f\x66\x65\x61st/core/DatastoreTable.proto\x12\nfeast.core\x1a\x1egoogle/protobuf/wrappers.proto\"\x92\x01\n\x0e\x44\x61tastoreTable\x12\x0f\n\x07project\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x30\n\nproject_id\x18\x03 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12/\n\tnamespace\x18\x04 \x01(\x0b\x32\x1c.google.protobuf.StringValueBX\n\x10\x66\x65\x61st.proto.coreB\x13\x44\x61tastoreTableProtoZ/github.com/feast-dev/feast/go/protos/feast/coreb\x06proto3') - -_globals = globals() -_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) -_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'feast.core.DatastoreTable_pb2', _globals) -if _descriptor._USE_C_DESCRIPTORS == False: - - DESCRIPTOR._options = None - DESCRIPTOR._serialized_options = b'\n\020feast.proto.coreB\023DatastoreTableProtoZ/github.com/feast-dev/feast/go/protos/feast/core' - _globals['_DATASTORETABLE']._serialized_start=80 - _globals['_DATASTORETABLE']._serialized_end=226 -# @@protoc_insertion_point(module_scope) diff --git a/sdk/python/feast/protos/feast/core/DatastoreTable_pb2.pyi b/sdk/python/feast/protos/feast/core/DatastoreTable_pb2.pyi deleted file mode 100644 index 6ecb6ad156..0000000000 --- a/sdk/python/feast/protos/feast/core/DatastoreTable_pb2.pyi +++ /dev/null @@ -1,44 +0,0 @@ -""" -@generated by mypy-protobuf. Do not edit manually! -isort:skip_file -""" -import builtins -import google.protobuf.descriptor -import google.protobuf.message -import google.protobuf.wrappers_pb2 -import typing -import typing_extensions - -DESCRIPTOR: google.protobuf.descriptor.FileDescriptor = ... - -class DatastoreTable(google.protobuf.message.Message): - """Represents a Datastore table""" - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - PROJECT_FIELD_NUMBER: builtins.int - NAME_FIELD_NUMBER: builtins.int - PROJECT_ID_FIELD_NUMBER: builtins.int - NAMESPACE_FIELD_NUMBER: builtins.int - project: typing.Text = ... - """Feast project of the table""" - - name: typing.Text = ... - """Name of the table""" - - @property - def project_id(self) -> google.protobuf.wrappers_pb2.StringValue: - """GCP project id""" - pass - @property - def namespace(self) -> google.protobuf.wrappers_pb2.StringValue: - """Datastore namespace""" - pass - def __init__(self, - *, - project : typing.Text = ..., - name : typing.Text = ..., - project_id : typing.Optional[google.protobuf.wrappers_pb2.StringValue] = ..., - namespace : typing.Optional[google.protobuf.wrappers_pb2.StringValue] = ..., - ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["namespace",b"namespace","project_id",b"project_id"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["name",b"name","namespace",b"namespace","project",b"project","project_id",b"project_id"]) -> None: ... -global___DatastoreTable = DatastoreTable diff --git a/sdk/python/feast/protos/feast/core/DatastoreTable_pb2_grpc.py b/sdk/python/feast/protos/feast/core/DatastoreTable_pb2_grpc.py deleted file mode 100644 index 2daafffebf..0000000000 --- a/sdk/python/feast/protos/feast/core/DatastoreTable_pb2_grpc.py +++ /dev/null @@ -1,4 +0,0 @@ -# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! -"""Client and server classes corresponding to protobuf-defined services.""" -import grpc - diff --git a/sdk/python/feast/protos/feast/core/DynamoDBTable_pb2.py b/sdk/python/feast/protos/feast/core/DynamoDBTable_pb2.py deleted file mode 100644 index 2d12e536c0..0000000000 --- a/sdk/python/feast/protos/feast/core/DynamoDBTable_pb2.py +++ /dev/null @@ -1,27 +0,0 @@ -# -*- coding: utf-8 -*- -# Generated by the protocol buffer compiler. DO NOT EDIT! -# source: feast/core/DynamoDBTable.proto -"""Generated protocol buffer code.""" -from google.protobuf import descriptor as _descriptor -from google.protobuf import descriptor_pool as _descriptor_pool -from google.protobuf import symbol_database as _symbol_database -from google.protobuf.internal import builder as _builder -# @@protoc_insertion_point(imports) - -_sym_db = _symbol_database.Default() - - - - -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1e\x66\x65\x61st/core/DynamoDBTable.proto\x12\nfeast.core\"-\n\rDynamoDBTable\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0e\n\x06region\x18\x02 \x01(\tBW\n\x10\x66\x65\x61st.proto.coreB\x12\x44ynamoDBTableProtoZ/github.com/feast-dev/feast/go/protos/feast/coreb\x06proto3') - -_globals = globals() -_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) -_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'feast.core.DynamoDBTable_pb2', _globals) -if _descriptor._USE_C_DESCRIPTORS == False: - - DESCRIPTOR._options = None - DESCRIPTOR._serialized_options = b'\n\020feast.proto.coreB\022DynamoDBTableProtoZ/github.com/feast-dev/feast/go/protos/feast/core' - _globals['_DYNAMODBTABLE']._serialized_start=46 - _globals['_DYNAMODBTABLE']._serialized_end=91 -# @@protoc_insertion_point(module_scope) diff --git a/sdk/python/feast/protos/feast/core/DynamoDBTable_pb2.pyi b/sdk/python/feast/protos/feast/core/DynamoDBTable_pb2.pyi deleted file mode 100644 index 27ed412aa9..0000000000 --- a/sdk/python/feast/protos/feast/core/DynamoDBTable_pb2.pyi +++ /dev/null @@ -1,30 +0,0 @@ -""" -@generated by mypy-protobuf. Do not edit manually! -isort:skip_file -""" -import builtins -import google.protobuf.descriptor -import google.protobuf.message -import typing -import typing_extensions - -DESCRIPTOR: google.protobuf.descriptor.FileDescriptor = ... - -class DynamoDBTable(google.protobuf.message.Message): - """Represents a DynamoDB table""" - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - NAME_FIELD_NUMBER: builtins.int - REGION_FIELD_NUMBER: builtins.int - name: typing.Text = ... - """Name of the table""" - - region: typing.Text = ... - """Region of the table""" - - def __init__(self, - *, - name : typing.Text = ..., - region : typing.Text = ..., - ) -> None: ... - def ClearField(self, field_name: typing_extensions.Literal["name",b"name","region",b"region"]) -> None: ... -global___DynamoDBTable = DynamoDBTable diff --git a/sdk/python/feast/protos/feast/core/DynamoDBTable_pb2_grpc.py b/sdk/python/feast/protos/feast/core/DynamoDBTable_pb2_grpc.py deleted file mode 100644 index 2daafffebf..0000000000 --- a/sdk/python/feast/protos/feast/core/DynamoDBTable_pb2_grpc.py +++ /dev/null @@ -1,4 +0,0 @@ -# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! -"""Client and server classes corresponding to protobuf-defined services.""" -import grpc - diff --git a/sdk/python/feast/protos/feast/core/Entity_pb2.py b/sdk/python/feast/protos/feast/core/Entity_pb2.py deleted file mode 100644 index b0997ff7cf..0000000000 --- a/sdk/python/feast/protos/feast/core/Entity_pb2.py +++ /dev/null @@ -1,37 +0,0 @@ -# -*- coding: utf-8 -*- -# Generated by the protocol buffer compiler. DO NOT EDIT! -# source: feast/core/Entity.proto -"""Generated protocol buffer code.""" -from google.protobuf import descriptor as _descriptor -from google.protobuf import descriptor_pool as _descriptor_pool -from google.protobuf import symbol_database as _symbol_database -from google.protobuf.internal import builder as _builder -# @@protoc_insertion_point(imports) - -_sym_db = _symbol_database.Default() - - -from feast.protos.feast.types import Value_pb2 as feast_dot_types_dot_Value__pb2 -from google.protobuf import timestamp_pb2 as google_dot_protobuf_dot_timestamp__pb2 - - -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x17\x66\x65\x61st/core/Entity.proto\x12\nfeast.core\x1a\x17\x66\x65\x61st/types/Value.proto\x1a\x1fgoogle/protobuf/timestamp.proto\"V\n\x06\x45ntity\x12&\n\x04spec\x18\x01 \x01(\x0b\x32\x18.feast.core.EntitySpecV2\x12$\n\x04meta\x18\x02 \x01(\x0b\x32\x16.feast.core.EntityMeta\"\xf3\x01\n\x0c\x45ntitySpecV2\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0f\n\x07project\x18\t \x01(\t\x12/\n\nvalue_type\x18\x02 \x01(\x0e\x32\x1b.feast.types.ValueType.Enum\x12\x13\n\x0b\x64\x65scription\x18\x03 \x01(\t\x12\x10\n\x08join_key\x18\x04 \x01(\t\x12\x30\n\x04tags\x18\x08 \x03(\x0b\x32\".feast.core.EntitySpecV2.TagsEntry\x12\r\n\x05owner\x18\n \x01(\t\x1a+\n\tTagsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\x7f\n\nEntityMeta\x12\x35\n\x11\x63reated_timestamp\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12:\n\x16last_updated_timestamp\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.TimestampBP\n\x10\x66\x65\x61st.proto.coreB\x0b\x45ntityProtoZ/github.com/feast-dev/feast/go/protos/feast/coreb\x06proto3') - -_globals = globals() -_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) -_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'feast.core.Entity_pb2', _globals) -if _descriptor._USE_C_DESCRIPTORS == False: - - DESCRIPTOR._options = None - DESCRIPTOR._serialized_options = b'\n\020feast.proto.coreB\013EntityProtoZ/github.com/feast-dev/feast/go/protos/feast/core' - _ENTITYSPECV2_TAGSENTRY._options = None - _ENTITYSPECV2_TAGSENTRY._serialized_options = b'8\001' - _globals['_ENTITY']._serialized_start=97 - _globals['_ENTITY']._serialized_end=183 - _globals['_ENTITYSPECV2']._serialized_start=186 - _globals['_ENTITYSPECV2']._serialized_end=429 - _globals['_ENTITYSPECV2_TAGSENTRY']._serialized_start=386 - _globals['_ENTITYSPECV2_TAGSENTRY']._serialized_end=429 - _globals['_ENTITYMETA']._serialized_start=431 - _globals['_ENTITYMETA']._serialized_end=558 -# @@protoc_insertion_point(module_scope) diff --git a/sdk/python/feast/protos/feast/core/Entity_pb2.pyi b/sdk/python/feast/protos/feast/core/Entity_pb2.pyi deleted file mode 100644 index 83417e4d92..0000000000 --- a/sdk/python/feast/protos/feast/core/Entity_pb2.pyi +++ /dev/null @@ -1,109 +0,0 @@ -""" -@generated by mypy-protobuf. Do not edit manually! -isort:skip_file -""" -import builtins -import feast.types.Value_pb2 -import google.protobuf.descriptor -import google.protobuf.internal.containers -import google.protobuf.message -import google.protobuf.timestamp_pb2 -import typing -import typing_extensions - -DESCRIPTOR: google.protobuf.descriptor.FileDescriptor = ... - -class Entity(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - SPEC_FIELD_NUMBER: builtins.int - META_FIELD_NUMBER: builtins.int - @property - def spec(self) -> global___EntitySpecV2: - """User-specified specifications of this entity.""" - pass - @property - def meta(self) -> global___EntityMeta: - """System-populated metadata for this entity.""" - pass - def __init__(self, - *, - spec : typing.Optional[global___EntitySpecV2] = ..., - meta : typing.Optional[global___EntityMeta] = ..., - ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["meta",b"meta","spec",b"spec"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["meta",b"meta","spec",b"spec"]) -> None: ... -global___Entity = Entity - -class EntitySpecV2(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - class TagsEntry(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - KEY_FIELD_NUMBER: builtins.int - VALUE_FIELD_NUMBER: builtins.int - key: typing.Text = ... - value: typing.Text = ... - def __init__(self, - *, - key : typing.Text = ..., - value : typing.Text = ..., - ) -> None: ... - def ClearField(self, field_name: typing_extensions.Literal["key",b"key","value",b"value"]) -> None: ... - - NAME_FIELD_NUMBER: builtins.int - PROJECT_FIELD_NUMBER: builtins.int - VALUE_TYPE_FIELD_NUMBER: builtins.int - DESCRIPTION_FIELD_NUMBER: builtins.int - JOIN_KEY_FIELD_NUMBER: builtins.int - TAGS_FIELD_NUMBER: builtins.int - OWNER_FIELD_NUMBER: builtins.int - name: typing.Text = ... - """Name of the entity.""" - - project: typing.Text = ... - """Name of Feast project that this feature table belongs to.""" - - value_type: feast.types.Value_pb2.ValueType.Enum.ValueType = ... - """Type of the entity.""" - - description: typing.Text = ... - """Description of the entity.""" - - join_key: typing.Text = ... - """Join key for the entity (i.e. name of the column the entity maps to).""" - - @property - def tags(self) -> google.protobuf.internal.containers.ScalarMap[typing.Text, typing.Text]: - """User defined metadata""" - pass - owner: typing.Text = ... - """Owner of the entity.""" - - def __init__(self, - *, - name : typing.Text = ..., - project : typing.Text = ..., - value_type : feast.types.Value_pb2.ValueType.Enum.ValueType = ..., - description : typing.Text = ..., - join_key : typing.Text = ..., - tags : typing.Optional[typing.Mapping[typing.Text, typing.Text]] = ..., - owner : typing.Text = ..., - ) -> None: ... - def ClearField(self, field_name: typing_extensions.Literal["description",b"description","join_key",b"join_key","name",b"name","owner",b"owner","project",b"project","tags",b"tags","value_type",b"value_type"]) -> None: ... -global___EntitySpecV2 = EntitySpecV2 - -class EntityMeta(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - CREATED_TIMESTAMP_FIELD_NUMBER: builtins.int - LAST_UPDATED_TIMESTAMP_FIELD_NUMBER: builtins.int - @property - def created_timestamp(self) -> google.protobuf.timestamp_pb2.Timestamp: ... - @property - def last_updated_timestamp(self) -> google.protobuf.timestamp_pb2.Timestamp: ... - def __init__(self, - *, - created_timestamp : typing.Optional[google.protobuf.timestamp_pb2.Timestamp] = ..., - last_updated_timestamp : typing.Optional[google.protobuf.timestamp_pb2.Timestamp] = ..., - ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["created_timestamp",b"created_timestamp","last_updated_timestamp",b"last_updated_timestamp"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["created_timestamp",b"created_timestamp","last_updated_timestamp",b"last_updated_timestamp"]) -> None: ... -global___EntityMeta = EntityMeta diff --git a/sdk/python/feast/protos/feast/core/Entity_pb2_grpc.py b/sdk/python/feast/protos/feast/core/Entity_pb2_grpc.py deleted file mode 100644 index 2daafffebf..0000000000 --- a/sdk/python/feast/protos/feast/core/Entity_pb2_grpc.py +++ /dev/null @@ -1,4 +0,0 @@ -# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! -"""Client and server classes corresponding to protobuf-defined services.""" -import grpc - diff --git a/sdk/python/feast/protos/feast/core/FeatureService_pb2.py b/sdk/python/feast/protos/feast/core/FeatureService_pb2.py deleted file mode 100644 index c1a34dd772..0000000000 --- a/sdk/python/feast/protos/feast/core/FeatureService_pb2.py +++ /dev/null @@ -1,55 +0,0 @@ -# -*- coding: utf-8 -*- -# Generated by the protocol buffer compiler. DO NOT EDIT! -# source: feast/core/FeatureService.proto -"""Generated protocol buffer code.""" -from google.protobuf import descriptor as _descriptor -from google.protobuf import descriptor_pool as _descriptor_pool -from google.protobuf import symbol_database as _symbol_database -from google.protobuf.internal import builder as _builder -# @@protoc_insertion_point(imports) - -_sym_db = _symbol_database.Default() - - -from google.protobuf import timestamp_pb2 as google_dot_protobuf_dot_timestamp__pb2 -from feast.protos.feast.core import FeatureViewProjection_pb2 as feast_dot_core_dot_FeatureViewProjection__pb2 - - -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1f\x66\x65\x61st/core/FeatureService.proto\x12\nfeast.core\x1a\x1fgoogle/protobuf/timestamp.proto\x1a&feast/core/FeatureViewProjection.proto\"l\n\x0e\x46\x65\x61tureService\x12,\n\x04spec\x18\x01 \x01(\x0b\x32\x1e.feast.core.FeatureServiceSpec\x12,\n\x04meta\x18\x02 \x01(\x0b\x32\x1e.feast.core.FeatureServiceMeta\"\xa4\x02\n\x12\x46\x65\x61tureServiceSpec\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0f\n\x07project\x18\x02 \x01(\t\x12\x33\n\x08\x66\x65\x61tures\x18\x03 \x03(\x0b\x32!.feast.core.FeatureViewProjection\x12\x36\n\x04tags\x18\x04 \x03(\x0b\x32(.feast.core.FeatureServiceSpec.TagsEntry\x12\x13\n\x0b\x64\x65scription\x18\x05 \x01(\t\x12\r\n\x05owner\x18\x06 \x01(\t\x12\x31\n\x0elogging_config\x18\x07 \x01(\x0b\x32\x19.feast.core.LoggingConfig\x1a+\n\tTagsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\x87\x01\n\x12\x46\x65\x61tureServiceMeta\x12\x35\n\x11\x63reated_timestamp\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12:\n\x16last_updated_timestamp\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\"\x9a\x07\n\rLoggingConfig\x12\x13\n\x0bsample_rate\x18\x01 \x01(\x02\x12\x45\n\x10\x66ile_destination\x18\x03 \x01(\x0b\x32).feast.core.LoggingConfig.FileDestinationH\x00\x12M\n\x14\x62igquery_destination\x18\x04 \x01(\x0b\x32-.feast.core.LoggingConfig.BigQueryDestinationH\x00\x12M\n\x14redshift_destination\x18\x05 \x01(\x0b\x32-.feast.core.LoggingConfig.RedshiftDestinationH\x00\x12O\n\x15snowflake_destination\x18\x06 \x01(\x0b\x32..feast.core.LoggingConfig.SnowflakeDestinationH\x00\x12I\n\x12\x63ustom_destination\x18\x07 \x01(\x0b\x32+.feast.core.LoggingConfig.CustomDestinationH\x00\x12I\n\x12\x61thena_destination\x18\x08 \x01(\x0b\x32+.feast.core.LoggingConfig.AthenaDestinationH\x00\x1aS\n\x0f\x46ileDestination\x12\x0c\n\x04path\x18\x01 \x01(\t\x12\x1c\n\x14s3_endpoint_override\x18\x02 \x01(\t\x12\x14\n\x0cpartition_by\x18\x03 \x03(\t\x1a(\n\x13\x42igQueryDestination\x12\x11\n\ttable_ref\x18\x01 \x01(\t\x1a)\n\x13RedshiftDestination\x12\x12\n\ntable_name\x18\x01 \x01(\t\x1a\'\n\x11\x41thenaDestination\x12\x12\n\ntable_name\x18\x01 \x01(\t\x1a*\n\x14SnowflakeDestination\x12\x12\n\ntable_name\x18\x01 \x01(\t\x1a\x99\x01\n\x11\x43ustomDestination\x12\x0c\n\x04kind\x18\x01 \x01(\t\x12G\n\x06\x63onfig\x18\x02 \x03(\x0b\x32\x37.feast.core.LoggingConfig.CustomDestination.ConfigEntry\x1a-\n\x0b\x43onfigEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x42\r\n\x0b\x64\x65stinationBX\n\x10\x66\x65\x61st.proto.coreB\x13\x46\x65\x61tureServiceProtoZ/github.com/feast-dev/feast/go/protos/feast/coreb\x06proto3') - -_globals = globals() -_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) -_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'feast.core.FeatureService_pb2', _globals) -if _descriptor._USE_C_DESCRIPTORS == False: - - DESCRIPTOR._options = None - DESCRIPTOR._serialized_options = b'\n\020feast.proto.coreB\023FeatureServiceProtoZ/github.com/feast-dev/feast/go/protos/feast/core' - _FEATURESERVICESPEC_TAGSENTRY._options = None - _FEATURESERVICESPEC_TAGSENTRY._serialized_options = b'8\001' - _LOGGINGCONFIG_CUSTOMDESTINATION_CONFIGENTRY._options = None - _LOGGINGCONFIG_CUSTOMDESTINATION_CONFIGENTRY._serialized_options = b'8\001' - _globals['_FEATURESERVICE']._serialized_start=120 - _globals['_FEATURESERVICE']._serialized_end=228 - _globals['_FEATURESERVICESPEC']._serialized_start=231 - _globals['_FEATURESERVICESPEC']._serialized_end=523 - _globals['_FEATURESERVICESPEC_TAGSENTRY']._serialized_start=480 - _globals['_FEATURESERVICESPEC_TAGSENTRY']._serialized_end=523 - _globals['_FEATURESERVICEMETA']._serialized_start=526 - _globals['_FEATURESERVICEMETA']._serialized_end=661 - _globals['_LOGGINGCONFIG']._serialized_start=664 - _globals['_LOGGINGCONFIG']._serialized_end=1586 - _globals['_LOGGINGCONFIG_FILEDESTINATION']._serialized_start=1162 - _globals['_LOGGINGCONFIG_FILEDESTINATION']._serialized_end=1245 - _globals['_LOGGINGCONFIG_BIGQUERYDESTINATION']._serialized_start=1247 - _globals['_LOGGINGCONFIG_BIGQUERYDESTINATION']._serialized_end=1287 - _globals['_LOGGINGCONFIG_REDSHIFTDESTINATION']._serialized_start=1289 - _globals['_LOGGINGCONFIG_REDSHIFTDESTINATION']._serialized_end=1330 - _globals['_LOGGINGCONFIG_ATHENADESTINATION']._serialized_start=1332 - _globals['_LOGGINGCONFIG_ATHENADESTINATION']._serialized_end=1371 - _globals['_LOGGINGCONFIG_SNOWFLAKEDESTINATION']._serialized_start=1373 - _globals['_LOGGINGCONFIG_SNOWFLAKEDESTINATION']._serialized_end=1415 - _globals['_LOGGINGCONFIG_CUSTOMDESTINATION']._serialized_start=1418 - _globals['_LOGGINGCONFIG_CUSTOMDESTINATION']._serialized_end=1571 - _globals['_LOGGINGCONFIG_CUSTOMDESTINATION_CONFIGENTRY']._serialized_start=1526 - _globals['_LOGGINGCONFIG_CUSTOMDESTINATION_CONFIGENTRY']._serialized_end=1571 -# @@protoc_insertion_point(module_scope) diff --git a/sdk/python/feast/protos/feast/core/FeatureService_pb2.pyi b/sdk/python/feast/protos/feast/core/FeatureService_pb2.pyi deleted file mode 100644 index fc506145ce..0000000000 --- a/sdk/python/feast/protos/feast/core/FeatureService_pb2.pyi +++ /dev/null @@ -1,249 +0,0 @@ -""" -@generated by mypy-protobuf. Do not edit manually! -isort:skip_file -""" -import builtins -import feast.core.FeatureViewProjection_pb2 -import google.protobuf.descriptor -import google.protobuf.internal.containers -import google.protobuf.message -import google.protobuf.timestamp_pb2 -import typing -import typing_extensions - -DESCRIPTOR: google.protobuf.descriptor.FileDescriptor = ... - -class FeatureService(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - SPEC_FIELD_NUMBER: builtins.int - META_FIELD_NUMBER: builtins.int - @property - def spec(self) -> global___FeatureServiceSpec: - """User-specified specifications of this feature service.""" - pass - @property - def meta(self) -> global___FeatureServiceMeta: - """System-populated metadata for this feature service.""" - pass - def __init__(self, - *, - spec : typing.Optional[global___FeatureServiceSpec] = ..., - meta : typing.Optional[global___FeatureServiceMeta] = ..., - ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["meta",b"meta","spec",b"spec"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["meta",b"meta","spec",b"spec"]) -> None: ... -global___FeatureService = FeatureService - -class FeatureServiceSpec(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - class TagsEntry(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - KEY_FIELD_NUMBER: builtins.int - VALUE_FIELD_NUMBER: builtins.int - key: typing.Text = ... - value: typing.Text = ... - def __init__(self, - *, - key : typing.Text = ..., - value : typing.Text = ..., - ) -> None: ... - def ClearField(self, field_name: typing_extensions.Literal["key",b"key","value",b"value"]) -> None: ... - - NAME_FIELD_NUMBER: builtins.int - PROJECT_FIELD_NUMBER: builtins.int - FEATURES_FIELD_NUMBER: builtins.int - TAGS_FIELD_NUMBER: builtins.int - DESCRIPTION_FIELD_NUMBER: builtins.int - OWNER_FIELD_NUMBER: builtins.int - LOGGING_CONFIG_FIELD_NUMBER: builtins.int - name: typing.Text = ... - """Name of the Feature Service. Must be unique. Not updated.""" - - project: typing.Text = ... - """Name of Feast project that this Feature Service belongs to.""" - - @property - def features(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[feast.core.FeatureViewProjection_pb2.FeatureViewProjection]: - """Represents a projection that's to be applied on top of the FeatureView. - Contains data such as the features to use from a FeatureView. - """ - pass - @property - def tags(self) -> google.protobuf.internal.containers.ScalarMap[typing.Text, typing.Text]: - """User defined metadata""" - pass - description: typing.Text = ... - """Description of the feature service.""" - - owner: typing.Text = ... - """Owner of the feature service.""" - - @property - def logging_config(self) -> global___LoggingConfig: - """(optional) if provided logging will be enabled for this feature service.""" - pass - def __init__(self, - *, - name : typing.Text = ..., - project : typing.Text = ..., - features : typing.Optional[typing.Iterable[feast.core.FeatureViewProjection_pb2.FeatureViewProjection]] = ..., - tags : typing.Optional[typing.Mapping[typing.Text, typing.Text]] = ..., - description : typing.Text = ..., - owner : typing.Text = ..., - logging_config : typing.Optional[global___LoggingConfig] = ..., - ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["logging_config",b"logging_config"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["description",b"description","features",b"features","logging_config",b"logging_config","name",b"name","owner",b"owner","project",b"project","tags",b"tags"]) -> None: ... -global___FeatureServiceSpec = FeatureServiceSpec - -class FeatureServiceMeta(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - CREATED_TIMESTAMP_FIELD_NUMBER: builtins.int - LAST_UPDATED_TIMESTAMP_FIELD_NUMBER: builtins.int - @property - def created_timestamp(self) -> google.protobuf.timestamp_pb2.Timestamp: - """Time where this Feature Service is created""" - pass - @property - def last_updated_timestamp(self) -> google.protobuf.timestamp_pb2.Timestamp: - """Time where this Feature Service is last updated""" - pass - def __init__(self, - *, - created_timestamp : typing.Optional[google.protobuf.timestamp_pb2.Timestamp] = ..., - last_updated_timestamp : typing.Optional[google.protobuf.timestamp_pb2.Timestamp] = ..., - ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["created_timestamp",b"created_timestamp","last_updated_timestamp",b"last_updated_timestamp"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["created_timestamp",b"created_timestamp","last_updated_timestamp",b"last_updated_timestamp"]) -> None: ... -global___FeatureServiceMeta = FeatureServiceMeta - -class LoggingConfig(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - class FileDestination(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - PATH_FIELD_NUMBER: builtins.int - S3_ENDPOINT_OVERRIDE_FIELD_NUMBER: builtins.int - PARTITION_BY_FIELD_NUMBER: builtins.int - path: typing.Text = ... - s3_endpoint_override: typing.Text = ... - @property - def partition_by(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[typing.Text]: - """column names to use for partitioning""" - pass - def __init__(self, - *, - path : typing.Text = ..., - s3_endpoint_override : typing.Text = ..., - partition_by : typing.Optional[typing.Iterable[typing.Text]] = ..., - ) -> None: ... - def ClearField(self, field_name: typing_extensions.Literal["partition_by",b"partition_by","path",b"path","s3_endpoint_override",b"s3_endpoint_override"]) -> None: ... - - class BigQueryDestination(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - TABLE_REF_FIELD_NUMBER: builtins.int - table_ref: typing.Text = ... - """Full table reference in the form of [project:dataset.table]""" - - def __init__(self, - *, - table_ref : typing.Text = ..., - ) -> None: ... - def ClearField(self, field_name: typing_extensions.Literal["table_ref",b"table_ref"]) -> None: ... - - class RedshiftDestination(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - TABLE_NAME_FIELD_NUMBER: builtins.int - table_name: typing.Text = ... - """Destination table name. ClusterId and database will be taken from an offline store config""" - - def __init__(self, - *, - table_name : typing.Text = ..., - ) -> None: ... - def ClearField(self, field_name: typing_extensions.Literal["table_name",b"table_name"]) -> None: ... - - class AthenaDestination(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - TABLE_NAME_FIELD_NUMBER: builtins.int - table_name: typing.Text = ... - """Destination table name. data_source and database will be taken from an offline store config""" - - def __init__(self, - *, - table_name : typing.Text = ..., - ) -> None: ... - def ClearField(self, field_name: typing_extensions.Literal["table_name",b"table_name"]) -> None: ... - - class SnowflakeDestination(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - TABLE_NAME_FIELD_NUMBER: builtins.int - table_name: typing.Text = ... - """Destination table name. Schema and database will be taken from an offline store config""" - - def __init__(self, - *, - table_name : typing.Text = ..., - ) -> None: ... - def ClearField(self, field_name: typing_extensions.Literal["table_name",b"table_name"]) -> None: ... - - class CustomDestination(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - class ConfigEntry(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - KEY_FIELD_NUMBER: builtins.int - VALUE_FIELD_NUMBER: builtins.int - key: typing.Text = ... - value: typing.Text = ... - def __init__(self, - *, - key : typing.Text = ..., - value : typing.Text = ..., - ) -> None: ... - def ClearField(self, field_name: typing_extensions.Literal["key",b"key","value",b"value"]) -> None: ... - - KIND_FIELD_NUMBER: builtins.int - CONFIG_FIELD_NUMBER: builtins.int - kind: typing.Text = ... - @property - def config(self) -> google.protobuf.internal.containers.ScalarMap[typing.Text, typing.Text]: ... - def __init__(self, - *, - kind : typing.Text = ..., - config : typing.Optional[typing.Mapping[typing.Text, typing.Text]] = ..., - ) -> None: ... - def ClearField(self, field_name: typing_extensions.Literal["config",b"config","kind",b"kind"]) -> None: ... - - SAMPLE_RATE_FIELD_NUMBER: builtins.int - FILE_DESTINATION_FIELD_NUMBER: builtins.int - BIGQUERY_DESTINATION_FIELD_NUMBER: builtins.int - REDSHIFT_DESTINATION_FIELD_NUMBER: builtins.int - SNOWFLAKE_DESTINATION_FIELD_NUMBER: builtins.int - CUSTOM_DESTINATION_FIELD_NUMBER: builtins.int - ATHENA_DESTINATION_FIELD_NUMBER: builtins.int - sample_rate: builtins.float = ... - @property - def file_destination(self) -> global___LoggingConfig.FileDestination: ... - @property - def bigquery_destination(self) -> global___LoggingConfig.BigQueryDestination: ... - @property - def redshift_destination(self) -> global___LoggingConfig.RedshiftDestination: ... - @property - def snowflake_destination(self) -> global___LoggingConfig.SnowflakeDestination: ... - @property - def custom_destination(self) -> global___LoggingConfig.CustomDestination: ... - @property - def athena_destination(self) -> global___LoggingConfig.AthenaDestination: ... - def __init__(self, - *, - sample_rate : builtins.float = ..., - file_destination : typing.Optional[global___LoggingConfig.FileDestination] = ..., - bigquery_destination : typing.Optional[global___LoggingConfig.BigQueryDestination] = ..., - redshift_destination : typing.Optional[global___LoggingConfig.RedshiftDestination] = ..., - snowflake_destination : typing.Optional[global___LoggingConfig.SnowflakeDestination] = ..., - custom_destination : typing.Optional[global___LoggingConfig.CustomDestination] = ..., - athena_destination : typing.Optional[global___LoggingConfig.AthenaDestination] = ..., - ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["athena_destination",b"athena_destination","bigquery_destination",b"bigquery_destination","custom_destination",b"custom_destination","destination",b"destination","file_destination",b"file_destination","redshift_destination",b"redshift_destination","snowflake_destination",b"snowflake_destination"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["athena_destination",b"athena_destination","bigquery_destination",b"bigquery_destination","custom_destination",b"custom_destination","destination",b"destination","file_destination",b"file_destination","redshift_destination",b"redshift_destination","sample_rate",b"sample_rate","snowflake_destination",b"snowflake_destination"]) -> None: ... - def WhichOneof(self, oneof_group: typing_extensions.Literal["destination",b"destination"]) -> typing.Optional[typing_extensions.Literal["file_destination","bigquery_destination","redshift_destination","snowflake_destination","custom_destination","athena_destination"]]: ... -global___LoggingConfig = LoggingConfig diff --git a/sdk/python/feast/protos/feast/core/FeatureService_pb2_grpc.py b/sdk/python/feast/protos/feast/core/FeatureService_pb2_grpc.py deleted file mode 100644 index 2daafffebf..0000000000 --- a/sdk/python/feast/protos/feast/core/FeatureService_pb2_grpc.py +++ /dev/null @@ -1,4 +0,0 @@ -# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! -"""Client and server classes corresponding to protobuf-defined services.""" -import grpc - diff --git a/sdk/python/feast/protos/feast/core/FeatureTable_pb2.py b/sdk/python/feast/protos/feast/core/FeatureTable_pb2.py deleted file mode 100644 index c1539d767b..0000000000 --- a/sdk/python/feast/protos/feast/core/FeatureTable_pb2.py +++ /dev/null @@ -1,39 +0,0 @@ -# -*- coding: utf-8 -*- -# Generated by the protocol buffer compiler. DO NOT EDIT! -# source: feast/core/FeatureTable.proto -"""Generated protocol buffer code.""" -from google.protobuf import descriptor as _descriptor -from google.protobuf import descriptor_pool as _descriptor_pool -from google.protobuf import symbol_database as _symbol_database -from google.protobuf.internal import builder as _builder -# @@protoc_insertion_point(imports) - -_sym_db = _symbol_database.Default() - - -from google.protobuf import duration_pb2 as google_dot_protobuf_dot_duration__pb2 -from google.protobuf import timestamp_pb2 as google_dot_protobuf_dot_timestamp__pb2 -from feast.protos.feast.core import DataSource_pb2 as feast_dot_core_dot_DataSource__pb2 -from feast.protos.feast.core import Feature_pb2 as feast_dot_core_dot_Feature__pb2 - - -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1d\x66\x65\x61st/core/FeatureTable.proto\x12\nfeast.core\x1a\x1egoogle/protobuf/duration.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x1b\x66\x65\x61st/core/DataSource.proto\x1a\x18\x66\x65\x61st/core/Feature.proto\"f\n\x0c\x46\x65\x61tureTable\x12*\n\x04spec\x18\x01 \x01(\x0b\x32\x1c.feast.core.FeatureTableSpec\x12*\n\x04meta\x18\x02 \x01(\x0b\x32\x1c.feast.core.FeatureTableMeta\"\xe2\x02\n\x10\x46\x65\x61tureTableSpec\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0f\n\x07project\x18\t \x01(\t\x12\x10\n\x08\x65ntities\x18\x03 \x03(\t\x12+\n\x08\x66\x65\x61tures\x18\x04 \x03(\x0b\x32\x19.feast.core.FeatureSpecV2\x12\x38\n\x06labels\x18\x05 \x03(\x0b\x32(.feast.core.FeatureTableSpec.LabelsEntry\x12*\n\x07max_age\x18\x06 \x01(\x0b\x32\x19.google.protobuf.Duration\x12,\n\x0c\x62\x61tch_source\x18\x07 \x01(\x0b\x32\x16.feast.core.DataSource\x12-\n\rstream_source\x18\x08 \x01(\x0b\x32\x16.feast.core.DataSource\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\xa5\x01\n\x10\x46\x65\x61tureTableMeta\x12\x35\n\x11\x63reated_timestamp\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12:\n\x16last_updated_timestamp\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x10\n\x08revision\x18\x03 \x01(\x03\x12\x0c\n\x04hash\x18\x04 \x01(\tBV\n\x10\x66\x65\x61st.proto.coreB\x11\x46\x65\x61tureTableProtoZ/github.com/feast-dev/feast/go/protos/feast/coreb\x06proto3') - -_globals = globals() -_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) -_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'feast.core.FeatureTable_pb2', _globals) -if _descriptor._USE_C_DESCRIPTORS == False: - - DESCRIPTOR._options = None - DESCRIPTOR._serialized_options = b'\n\020feast.proto.coreB\021FeatureTableProtoZ/github.com/feast-dev/feast/go/protos/feast/core' - _FEATURETABLESPEC_LABELSENTRY._options = None - _FEATURETABLESPEC_LABELSENTRY._serialized_options = b'8\001' - _globals['_FEATURETABLE']._serialized_start=165 - _globals['_FEATURETABLE']._serialized_end=267 - _globals['_FEATURETABLESPEC']._serialized_start=270 - _globals['_FEATURETABLESPEC']._serialized_end=624 - _globals['_FEATURETABLESPEC_LABELSENTRY']._serialized_start=579 - _globals['_FEATURETABLESPEC_LABELSENTRY']._serialized_end=624 - _globals['_FEATURETABLEMETA']._serialized_start=627 - _globals['_FEATURETABLEMETA']._serialized_end=792 -# @@protoc_insertion_point(module_scope) diff --git a/sdk/python/feast/protos/feast/core/FeatureTable_pb2.pyi b/sdk/python/feast/protos/feast/core/FeatureTable_pb2.pyi deleted file mode 100644 index e9d07e292d..0000000000 --- a/sdk/python/feast/protos/feast/core/FeatureTable_pb2.pyi +++ /dev/null @@ -1,150 +0,0 @@ -""" -@generated by mypy-protobuf. Do not edit manually! -isort:skip_file -""" -import builtins -import feast.core.DataSource_pb2 -import feast.core.Feature_pb2 -import google.protobuf.descriptor -import google.protobuf.duration_pb2 -import google.protobuf.internal.containers -import google.protobuf.message -import google.protobuf.timestamp_pb2 -import typing -import typing_extensions - -DESCRIPTOR: google.protobuf.descriptor.FileDescriptor = ... - -class FeatureTable(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - SPEC_FIELD_NUMBER: builtins.int - META_FIELD_NUMBER: builtins.int - @property - def spec(self) -> global___FeatureTableSpec: - """User-specified specifications of this feature table.""" - pass - @property - def meta(self) -> global___FeatureTableMeta: - """System-populated metadata for this feature table.""" - pass - def __init__(self, - *, - spec : typing.Optional[global___FeatureTableSpec] = ..., - meta : typing.Optional[global___FeatureTableMeta] = ..., - ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["meta",b"meta","spec",b"spec"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["meta",b"meta","spec",b"spec"]) -> None: ... -global___FeatureTable = FeatureTable - -class FeatureTableSpec(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - class LabelsEntry(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - KEY_FIELD_NUMBER: builtins.int - VALUE_FIELD_NUMBER: builtins.int - key: typing.Text = ... - value: typing.Text = ... - def __init__(self, - *, - key : typing.Text = ..., - value : typing.Text = ..., - ) -> None: ... - def ClearField(self, field_name: typing_extensions.Literal["key",b"key","value",b"value"]) -> None: ... - - NAME_FIELD_NUMBER: builtins.int - PROJECT_FIELD_NUMBER: builtins.int - ENTITIES_FIELD_NUMBER: builtins.int - FEATURES_FIELD_NUMBER: builtins.int - LABELS_FIELD_NUMBER: builtins.int - MAX_AGE_FIELD_NUMBER: builtins.int - BATCH_SOURCE_FIELD_NUMBER: builtins.int - STREAM_SOURCE_FIELD_NUMBER: builtins.int - name: typing.Text = ... - """Name of the feature table. Must be unique. Not updated.""" - - project: typing.Text = ... - """Name of Feast project that this feature table belongs to.""" - - @property - def entities(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[typing.Text]: - """List names of entities to associate with the Features defined in this - Feature Table. Not updatable. - """ - pass - @property - def features(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[feast.core.Feature_pb2.FeatureSpecV2]: - """List of features specifications for each feature defined with this feature table.""" - pass - @property - def labels(self) -> google.protobuf.internal.containers.ScalarMap[typing.Text, typing.Text]: - """User defined metadata""" - pass - @property - def max_age(self) -> google.protobuf.duration_pb2.Duration: - """Features in this feature table can only be retrieved from online serving - younger than max age. Age is measured as the duration of time between - the feature's event timestamp and when the feature is retrieved - Feature values outside max age will be returned as unset values and indicated to end user - """ - pass - @property - def batch_source(self) -> feast.core.DataSource_pb2.DataSource: - """Batch/Offline DataSource to source batch/offline feature data. - Only batch DataSource can be specified - (ie source type should start with 'BATCH_') - """ - pass - @property - def stream_source(self) -> feast.core.DataSource_pb2.DataSource: - """Stream/Online DataSource to source stream/online feature data. - Only stream DataSource can be specified - (ie source type should start with 'STREAM_') - """ - pass - def __init__(self, - *, - name : typing.Text = ..., - project : typing.Text = ..., - entities : typing.Optional[typing.Iterable[typing.Text]] = ..., - features : typing.Optional[typing.Iterable[feast.core.Feature_pb2.FeatureSpecV2]] = ..., - labels : typing.Optional[typing.Mapping[typing.Text, typing.Text]] = ..., - max_age : typing.Optional[google.protobuf.duration_pb2.Duration] = ..., - batch_source : typing.Optional[feast.core.DataSource_pb2.DataSource] = ..., - stream_source : typing.Optional[feast.core.DataSource_pb2.DataSource] = ..., - ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["batch_source",b"batch_source","max_age",b"max_age","stream_source",b"stream_source"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["batch_source",b"batch_source","entities",b"entities","features",b"features","labels",b"labels","max_age",b"max_age","name",b"name","project",b"project","stream_source",b"stream_source"]) -> None: ... -global___FeatureTableSpec = FeatureTableSpec - -class FeatureTableMeta(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - CREATED_TIMESTAMP_FIELD_NUMBER: builtins.int - LAST_UPDATED_TIMESTAMP_FIELD_NUMBER: builtins.int - REVISION_FIELD_NUMBER: builtins.int - HASH_FIELD_NUMBER: builtins.int - @property - def created_timestamp(self) -> google.protobuf.timestamp_pb2.Timestamp: - """Time where this Feature Table is created""" - pass - @property - def last_updated_timestamp(self) -> google.protobuf.timestamp_pb2.Timestamp: - """Time where this Feature Table is last updated""" - pass - revision: builtins.int = ... - """Auto incrementing revision no. of this Feature Table""" - - hash: typing.Text = ... - """Hash entities, features, batch_source and stream_source to inform JobService if - jobs should be restarted should hash change - """ - - def __init__(self, - *, - created_timestamp : typing.Optional[google.protobuf.timestamp_pb2.Timestamp] = ..., - last_updated_timestamp : typing.Optional[google.protobuf.timestamp_pb2.Timestamp] = ..., - revision : builtins.int = ..., - hash : typing.Text = ..., - ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["created_timestamp",b"created_timestamp","last_updated_timestamp",b"last_updated_timestamp"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["created_timestamp",b"created_timestamp","hash",b"hash","last_updated_timestamp",b"last_updated_timestamp","revision",b"revision"]) -> None: ... -global___FeatureTableMeta = FeatureTableMeta diff --git a/sdk/python/feast/protos/feast/core/FeatureTable_pb2_grpc.py b/sdk/python/feast/protos/feast/core/FeatureTable_pb2_grpc.py deleted file mode 100644 index 2daafffebf..0000000000 --- a/sdk/python/feast/protos/feast/core/FeatureTable_pb2_grpc.py +++ /dev/null @@ -1,4 +0,0 @@ -# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! -"""Client and server classes corresponding to protobuf-defined services.""" -import grpc - diff --git a/sdk/python/feast/protos/feast/core/FeatureViewProjection_pb2.py b/sdk/python/feast/protos/feast/core/FeatureViewProjection_pb2.py deleted file mode 100644 index 64a38865c9..0000000000 --- a/sdk/python/feast/protos/feast/core/FeatureViewProjection_pb2.py +++ /dev/null @@ -1,32 +0,0 @@ -# -*- coding: utf-8 -*- -# Generated by the protocol buffer compiler. DO NOT EDIT! -# source: feast/core/FeatureViewProjection.proto -"""Generated protocol buffer code.""" -from google.protobuf import descriptor as _descriptor -from google.protobuf import descriptor_pool as _descriptor_pool -from google.protobuf import symbol_database as _symbol_database -from google.protobuf.internal import builder as _builder -# @@protoc_insertion_point(imports) - -_sym_db = _symbol_database.Default() - - -from feast.protos.feast.core import Feature_pb2 as feast_dot_core_dot_Feature__pb2 - - -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n&feast/core/FeatureViewProjection.proto\x12\nfeast.core\x1a\x18\x66\x65\x61st/core/Feature.proto\"\x83\x02\n\x15\x46\x65\x61tureViewProjection\x12\x19\n\x11\x66\x65\x61ture_view_name\x18\x01 \x01(\t\x12\x1f\n\x17\x66\x65\x61ture_view_name_alias\x18\x03 \x01(\t\x12\x32\n\x0f\x66\x65\x61ture_columns\x18\x02 \x03(\x0b\x32\x19.feast.core.FeatureSpecV2\x12G\n\x0cjoin_key_map\x18\x04 \x03(\x0b\x32\x31.feast.core.FeatureViewProjection.JoinKeyMapEntry\x1a\x31\n\x0fJoinKeyMapEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x42Z\n\x10\x66\x65\x61st.proto.coreB\x15\x46\x65\x61tureReferenceProtoZ/github.com/feast-dev/feast/go/protos/feast/coreb\x06proto3') - -_globals = globals() -_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) -_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'feast.core.FeatureViewProjection_pb2', _globals) -if _descriptor._USE_C_DESCRIPTORS == False: - - DESCRIPTOR._options = None - DESCRIPTOR._serialized_options = b'\n\020feast.proto.coreB\025FeatureReferenceProtoZ/github.com/feast-dev/feast/go/protos/feast/core' - _FEATUREVIEWPROJECTION_JOINKEYMAPENTRY._options = None - _FEATUREVIEWPROJECTION_JOINKEYMAPENTRY._serialized_options = b'8\001' - _globals['_FEATUREVIEWPROJECTION']._serialized_start=81 - _globals['_FEATUREVIEWPROJECTION']._serialized_end=340 - _globals['_FEATUREVIEWPROJECTION_JOINKEYMAPENTRY']._serialized_start=291 - _globals['_FEATUREVIEWPROJECTION_JOINKEYMAPENTRY']._serialized_end=340 -# @@protoc_insertion_point(module_scope) diff --git a/sdk/python/feast/protos/feast/core/FeatureViewProjection_pb2.pyi b/sdk/python/feast/protos/feast/core/FeatureViewProjection_pb2.pyi deleted file mode 100644 index 5471c3fd3a..0000000000 --- a/sdk/python/feast/protos/feast/core/FeatureViewProjection_pb2.pyi +++ /dev/null @@ -1,59 +0,0 @@ -""" -@generated by mypy-protobuf. Do not edit manually! -isort:skip_file -""" -import builtins -import feast.core.Feature_pb2 -import google.protobuf.descriptor -import google.protobuf.internal.containers -import google.protobuf.message -import typing -import typing_extensions - -DESCRIPTOR: google.protobuf.descriptor.FileDescriptor = ... - -class FeatureViewProjection(google.protobuf.message.Message): - """A projection to be applied on top of a FeatureView. - Contains the modifications to a FeatureView such as the features subset to use. - """ - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - class JoinKeyMapEntry(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - KEY_FIELD_NUMBER: builtins.int - VALUE_FIELD_NUMBER: builtins.int - key: typing.Text = ... - value: typing.Text = ... - def __init__(self, - *, - key : typing.Text = ..., - value : typing.Text = ..., - ) -> None: ... - def ClearField(self, field_name: typing_extensions.Literal["key",b"key","value",b"value"]) -> None: ... - - FEATURE_VIEW_NAME_FIELD_NUMBER: builtins.int - FEATURE_VIEW_NAME_ALIAS_FIELD_NUMBER: builtins.int - FEATURE_COLUMNS_FIELD_NUMBER: builtins.int - JOIN_KEY_MAP_FIELD_NUMBER: builtins.int - feature_view_name: typing.Text = ... - """The feature view name""" - - feature_view_name_alias: typing.Text = ... - """Alias for feature view name""" - - @property - def feature_columns(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[feast.core.Feature_pb2.FeatureSpecV2]: - """The features of the feature view that are a part of the feature reference.""" - pass - @property - def join_key_map(self) -> google.protobuf.internal.containers.ScalarMap[typing.Text, typing.Text]: - """Map for entity join_key overrides of feature data entity join_key to entity data join_key""" - pass - def __init__(self, - *, - feature_view_name : typing.Text = ..., - feature_view_name_alias : typing.Text = ..., - feature_columns : typing.Optional[typing.Iterable[feast.core.Feature_pb2.FeatureSpecV2]] = ..., - join_key_map : typing.Optional[typing.Mapping[typing.Text, typing.Text]] = ..., - ) -> None: ... - def ClearField(self, field_name: typing_extensions.Literal["feature_columns",b"feature_columns","feature_view_name",b"feature_view_name","feature_view_name_alias",b"feature_view_name_alias","join_key_map",b"join_key_map"]) -> None: ... -global___FeatureViewProjection = FeatureViewProjection diff --git a/sdk/python/feast/protos/feast/core/FeatureViewProjection_pb2_grpc.py b/sdk/python/feast/protos/feast/core/FeatureViewProjection_pb2_grpc.py deleted file mode 100644 index 2daafffebf..0000000000 --- a/sdk/python/feast/protos/feast/core/FeatureViewProjection_pb2_grpc.py +++ /dev/null @@ -1,4 +0,0 @@ -# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! -"""Client and server classes corresponding to protobuf-defined services.""" -import grpc - diff --git a/sdk/python/feast/protos/feast/core/FeatureView_pb2.py b/sdk/python/feast/protos/feast/core/FeatureView_pb2.py deleted file mode 100644 index f665f05817..0000000000 --- a/sdk/python/feast/protos/feast/core/FeatureView_pb2.py +++ /dev/null @@ -1,41 +0,0 @@ -# -*- coding: utf-8 -*- -# Generated by the protocol buffer compiler. DO NOT EDIT! -# source: feast/core/FeatureView.proto -"""Generated protocol buffer code.""" -from google.protobuf import descriptor as _descriptor -from google.protobuf import descriptor_pool as _descriptor_pool -from google.protobuf import symbol_database as _symbol_database -from google.protobuf.internal import builder as _builder -# @@protoc_insertion_point(imports) - -_sym_db = _symbol_database.Default() - - -from google.protobuf import duration_pb2 as google_dot_protobuf_dot_duration__pb2 -from google.protobuf import timestamp_pb2 as google_dot_protobuf_dot_timestamp__pb2 -from feast.protos.feast.core import DataSource_pb2 as feast_dot_core_dot_DataSource__pb2 -from feast.protos.feast.core import Feature_pb2 as feast_dot_core_dot_Feature__pb2 - - -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1c\x66\x65\x61st/core/FeatureView.proto\x12\nfeast.core\x1a\x1egoogle/protobuf/duration.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x1b\x66\x65\x61st/core/DataSource.proto\x1a\x18\x66\x65\x61st/core/Feature.proto\"c\n\x0b\x46\x65\x61tureView\x12)\n\x04spec\x18\x01 \x01(\x0b\x32\x1b.feast.core.FeatureViewSpec\x12)\n\x04meta\x18\x02 \x01(\x0b\x32\x1b.feast.core.FeatureViewMeta\"\xbd\x03\n\x0f\x46\x65\x61tureViewSpec\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0f\n\x07project\x18\x02 \x01(\t\x12\x10\n\x08\x65ntities\x18\x03 \x03(\t\x12+\n\x08\x66\x65\x61tures\x18\x04 \x03(\x0b\x32\x19.feast.core.FeatureSpecV2\x12\x31\n\x0e\x65ntity_columns\x18\x0c \x03(\x0b\x32\x19.feast.core.FeatureSpecV2\x12\x13\n\x0b\x64\x65scription\x18\n \x01(\t\x12\x33\n\x04tags\x18\x05 \x03(\x0b\x32%.feast.core.FeatureViewSpec.TagsEntry\x12\r\n\x05owner\x18\x0b \x01(\t\x12&\n\x03ttl\x18\x06 \x01(\x0b\x32\x19.google.protobuf.Duration\x12,\n\x0c\x62\x61tch_source\x18\x07 \x01(\x0b\x32\x16.feast.core.DataSource\x12-\n\rstream_source\x18\t \x01(\x0b\x32\x16.feast.core.DataSource\x12\x0e\n\x06online\x18\x08 \x01(\x08\x1a+\n\tTagsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\xcc\x01\n\x0f\x46\x65\x61tureViewMeta\x12\x35\n\x11\x63reated_timestamp\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12:\n\x16last_updated_timestamp\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x46\n\x19materialization_intervals\x18\x03 \x03(\x0b\x32#.feast.core.MaterializationInterval\"w\n\x17MaterializationInterval\x12.\n\nstart_time\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12,\n\x08\x65nd_time\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.TimestampBU\n\x10\x66\x65\x61st.proto.coreB\x10\x46\x65\x61tureViewProtoZ/github.com/feast-dev/feast/go/protos/feast/coreb\x06proto3') - -_globals = globals() -_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) -_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'feast.core.FeatureView_pb2', _globals) -if _descriptor._USE_C_DESCRIPTORS == False: - - DESCRIPTOR._options = None - DESCRIPTOR._serialized_options = b'\n\020feast.proto.coreB\020FeatureViewProtoZ/github.com/feast-dev/feast/go/protos/feast/core' - _FEATUREVIEWSPEC_TAGSENTRY._options = None - _FEATUREVIEWSPEC_TAGSENTRY._serialized_options = b'8\001' - _globals['_FEATUREVIEW']._serialized_start=164 - _globals['_FEATUREVIEW']._serialized_end=263 - _globals['_FEATUREVIEWSPEC']._serialized_start=266 - _globals['_FEATUREVIEWSPEC']._serialized_end=711 - _globals['_FEATUREVIEWSPEC_TAGSENTRY']._serialized_start=668 - _globals['_FEATUREVIEWSPEC_TAGSENTRY']._serialized_end=711 - _globals['_FEATUREVIEWMETA']._serialized_start=714 - _globals['_FEATUREVIEWMETA']._serialized_end=918 - _globals['_MATERIALIZATIONINTERVAL']._serialized_start=920 - _globals['_MATERIALIZATIONINTERVAL']._serialized_end=1039 -# @@protoc_insertion_point(module_scope) diff --git a/sdk/python/feast/protos/feast/core/FeatureView_pb2.pyi b/sdk/python/feast/protos/feast/core/FeatureView_pb2.pyi deleted file mode 100644 index bbea7d07ef..0000000000 --- a/sdk/python/feast/protos/feast/core/FeatureView_pb2.pyi +++ /dev/null @@ -1,177 +0,0 @@ -""" -@generated by mypy-protobuf. Do not edit manually! -isort:skip_file -""" -import builtins -import feast.core.DataSource_pb2 -import feast.core.Feature_pb2 -import google.protobuf.descriptor -import google.protobuf.duration_pb2 -import google.protobuf.internal.containers -import google.protobuf.message -import google.protobuf.timestamp_pb2 -import typing -import typing_extensions - -DESCRIPTOR: google.protobuf.descriptor.FileDescriptor = ... - -class FeatureView(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - SPEC_FIELD_NUMBER: builtins.int - META_FIELD_NUMBER: builtins.int - @property - def spec(self) -> global___FeatureViewSpec: - """User-specified specifications of this feature view.""" - pass - @property - def meta(self) -> global___FeatureViewMeta: - """System-populated metadata for this feature view.""" - pass - def __init__(self, - *, - spec : typing.Optional[global___FeatureViewSpec] = ..., - meta : typing.Optional[global___FeatureViewMeta] = ..., - ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["meta",b"meta","spec",b"spec"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["meta",b"meta","spec",b"spec"]) -> None: ... -global___FeatureView = FeatureView - -class FeatureViewSpec(google.protobuf.message.Message): - """Next available id: 13 - TODO(adchia): refactor common fields from this and ODFV into separate metadata proto - """ - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - class TagsEntry(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - KEY_FIELD_NUMBER: builtins.int - VALUE_FIELD_NUMBER: builtins.int - key: typing.Text = ... - value: typing.Text = ... - def __init__(self, - *, - key : typing.Text = ..., - value : typing.Text = ..., - ) -> None: ... - def ClearField(self, field_name: typing_extensions.Literal["key",b"key","value",b"value"]) -> None: ... - - NAME_FIELD_NUMBER: builtins.int - PROJECT_FIELD_NUMBER: builtins.int - ENTITIES_FIELD_NUMBER: builtins.int - FEATURES_FIELD_NUMBER: builtins.int - ENTITY_COLUMNS_FIELD_NUMBER: builtins.int - DESCRIPTION_FIELD_NUMBER: builtins.int - TAGS_FIELD_NUMBER: builtins.int - OWNER_FIELD_NUMBER: builtins.int - TTL_FIELD_NUMBER: builtins.int - BATCH_SOURCE_FIELD_NUMBER: builtins.int - STREAM_SOURCE_FIELD_NUMBER: builtins.int - ONLINE_FIELD_NUMBER: builtins.int - name: typing.Text = ... - """Name of the feature view. Must be unique. Not updated.""" - - project: typing.Text = ... - """Name of Feast project that this feature view belongs to.""" - - @property - def entities(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[typing.Text]: - """List of names of entities associated with this feature view.""" - pass - @property - def features(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[feast.core.Feature_pb2.FeatureSpecV2]: - """List of specifications for each feature defined as part of this feature view.""" - pass - @property - def entity_columns(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[feast.core.Feature_pb2.FeatureSpecV2]: - """List of specifications for each entity defined as part of this feature view.""" - pass - description: typing.Text = ... - """Description of the feature view.""" - - @property - def tags(self) -> google.protobuf.internal.containers.ScalarMap[typing.Text, typing.Text]: - """User defined metadata""" - pass - owner: typing.Text = ... - """Owner of the feature view.""" - - @property - def ttl(self) -> google.protobuf.duration_pb2.Duration: - """Features in this feature view can only be retrieved from online serving - younger than ttl. Ttl is measured as the duration of time between - the feature's event timestamp and when the feature is retrieved - Feature values outside ttl will be returned as unset values and indicated to end user - """ - pass - @property - def batch_source(self) -> feast.core.DataSource_pb2.DataSource: - """Batch/Offline DataSource where this view can retrieve offline feature data.""" - pass - @property - def stream_source(self) -> feast.core.DataSource_pb2.DataSource: - """Streaming DataSource from where this view can consume "online" feature data.""" - pass - online: builtins.bool = ... - """Whether these features should be served online or not""" - - def __init__(self, - *, - name : typing.Text = ..., - project : typing.Text = ..., - entities : typing.Optional[typing.Iterable[typing.Text]] = ..., - features : typing.Optional[typing.Iterable[feast.core.Feature_pb2.FeatureSpecV2]] = ..., - entity_columns : typing.Optional[typing.Iterable[feast.core.Feature_pb2.FeatureSpecV2]] = ..., - description : typing.Text = ..., - tags : typing.Optional[typing.Mapping[typing.Text, typing.Text]] = ..., - owner : typing.Text = ..., - ttl : typing.Optional[google.protobuf.duration_pb2.Duration] = ..., - batch_source : typing.Optional[feast.core.DataSource_pb2.DataSource] = ..., - stream_source : typing.Optional[feast.core.DataSource_pb2.DataSource] = ..., - online : builtins.bool = ..., - ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["batch_source",b"batch_source","stream_source",b"stream_source","ttl",b"ttl"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["batch_source",b"batch_source","description",b"description","entities",b"entities","entity_columns",b"entity_columns","features",b"features","name",b"name","online",b"online","owner",b"owner","project",b"project","stream_source",b"stream_source","tags",b"tags","ttl",b"ttl"]) -> None: ... -global___FeatureViewSpec = FeatureViewSpec - -class FeatureViewMeta(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - CREATED_TIMESTAMP_FIELD_NUMBER: builtins.int - LAST_UPDATED_TIMESTAMP_FIELD_NUMBER: builtins.int - MATERIALIZATION_INTERVALS_FIELD_NUMBER: builtins.int - @property - def created_timestamp(self) -> google.protobuf.timestamp_pb2.Timestamp: - """Time where this Feature View is created""" - pass - @property - def last_updated_timestamp(self) -> google.protobuf.timestamp_pb2.Timestamp: - """Time where this Feature View is last updated""" - pass - @property - def materialization_intervals(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___MaterializationInterval]: - """List of pairs (start_time, end_time) for which this feature view has been materialized.""" - pass - def __init__(self, - *, - created_timestamp : typing.Optional[google.protobuf.timestamp_pb2.Timestamp] = ..., - last_updated_timestamp : typing.Optional[google.protobuf.timestamp_pb2.Timestamp] = ..., - materialization_intervals : typing.Optional[typing.Iterable[global___MaterializationInterval]] = ..., - ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["created_timestamp",b"created_timestamp","last_updated_timestamp",b"last_updated_timestamp"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["created_timestamp",b"created_timestamp","last_updated_timestamp",b"last_updated_timestamp","materialization_intervals",b"materialization_intervals"]) -> None: ... -global___FeatureViewMeta = FeatureViewMeta - -class MaterializationInterval(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - START_TIME_FIELD_NUMBER: builtins.int - END_TIME_FIELD_NUMBER: builtins.int - @property - def start_time(self) -> google.protobuf.timestamp_pb2.Timestamp: ... - @property - def end_time(self) -> google.protobuf.timestamp_pb2.Timestamp: ... - def __init__(self, - *, - start_time : typing.Optional[google.protobuf.timestamp_pb2.Timestamp] = ..., - end_time : typing.Optional[google.protobuf.timestamp_pb2.Timestamp] = ..., - ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["end_time",b"end_time","start_time",b"start_time"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["end_time",b"end_time","start_time",b"start_time"]) -> None: ... -global___MaterializationInterval = MaterializationInterval diff --git a/sdk/python/feast/protos/feast/core/FeatureView_pb2_grpc.py b/sdk/python/feast/protos/feast/core/FeatureView_pb2_grpc.py deleted file mode 100644 index 2daafffebf..0000000000 --- a/sdk/python/feast/protos/feast/core/FeatureView_pb2_grpc.py +++ /dev/null @@ -1,4 +0,0 @@ -# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! -"""Client and server classes corresponding to protobuf-defined services.""" -import grpc - diff --git a/sdk/python/feast/protos/feast/core/Feature_pb2.py b/sdk/python/feast/protos/feast/core/Feature_pb2.py deleted file mode 100644 index 1fb051576a..0000000000 --- a/sdk/python/feast/protos/feast/core/Feature_pb2.py +++ /dev/null @@ -1,32 +0,0 @@ -# -*- coding: utf-8 -*- -# Generated by the protocol buffer compiler. DO NOT EDIT! -# source: feast/core/Feature.proto -"""Generated protocol buffer code.""" -from google.protobuf import descriptor as _descriptor -from google.protobuf import descriptor_pool as _descriptor_pool -from google.protobuf import symbol_database as _symbol_database -from google.protobuf.internal import builder as _builder -# @@protoc_insertion_point(imports) - -_sym_db = _symbol_database.Default() - - -from feast.protos.feast.types import Value_pb2 as feast_dot_types_dot_Value__pb2 - - -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x18\x66\x65\x61st/core/Feature.proto\x12\nfeast.core\x1a\x17\x66\x65\x61st/types/Value.proto\"\xc3\x01\n\rFeatureSpecV2\x12\x0c\n\x04name\x18\x01 \x01(\t\x12/\n\nvalue_type\x18\x02 \x01(\x0e\x32\x1b.feast.types.ValueType.Enum\x12\x31\n\x04tags\x18\x03 \x03(\x0b\x32#.feast.core.FeatureSpecV2.TagsEntry\x12\x13\n\x0b\x64\x65scription\x18\x04 \x01(\t\x1a+\n\tTagsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x42Q\n\x10\x66\x65\x61st.proto.coreB\x0c\x46\x65\x61tureProtoZ/github.com/feast-dev/feast/go/protos/feast/coreb\x06proto3') - -_globals = globals() -_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) -_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'feast.core.Feature_pb2', _globals) -if _descriptor._USE_C_DESCRIPTORS == False: - - DESCRIPTOR._options = None - DESCRIPTOR._serialized_options = b'\n\020feast.proto.coreB\014FeatureProtoZ/github.com/feast-dev/feast/go/protos/feast/core' - _FEATURESPECV2_TAGSENTRY._options = None - _FEATURESPECV2_TAGSENTRY._serialized_options = b'8\001' - _globals['_FEATURESPECV2']._serialized_start=66 - _globals['_FEATURESPECV2']._serialized_end=261 - _globals['_FEATURESPECV2_TAGSENTRY']._serialized_start=218 - _globals['_FEATURESPECV2_TAGSENTRY']._serialized_end=261 -# @@protoc_insertion_point(module_scope) diff --git a/sdk/python/feast/protos/feast/core/Feature_pb2.pyi b/sdk/python/feast/protos/feast/core/Feature_pb2.pyi deleted file mode 100644 index c18a966c8a..0000000000 --- a/sdk/python/feast/protos/feast/core/Feature_pb2.pyi +++ /dev/null @@ -1,57 +0,0 @@ -""" -@generated by mypy-protobuf. Do not edit manually! -isort:skip_file -""" -import builtins -import feast.types.Value_pb2 -import google.protobuf.descriptor -import google.protobuf.internal.containers -import google.protobuf.message -import typing -import typing_extensions - -DESCRIPTOR: google.protobuf.descriptor.FileDescriptor = ... - -class FeatureSpecV2(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - class TagsEntry(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - KEY_FIELD_NUMBER: builtins.int - VALUE_FIELD_NUMBER: builtins.int - key: typing.Text = ... - value: typing.Text = ... - def __init__(self, - *, - key : typing.Text = ..., - value : typing.Text = ..., - ) -> None: ... - def ClearField(self, field_name: typing_extensions.Literal["key",b"key","value",b"value"]) -> None: ... - - NAME_FIELD_NUMBER: builtins.int - VALUE_TYPE_FIELD_NUMBER: builtins.int - TAGS_FIELD_NUMBER: builtins.int - DESCRIPTION_FIELD_NUMBER: builtins.int - name: typing.Text = ... - """Name of the feature. Not updatable.""" - - value_type: feast.types.Value_pb2.ValueType.Enum.ValueType = ... - """Value type of the feature. Not updatable.""" - - @property - def tags(self) -> google.protobuf.internal.containers.ScalarMap[typing.Text, typing.Text]: - """Tags for user defined metadata on a feature""" - pass - description: typing.Text = ... - """Description of the feature. - - """ - - def __init__(self, - *, - name : typing.Text = ..., - value_type : feast.types.Value_pb2.ValueType.Enum.ValueType = ..., - tags : typing.Optional[typing.Mapping[typing.Text, typing.Text]] = ..., - description : typing.Text = ..., - ) -> None: ... - def ClearField(self, field_name: typing_extensions.Literal["description",b"description","name",b"name","tags",b"tags","value_type",b"value_type"]) -> None: ... -global___FeatureSpecV2 = FeatureSpecV2 diff --git a/sdk/python/feast/protos/feast/core/Feature_pb2_grpc.py b/sdk/python/feast/protos/feast/core/Feature_pb2_grpc.py deleted file mode 100644 index 2daafffebf..0000000000 --- a/sdk/python/feast/protos/feast/core/Feature_pb2_grpc.py +++ /dev/null @@ -1,4 +0,0 @@ -# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! -"""Client and server classes corresponding to protobuf-defined services.""" -import grpc - diff --git a/sdk/python/feast/protos/feast/core/InfraObject_pb2.py b/sdk/python/feast/protos/feast/core/InfraObject_pb2.py deleted file mode 100644 index a951e34b09..0000000000 --- a/sdk/python/feast/protos/feast/core/InfraObject_pb2.py +++ /dev/null @@ -1,34 +0,0 @@ -# -*- coding: utf-8 -*- -# Generated by the protocol buffer compiler. DO NOT EDIT! -# source: feast/core/InfraObject.proto -"""Generated protocol buffer code.""" -from google.protobuf import descriptor as _descriptor -from google.protobuf import descriptor_pool as _descriptor_pool -from google.protobuf import symbol_database as _symbol_database -from google.protobuf.internal import builder as _builder -# @@protoc_insertion_point(imports) - -_sym_db = _symbol_database.Default() - - -from feast.protos.feast.core import DatastoreTable_pb2 as feast_dot_core_dot_DatastoreTable__pb2 -from feast.protos.feast.core import DynamoDBTable_pb2 as feast_dot_core_dot_DynamoDBTable__pb2 -from feast.protos.feast.core import SqliteTable_pb2 as feast_dot_core_dot_SqliteTable__pb2 - - -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1c\x66\x65\x61st/core/InfraObject.proto\x12\nfeast.core\x1a\x1f\x66\x65\x61st/core/DatastoreTable.proto\x1a\x1e\x66\x65\x61st/core/DynamoDBTable.proto\x1a\x1c\x66\x65\x61st/core/SqliteTable.proto\"7\n\x05Infra\x12.\n\rinfra_objects\x18\x01 \x03(\x0b\x32\x17.feast.core.InfraObject\"\xb6\x02\n\x0bInfraObject\x12\x1f\n\x17infra_object_class_type\x18\x01 \x01(\t\x12\x33\n\x0e\x64ynamodb_table\x18\x02 \x01(\x0b\x32\x19.feast.core.DynamoDBTableH\x00\x12\x35\n\x0f\x64\x61tastore_table\x18\x03 \x01(\x0b\x32\x1a.feast.core.DatastoreTableH\x00\x12/\n\x0csqlite_table\x18\x04 \x01(\x0b\x32\x17.feast.core.SqliteTableH\x00\x12;\n\x0c\x63ustom_infra\x18\x64 \x01(\x0b\x32#.feast.core.InfraObject.CustomInfraH\x00\x1a\x1c\n\x0b\x43ustomInfra\x12\r\n\x05\x66ield\x18\x01 \x01(\x0c\x42\x0e\n\x0cinfra_objectBU\n\x10\x66\x65\x61st.proto.coreB\x10InfraObjectProtoZ/github.com/feast-dev/feast/go/protos/feast/coreb\x06proto3') - -_globals = globals() -_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) -_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'feast.core.InfraObject_pb2', _globals) -if _descriptor._USE_C_DESCRIPTORS == False: - - DESCRIPTOR._options = None - DESCRIPTOR._serialized_options = b'\n\020feast.proto.coreB\020InfraObjectProtoZ/github.com/feast-dev/feast/go/protos/feast/core' - _globals['_INFRA']._serialized_start=139 - _globals['_INFRA']._serialized_end=194 - _globals['_INFRAOBJECT']._serialized_start=197 - _globals['_INFRAOBJECT']._serialized_end=507 - _globals['_INFRAOBJECT_CUSTOMINFRA']._serialized_start=463 - _globals['_INFRAOBJECT_CUSTOMINFRA']._serialized_end=491 -# @@protoc_insertion_point(module_scope) diff --git a/sdk/python/feast/protos/feast/core/InfraObject_pb2.pyi b/sdk/python/feast/protos/feast/core/InfraObject_pb2.pyi deleted file mode 100644 index 9f7b641a57..0000000000 --- a/sdk/python/feast/protos/feast/core/InfraObject_pb2.pyi +++ /dev/null @@ -1,73 +0,0 @@ -""" -@generated by mypy-protobuf. Do not edit manually! -isort:skip_file -""" -import builtins -import feast.core.DatastoreTable_pb2 -import feast.core.DynamoDBTable_pb2 -import feast.core.SqliteTable_pb2 -import google.protobuf.descriptor -import google.protobuf.internal.containers -import google.protobuf.message -import typing -import typing_extensions - -DESCRIPTOR: google.protobuf.descriptor.FileDescriptor = ... - -class Infra(google.protobuf.message.Message): - """Represents a set of infrastructure objects managed by Feast""" - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - INFRA_OBJECTS_FIELD_NUMBER: builtins.int - @property - def infra_objects(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___InfraObject]: - """List of infrastructure objects managed by Feast""" - pass - def __init__(self, - *, - infra_objects : typing.Optional[typing.Iterable[global___InfraObject]] = ..., - ) -> None: ... - def ClearField(self, field_name: typing_extensions.Literal["infra_objects",b"infra_objects"]) -> None: ... -global___Infra = Infra - -class InfraObject(google.protobuf.message.Message): - """Represents a single infrastructure object managed by Feast""" - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - class CustomInfra(google.protobuf.message.Message): - """Allows for custom infra objects to be added""" - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - FIELD_FIELD_NUMBER: builtins.int - field: builtins.bytes = ... - def __init__(self, - *, - field : builtins.bytes = ..., - ) -> None: ... - def ClearField(self, field_name: typing_extensions.Literal["field",b"field"]) -> None: ... - - INFRA_OBJECT_CLASS_TYPE_FIELD_NUMBER: builtins.int - DYNAMODB_TABLE_FIELD_NUMBER: builtins.int - DATASTORE_TABLE_FIELD_NUMBER: builtins.int - SQLITE_TABLE_FIELD_NUMBER: builtins.int - CUSTOM_INFRA_FIELD_NUMBER: builtins.int - infra_object_class_type: typing.Text = ... - """Represents the Python class for the infrastructure object""" - - @property - def dynamodb_table(self) -> feast.core.DynamoDBTable_pb2.DynamoDBTable: ... - @property - def datastore_table(self) -> feast.core.DatastoreTable_pb2.DatastoreTable: ... - @property - def sqlite_table(self) -> feast.core.SqliteTable_pb2.SqliteTable: ... - @property - def custom_infra(self) -> global___InfraObject.CustomInfra: ... - def __init__(self, - *, - infra_object_class_type : typing.Text = ..., - dynamodb_table : typing.Optional[feast.core.DynamoDBTable_pb2.DynamoDBTable] = ..., - datastore_table : typing.Optional[feast.core.DatastoreTable_pb2.DatastoreTable] = ..., - sqlite_table : typing.Optional[feast.core.SqliteTable_pb2.SqliteTable] = ..., - custom_infra : typing.Optional[global___InfraObject.CustomInfra] = ..., - ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["custom_infra",b"custom_infra","datastore_table",b"datastore_table","dynamodb_table",b"dynamodb_table","infra_object",b"infra_object","sqlite_table",b"sqlite_table"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["custom_infra",b"custom_infra","datastore_table",b"datastore_table","dynamodb_table",b"dynamodb_table","infra_object",b"infra_object","infra_object_class_type",b"infra_object_class_type","sqlite_table",b"sqlite_table"]) -> None: ... - def WhichOneof(self, oneof_group: typing_extensions.Literal["infra_object",b"infra_object"]) -> typing.Optional[typing_extensions.Literal["dynamodb_table","datastore_table","sqlite_table","custom_infra"]]: ... -global___InfraObject = InfraObject diff --git a/sdk/python/feast/protos/feast/core/InfraObject_pb2_grpc.py b/sdk/python/feast/protos/feast/core/InfraObject_pb2_grpc.py deleted file mode 100644 index 2daafffebf..0000000000 --- a/sdk/python/feast/protos/feast/core/InfraObject_pb2_grpc.py +++ /dev/null @@ -1,4 +0,0 @@ -# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! -"""Client and server classes corresponding to protobuf-defined services.""" -import grpc - diff --git a/sdk/python/feast/protos/feast/core/OnDemandFeatureView_pb2.py b/sdk/python/feast/protos/feast/core/OnDemandFeatureView_pb2.py deleted file mode 100644 index e859cb4b0f..0000000000 --- a/sdk/python/feast/protos/feast/core/OnDemandFeatureView_pb2.py +++ /dev/null @@ -1,48 +0,0 @@ -# -*- coding: utf-8 -*- -# Generated by the protocol buffer compiler. DO NOT EDIT! -# source: feast/core/OnDemandFeatureView.proto -"""Generated protocol buffer code.""" -from google.protobuf import descriptor as _descriptor -from google.protobuf import descriptor_pool as _descriptor_pool -from google.protobuf import symbol_database as _symbol_database -from google.protobuf.internal import builder as _builder -# @@protoc_insertion_point(imports) - -_sym_db = _symbol_database.Default() - - -from google.protobuf import timestamp_pb2 as google_dot_protobuf_dot_timestamp__pb2 -from feast.protos.feast.core import FeatureView_pb2 as feast_dot_core_dot_FeatureView__pb2 -from feast.protos.feast.core import FeatureViewProjection_pb2 as feast_dot_core_dot_FeatureViewProjection__pb2 -from feast.protos.feast.core import Feature_pb2 as feast_dot_core_dot_Feature__pb2 -from feast.protos.feast.core import DataSource_pb2 as feast_dot_core_dot_DataSource__pb2 - - -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n$feast/core/OnDemandFeatureView.proto\x12\nfeast.core\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x1c\x66\x65\x61st/core/FeatureView.proto\x1a&feast/core/FeatureViewProjection.proto\x1a\x18\x66\x65\x61st/core/Feature.proto\x1a\x1b\x66\x65\x61st/core/DataSource.proto\"{\n\x13OnDemandFeatureView\x12\x31\n\x04spec\x18\x01 \x01(\x0b\x32#.feast.core.OnDemandFeatureViewSpec\x12\x31\n\x04meta\x18\x02 \x01(\x0b\x32#.feast.core.OnDemandFeatureViewMeta\"\xc2\x03\n\x17OnDemandFeatureViewSpec\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0f\n\x07project\x18\x02 \x01(\t\x12+\n\x08\x66\x65\x61tures\x18\x03 \x03(\x0b\x32\x19.feast.core.FeatureSpecV2\x12\x41\n\x07sources\x18\x04 \x03(\x0b\x32\x30.feast.core.OnDemandFeatureViewSpec.SourcesEntry\x12>\n\x15user_defined_function\x18\x05 \x01(\x0b\x32\x1f.feast.core.UserDefinedFunction\x12\x13\n\x0b\x64\x65scription\x18\x06 \x01(\t\x12;\n\x04tags\x18\x07 \x03(\x0b\x32-.feast.core.OnDemandFeatureViewSpec.TagsEntry\x12\r\n\x05owner\x18\x08 \x01(\t\x1aJ\n\x0cSourcesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12)\n\x05value\x18\x02 \x01(\x0b\x32\x1a.feast.core.OnDemandSource:\x02\x38\x01\x1a+\n\tTagsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\x8c\x01\n\x17OnDemandFeatureViewMeta\x12\x35\n\x11\x63reated_timestamp\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12:\n\x16last_updated_timestamp\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\"\xc8\x01\n\x0eOnDemandSource\x12/\n\x0c\x66\x65\x61ture_view\x18\x01 \x01(\x0b\x32\x17.feast.core.FeatureViewH\x00\x12\x44\n\x17\x66\x65\x61ture_view_projection\x18\x03 \x01(\x0b\x32!.feast.core.FeatureViewProjectionH\x00\x12\x35\n\x13request_data_source\x18\x02 \x01(\x0b\x32\x16.feast.core.DataSourceH\x00\x42\x08\n\x06source\"D\n\x13UserDefinedFunction\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0c\n\x04\x62ody\x18\x02 \x01(\x0c\x12\x11\n\tbody_text\x18\x03 \x01(\tB]\n\x10\x66\x65\x61st.proto.coreB\x18OnDemandFeatureViewProtoZ/github.com/feast-dev/feast/go/protos/feast/coreb\x06proto3') - -_globals = globals() -_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) -_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'feast.core.OnDemandFeatureView_pb2', _globals) -if _descriptor._USE_C_DESCRIPTORS == False: - - DESCRIPTOR._options = None - DESCRIPTOR._serialized_options = b'\n\020feast.proto.coreB\030OnDemandFeatureViewProtoZ/github.com/feast-dev/feast/go/protos/feast/core' - _ONDEMANDFEATUREVIEWSPEC_SOURCESENTRY._options = None - _ONDEMANDFEATUREVIEWSPEC_SOURCESENTRY._serialized_options = b'8\001' - _ONDEMANDFEATUREVIEWSPEC_TAGSENTRY._options = None - _ONDEMANDFEATUREVIEWSPEC_TAGSENTRY._serialized_options = b'8\001' - _globals['_ONDEMANDFEATUREVIEW']._serialized_start=210 - _globals['_ONDEMANDFEATUREVIEW']._serialized_end=333 - _globals['_ONDEMANDFEATUREVIEWSPEC']._serialized_start=336 - _globals['_ONDEMANDFEATUREVIEWSPEC']._serialized_end=786 - _globals['_ONDEMANDFEATUREVIEWSPEC_SOURCESENTRY']._serialized_start=667 - _globals['_ONDEMANDFEATUREVIEWSPEC_SOURCESENTRY']._serialized_end=741 - _globals['_ONDEMANDFEATUREVIEWSPEC_TAGSENTRY']._serialized_start=743 - _globals['_ONDEMANDFEATUREVIEWSPEC_TAGSENTRY']._serialized_end=786 - _globals['_ONDEMANDFEATUREVIEWMETA']._serialized_start=789 - _globals['_ONDEMANDFEATUREVIEWMETA']._serialized_end=929 - _globals['_ONDEMANDSOURCE']._serialized_start=932 - _globals['_ONDEMANDSOURCE']._serialized_end=1132 - _globals['_USERDEFINEDFUNCTION']._serialized_start=1134 - _globals['_USERDEFINEDFUNCTION']._serialized_end=1202 -# @@protoc_insertion_point(module_scope) diff --git a/sdk/python/feast/protos/feast/core/OnDemandFeatureView_pb2.pyi b/sdk/python/feast/protos/feast/core/OnDemandFeatureView_pb2.pyi deleted file mode 100644 index 0981e34b97..0000000000 --- a/sdk/python/feast/protos/feast/core/OnDemandFeatureView_pb2.pyi +++ /dev/null @@ -1,183 +0,0 @@ -""" -@generated by mypy-protobuf. Do not edit manually! -isort:skip_file -""" -import builtins -import feast.core.DataSource_pb2 -import feast.core.FeatureViewProjection_pb2 -import feast.core.FeatureView_pb2 -import feast.core.Feature_pb2 -import google.protobuf.descriptor -import google.protobuf.internal.containers -import google.protobuf.message -import google.protobuf.timestamp_pb2 -import typing -import typing_extensions - -DESCRIPTOR: google.protobuf.descriptor.FileDescriptor = ... - -class OnDemandFeatureView(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - SPEC_FIELD_NUMBER: builtins.int - META_FIELD_NUMBER: builtins.int - @property - def spec(self) -> global___OnDemandFeatureViewSpec: - """User-specified specifications of this feature view.""" - pass - @property - def meta(self) -> global___OnDemandFeatureViewMeta: ... - def __init__(self, - *, - spec : typing.Optional[global___OnDemandFeatureViewSpec] = ..., - meta : typing.Optional[global___OnDemandFeatureViewMeta] = ..., - ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["meta",b"meta","spec",b"spec"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["meta",b"meta","spec",b"spec"]) -> None: ... -global___OnDemandFeatureView = OnDemandFeatureView - -class OnDemandFeatureViewSpec(google.protobuf.message.Message): - """Next available id: 9""" - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - class SourcesEntry(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - KEY_FIELD_NUMBER: builtins.int - VALUE_FIELD_NUMBER: builtins.int - key: typing.Text = ... - @property - def value(self) -> global___OnDemandSource: ... - def __init__(self, - *, - key : typing.Text = ..., - value : typing.Optional[global___OnDemandSource] = ..., - ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["value",b"value"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["key",b"key","value",b"value"]) -> None: ... - - class TagsEntry(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - KEY_FIELD_NUMBER: builtins.int - VALUE_FIELD_NUMBER: builtins.int - key: typing.Text = ... - value: typing.Text = ... - def __init__(self, - *, - key : typing.Text = ..., - value : typing.Text = ..., - ) -> None: ... - def ClearField(self, field_name: typing_extensions.Literal["key",b"key","value",b"value"]) -> None: ... - - NAME_FIELD_NUMBER: builtins.int - PROJECT_FIELD_NUMBER: builtins.int - FEATURES_FIELD_NUMBER: builtins.int - SOURCES_FIELD_NUMBER: builtins.int - USER_DEFINED_FUNCTION_FIELD_NUMBER: builtins.int - DESCRIPTION_FIELD_NUMBER: builtins.int - TAGS_FIELD_NUMBER: builtins.int - OWNER_FIELD_NUMBER: builtins.int - name: typing.Text = ... - """Name of the feature view. Must be unique. Not updated.""" - - project: typing.Text = ... - """Name of Feast project that this feature view belongs to.""" - - @property - def features(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[feast.core.Feature_pb2.FeatureSpecV2]: - """List of features specifications for each feature defined with this feature view.""" - pass - @property - def sources(self) -> google.protobuf.internal.containers.MessageMap[typing.Text, global___OnDemandSource]: - """Map of sources for this feature view.""" - pass - @property - def user_defined_function(self) -> global___UserDefinedFunction: ... - description: typing.Text = ... - """Description of the on demand feature view.""" - - @property - def tags(self) -> google.protobuf.internal.containers.ScalarMap[typing.Text, typing.Text]: - """User defined metadata.""" - pass - owner: typing.Text = ... - """Owner of the on demand feature view.""" - - def __init__(self, - *, - name : typing.Text = ..., - project : typing.Text = ..., - features : typing.Optional[typing.Iterable[feast.core.Feature_pb2.FeatureSpecV2]] = ..., - sources : typing.Optional[typing.Mapping[typing.Text, global___OnDemandSource]] = ..., - user_defined_function : typing.Optional[global___UserDefinedFunction] = ..., - description : typing.Text = ..., - tags : typing.Optional[typing.Mapping[typing.Text, typing.Text]] = ..., - owner : typing.Text = ..., - ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["user_defined_function",b"user_defined_function"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["description",b"description","features",b"features","name",b"name","owner",b"owner","project",b"project","sources",b"sources","tags",b"tags","user_defined_function",b"user_defined_function"]) -> None: ... -global___OnDemandFeatureViewSpec = OnDemandFeatureViewSpec - -class OnDemandFeatureViewMeta(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - CREATED_TIMESTAMP_FIELD_NUMBER: builtins.int - LAST_UPDATED_TIMESTAMP_FIELD_NUMBER: builtins.int - @property - def created_timestamp(self) -> google.protobuf.timestamp_pb2.Timestamp: - """Time where this Feature View is created""" - pass - @property - def last_updated_timestamp(self) -> google.protobuf.timestamp_pb2.Timestamp: - """Time where this Feature View is last updated""" - pass - def __init__(self, - *, - created_timestamp : typing.Optional[google.protobuf.timestamp_pb2.Timestamp] = ..., - last_updated_timestamp : typing.Optional[google.protobuf.timestamp_pb2.Timestamp] = ..., - ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["created_timestamp",b"created_timestamp","last_updated_timestamp",b"last_updated_timestamp"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["created_timestamp",b"created_timestamp","last_updated_timestamp",b"last_updated_timestamp"]) -> None: ... -global___OnDemandFeatureViewMeta = OnDemandFeatureViewMeta - -class OnDemandSource(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - FEATURE_VIEW_FIELD_NUMBER: builtins.int - FEATURE_VIEW_PROJECTION_FIELD_NUMBER: builtins.int - REQUEST_DATA_SOURCE_FIELD_NUMBER: builtins.int - @property - def feature_view(self) -> feast.core.FeatureView_pb2.FeatureView: ... - @property - def feature_view_projection(self) -> feast.core.FeatureViewProjection_pb2.FeatureViewProjection: ... - @property - def request_data_source(self) -> feast.core.DataSource_pb2.DataSource: ... - def __init__(self, - *, - feature_view : typing.Optional[feast.core.FeatureView_pb2.FeatureView] = ..., - feature_view_projection : typing.Optional[feast.core.FeatureViewProjection_pb2.FeatureViewProjection] = ..., - request_data_source : typing.Optional[feast.core.DataSource_pb2.DataSource] = ..., - ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["feature_view",b"feature_view","feature_view_projection",b"feature_view_projection","request_data_source",b"request_data_source","source",b"source"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["feature_view",b"feature_view","feature_view_projection",b"feature_view_projection","request_data_source",b"request_data_source","source",b"source"]) -> None: ... - def WhichOneof(self, oneof_group: typing_extensions.Literal["source",b"source"]) -> typing.Optional[typing_extensions.Literal["feature_view","feature_view_projection","request_data_source"]]: ... -global___OnDemandSource = OnDemandSource - -class UserDefinedFunction(google.protobuf.message.Message): - """Serialized representation of python function.""" - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - NAME_FIELD_NUMBER: builtins.int - BODY_FIELD_NUMBER: builtins.int - BODY_TEXT_FIELD_NUMBER: builtins.int - name: typing.Text = ... - """The function name""" - - body: builtins.bytes = ... - """The python-syntax function body (serialized by dill)""" - - body_text: typing.Text = ... - """The string representation of the udf""" - - def __init__(self, - *, - name : typing.Text = ..., - body : builtins.bytes = ..., - body_text : typing.Text = ..., - ) -> None: ... - def ClearField(self, field_name: typing_extensions.Literal["body",b"body","body_text",b"body_text","name",b"name"]) -> None: ... -global___UserDefinedFunction = UserDefinedFunction diff --git a/sdk/python/feast/protos/feast/core/OnDemandFeatureView_pb2_grpc.py b/sdk/python/feast/protos/feast/core/OnDemandFeatureView_pb2_grpc.py deleted file mode 100644 index 2daafffebf..0000000000 --- a/sdk/python/feast/protos/feast/core/OnDemandFeatureView_pb2_grpc.py +++ /dev/null @@ -1,4 +0,0 @@ -# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! -"""Client and server classes corresponding to protobuf-defined services.""" -import grpc - diff --git a/sdk/python/feast/protos/feast/core/Registry_pb2.py b/sdk/python/feast/protos/feast/core/Registry_pb2.py deleted file mode 100644 index a9d569926e..0000000000 --- a/sdk/python/feast/protos/feast/core/Registry_pb2.py +++ /dev/null @@ -1,41 +0,0 @@ -# -*- coding: utf-8 -*- -# Generated by the protocol buffer compiler. DO NOT EDIT! -# source: feast/core/Registry.proto -"""Generated protocol buffer code.""" -from google.protobuf import descriptor as _descriptor -from google.protobuf import descriptor_pool as _descriptor_pool -from google.protobuf import symbol_database as _symbol_database -from google.protobuf.internal import builder as _builder -# @@protoc_insertion_point(imports) - -_sym_db = _symbol_database.Default() - - -from feast.protos.feast.core import Entity_pb2 as feast_dot_core_dot_Entity__pb2 -from feast.protos.feast.core import FeatureService_pb2 as feast_dot_core_dot_FeatureService__pb2 -from feast.protos.feast.core import FeatureTable_pb2 as feast_dot_core_dot_FeatureTable__pb2 -from feast.protos.feast.core import FeatureView_pb2 as feast_dot_core_dot_FeatureView__pb2 -from feast.protos.feast.core import InfraObject_pb2 as feast_dot_core_dot_InfraObject__pb2 -from feast.protos.feast.core import OnDemandFeatureView_pb2 as feast_dot_core_dot_OnDemandFeatureView__pb2 -from feast.protos.feast.core import RequestFeatureView_pb2 as feast_dot_core_dot_RequestFeatureView__pb2 -from feast.protos.feast.core import StreamFeatureView_pb2 as feast_dot_core_dot_StreamFeatureView__pb2 -from feast.protos.feast.core import DataSource_pb2 as feast_dot_core_dot_DataSource__pb2 -from feast.protos.feast.core import SavedDataset_pb2 as feast_dot_core_dot_SavedDataset__pb2 -from feast.protos.feast.core import ValidationProfile_pb2 as feast_dot_core_dot_ValidationProfile__pb2 -from google.protobuf import timestamp_pb2 as google_dot_protobuf_dot_timestamp__pb2 - - -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x19\x66\x65\x61st/core/Registry.proto\x12\nfeast.core\x1a\x17\x66\x65\x61st/core/Entity.proto\x1a\x1f\x66\x65\x61st/core/FeatureService.proto\x1a\x1d\x66\x65\x61st/core/FeatureTable.proto\x1a\x1c\x66\x65\x61st/core/FeatureView.proto\x1a\x1c\x66\x65\x61st/core/InfraObject.proto\x1a$feast/core/OnDemandFeatureView.proto\x1a#feast/core/RequestFeatureView.proto\x1a\"feast/core/StreamFeatureView.proto\x1a\x1b\x66\x65\x61st/core/DataSource.proto\x1a\x1d\x66\x65\x61st/core/SavedDataset.proto\x1a\"feast/core/ValidationProfile.proto\x1a\x1fgoogle/protobuf/timestamp.proto\"\xe6\x05\n\x08Registry\x12$\n\x08\x65ntities\x18\x01 \x03(\x0b\x32\x12.feast.core.Entity\x12\x30\n\x0e\x66\x65\x61ture_tables\x18\x02 \x03(\x0b\x32\x18.feast.core.FeatureTable\x12.\n\rfeature_views\x18\x06 \x03(\x0b\x32\x17.feast.core.FeatureView\x12,\n\x0c\x64\x61ta_sources\x18\x0c \x03(\x0b\x32\x16.feast.core.DataSource\x12@\n\x17on_demand_feature_views\x18\x08 \x03(\x0b\x32\x1f.feast.core.OnDemandFeatureView\x12=\n\x15request_feature_views\x18\t \x03(\x0b\x32\x1e.feast.core.RequestFeatureView\x12;\n\x14stream_feature_views\x18\x0e \x03(\x0b\x32\x1d.feast.core.StreamFeatureView\x12\x34\n\x10\x66\x65\x61ture_services\x18\x07 \x03(\x0b\x32\x1a.feast.core.FeatureService\x12\x30\n\x0esaved_datasets\x18\x0b \x03(\x0b\x32\x18.feast.core.SavedDataset\x12>\n\x15validation_references\x18\r \x03(\x0b\x32\x1f.feast.core.ValidationReference\x12 \n\x05infra\x18\n \x01(\x0b\x32\x11.feast.core.Infra\x12\x35\n\x10project_metadata\x18\x0f \x03(\x0b\x32\x1b.feast.core.ProjectMetadata\x12\x1f\n\x17registry_schema_version\x18\x03 \x01(\t\x12\x12\n\nversion_id\x18\x04 \x01(\t\x12\x30\n\x0clast_updated\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\"8\n\x0fProjectMetadata\x12\x0f\n\x07project\x18\x01 \x01(\t\x12\x14\n\x0cproject_uuid\x18\x02 \x01(\tBR\n\x10\x66\x65\x61st.proto.coreB\rRegistryProtoZ/github.com/feast-dev/feast/go/protos/feast/coreb\x06proto3') - -_globals = globals() -_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) -_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'feast.core.Registry_pb2', _globals) -if _descriptor._USE_C_DESCRIPTORS == False: - - DESCRIPTOR._options = None - DESCRIPTOR._serialized_options = b'\n\020feast.proto.coreB\rRegistryProtoZ/github.com/feast-dev/feast/go/protos/feast/core' - _globals['_REGISTRY']._serialized_start=431 - _globals['_REGISTRY']._serialized_end=1173 - _globals['_PROJECTMETADATA']._serialized_start=1175 - _globals['_PROJECTMETADATA']._serialized_end=1231 -# @@protoc_insertion_point(module_scope) diff --git a/sdk/python/feast/protos/feast/core/Registry_pb2.pyi b/sdk/python/feast/protos/feast/core/Registry_pb2.pyi deleted file mode 100644 index a6c3074e02..0000000000 --- a/sdk/python/feast/protos/feast/core/Registry_pb2.pyi +++ /dev/null @@ -1,112 +0,0 @@ -""" -@generated by mypy-protobuf. Do not edit manually! -isort:skip_file -""" -import builtins -import feast.core.DataSource_pb2 -import feast.core.Entity_pb2 -import feast.core.FeatureService_pb2 -import feast.core.FeatureTable_pb2 -import feast.core.FeatureView_pb2 -import feast.core.InfraObject_pb2 -import feast.core.OnDemandFeatureView_pb2 -import feast.core.RequestFeatureView_pb2 -import feast.core.SavedDataset_pb2 -import feast.core.StreamFeatureView_pb2 -import feast.core.ValidationProfile_pb2 -import google.protobuf.descriptor -import google.protobuf.internal.containers -import google.protobuf.message -import google.protobuf.timestamp_pb2 -import typing -import typing_extensions - -DESCRIPTOR: google.protobuf.descriptor.FileDescriptor = ... - -class Registry(google.protobuf.message.Message): - """Next id: 16""" - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - ENTITIES_FIELD_NUMBER: builtins.int - FEATURE_TABLES_FIELD_NUMBER: builtins.int - FEATURE_VIEWS_FIELD_NUMBER: builtins.int - DATA_SOURCES_FIELD_NUMBER: builtins.int - ON_DEMAND_FEATURE_VIEWS_FIELD_NUMBER: builtins.int - REQUEST_FEATURE_VIEWS_FIELD_NUMBER: builtins.int - STREAM_FEATURE_VIEWS_FIELD_NUMBER: builtins.int - FEATURE_SERVICES_FIELD_NUMBER: builtins.int - SAVED_DATASETS_FIELD_NUMBER: builtins.int - VALIDATION_REFERENCES_FIELD_NUMBER: builtins.int - INFRA_FIELD_NUMBER: builtins.int - PROJECT_METADATA_FIELD_NUMBER: builtins.int - REGISTRY_SCHEMA_VERSION_FIELD_NUMBER: builtins.int - VERSION_ID_FIELD_NUMBER: builtins.int - LAST_UPDATED_FIELD_NUMBER: builtins.int - @property - def entities(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[feast.core.Entity_pb2.Entity]: ... - @property - def feature_tables(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[feast.core.FeatureTable_pb2.FeatureTable]: ... - @property - def feature_views(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[feast.core.FeatureView_pb2.FeatureView]: ... - @property - def data_sources(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[feast.core.DataSource_pb2.DataSource]: ... - @property - def on_demand_feature_views(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[feast.core.OnDemandFeatureView_pb2.OnDemandFeatureView]: ... - @property - def request_feature_views(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[feast.core.RequestFeatureView_pb2.RequestFeatureView]: ... - @property - def stream_feature_views(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[feast.core.StreamFeatureView_pb2.StreamFeatureView]: ... - @property - def feature_services(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[feast.core.FeatureService_pb2.FeatureService]: ... - @property - def saved_datasets(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[feast.core.SavedDataset_pb2.SavedDataset]: ... - @property - def validation_references(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[feast.core.ValidationProfile_pb2.ValidationReference]: ... - @property - def infra(self) -> feast.core.InfraObject_pb2.Infra: ... - @property - def project_metadata(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___ProjectMetadata]: - """Tracking metadata of Feast by project""" - pass - registry_schema_version: typing.Text = ... - """to support migrations; incremented when schema is changed""" - - version_id: typing.Text = ... - """version id, random string generated on each update of the data; now used only for debugging purposes""" - - @property - def last_updated(self) -> google.protobuf.timestamp_pb2.Timestamp: ... - def __init__(self, - *, - entities : typing.Optional[typing.Iterable[feast.core.Entity_pb2.Entity]] = ..., - feature_tables : typing.Optional[typing.Iterable[feast.core.FeatureTable_pb2.FeatureTable]] = ..., - feature_views : typing.Optional[typing.Iterable[feast.core.FeatureView_pb2.FeatureView]] = ..., - data_sources : typing.Optional[typing.Iterable[feast.core.DataSource_pb2.DataSource]] = ..., - on_demand_feature_views : typing.Optional[typing.Iterable[feast.core.OnDemandFeatureView_pb2.OnDemandFeatureView]] = ..., - request_feature_views : typing.Optional[typing.Iterable[feast.core.RequestFeatureView_pb2.RequestFeatureView]] = ..., - stream_feature_views : typing.Optional[typing.Iterable[feast.core.StreamFeatureView_pb2.StreamFeatureView]] = ..., - feature_services : typing.Optional[typing.Iterable[feast.core.FeatureService_pb2.FeatureService]] = ..., - saved_datasets : typing.Optional[typing.Iterable[feast.core.SavedDataset_pb2.SavedDataset]] = ..., - validation_references : typing.Optional[typing.Iterable[feast.core.ValidationProfile_pb2.ValidationReference]] = ..., - infra : typing.Optional[feast.core.InfraObject_pb2.Infra] = ..., - project_metadata : typing.Optional[typing.Iterable[global___ProjectMetadata]] = ..., - registry_schema_version : typing.Text = ..., - version_id : typing.Text = ..., - last_updated : typing.Optional[google.protobuf.timestamp_pb2.Timestamp] = ..., - ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["infra",b"infra","last_updated",b"last_updated"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["data_sources",b"data_sources","entities",b"entities","feature_services",b"feature_services","feature_tables",b"feature_tables","feature_views",b"feature_views","infra",b"infra","last_updated",b"last_updated","on_demand_feature_views",b"on_demand_feature_views","project_metadata",b"project_metadata","registry_schema_version",b"registry_schema_version","request_feature_views",b"request_feature_views","saved_datasets",b"saved_datasets","stream_feature_views",b"stream_feature_views","validation_references",b"validation_references","version_id",b"version_id"]) -> None: ... -global___Registry = Registry - -class ProjectMetadata(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - PROJECT_FIELD_NUMBER: builtins.int - PROJECT_UUID_FIELD_NUMBER: builtins.int - project: typing.Text = ... - project_uuid: typing.Text = ... - def __init__(self, - *, - project : typing.Text = ..., - project_uuid : typing.Text = ..., - ) -> None: ... - def ClearField(self, field_name: typing_extensions.Literal["project",b"project","project_uuid",b"project_uuid"]) -> None: ... -global___ProjectMetadata = ProjectMetadata diff --git a/sdk/python/feast/protos/feast/core/Registry_pb2_grpc.py b/sdk/python/feast/protos/feast/core/Registry_pb2_grpc.py deleted file mode 100644 index 2daafffebf..0000000000 --- a/sdk/python/feast/protos/feast/core/Registry_pb2_grpc.py +++ /dev/null @@ -1,4 +0,0 @@ -# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! -"""Client and server classes corresponding to protobuf-defined services.""" -import grpc - diff --git a/sdk/python/feast/protos/feast/core/RequestFeatureView_pb2.py b/sdk/python/feast/protos/feast/core/RequestFeatureView_pb2.py deleted file mode 100644 index d68cd9fb62..0000000000 --- a/sdk/python/feast/protos/feast/core/RequestFeatureView_pb2.py +++ /dev/null @@ -1,34 +0,0 @@ -# -*- coding: utf-8 -*- -# Generated by the protocol buffer compiler. DO NOT EDIT! -# source: feast/core/RequestFeatureView.proto -"""Generated protocol buffer code.""" -from google.protobuf import descriptor as _descriptor -from google.protobuf import descriptor_pool as _descriptor_pool -from google.protobuf import symbol_database as _symbol_database -from google.protobuf.internal import builder as _builder -# @@protoc_insertion_point(imports) - -_sym_db = _symbol_database.Default() - - -from feast.protos.feast.core import DataSource_pb2 as feast_dot_core_dot_DataSource__pb2 - - -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n#feast/core/RequestFeatureView.proto\x12\nfeast.core\x1a\x1b\x66\x65\x61st/core/DataSource.proto\"F\n\x12RequestFeatureView\x12\x30\n\x04spec\x18\x01 \x01(\x0b\x32\".feast.core.RequestFeatureViewSpec\"\xf9\x01\n\x16RequestFeatureViewSpec\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0f\n\x07project\x18\x02 \x01(\t\x12\x33\n\x13request_data_source\x18\x03 \x01(\x0b\x32\x16.feast.core.DataSource\x12\x13\n\x0b\x64\x65scription\x18\x04 \x01(\t\x12:\n\x04tags\x18\x05 \x03(\x0b\x32,.feast.core.RequestFeatureViewSpec.TagsEntry\x12\r\n\x05owner\x18\x06 \x01(\t\x1a+\n\tTagsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x42\\\n\x10\x66\x65\x61st.proto.coreB\x17RequestFeatureViewProtoZ/github.com/feast-dev/feast/go/protos/feast/coreb\x06proto3') - -_globals = globals() -_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) -_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'feast.core.RequestFeatureView_pb2', _globals) -if _descriptor._USE_C_DESCRIPTORS == False: - - DESCRIPTOR._options = None - DESCRIPTOR._serialized_options = b'\n\020feast.proto.coreB\027RequestFeatureViewProtoZ/github.com/feast-dev/feast/go/protos/feast/core' - _REQUESTFEATUREVIEWSPEC_TAGSENTRY._options = None - _REQUESTFEATUREVIEWSPEC_TAGSENTRY._serialized_options = b'8\001' - _globals['_REQUESTFEATUREVIEW']._serialized_start=80 - _globals['_REQUESTFEATUREVIEW']._serialized_end=150 - _globals['_REQUESTFEATUREVIEWSPEC']._serialized_start=153 - _globals['_REQUESTFEATUREVIEWSPEC']._serialized_end=402 - _globals['_REQUESTFEATUREVIEWSPEC_TAGSENTRY']._serialized_start=359 - _globals['_REQUESTFEATUREVIEWSPEC_TAGSENTRY']._serialized_end=402 -# @@protoc_insertion_point(module_scope) diff --git a/sdk/python/feast/protos/feast/core/RequestFeatureView_pb2.pyi b/sdk/python/feast/protos/feast/core/RequestFeatureView_pb2.pyi deleted file mode 100644 index a526d0baa8..0000000000 --- a/sdk/python/feast/protos/feast/core/RequestFeatureView_pb2.pyi +++ /dev/null @@ -1,83 +0,0 @@ -""" -@generated by mypy-protobuf. Do not edit manually! -isort:skip_file -""" -import builtins -import feast.core.DataSource_pb2 -import google.protobuf.descriptor -import google.protobuf.internal.containers -import google.protobuf.message -import typing -import typing_extensions - -DESCRIPTOR: google.protobuf.descriptor.FileDescriptor = ... - -class RequestFeatureView(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - SPEC_FIELD_NUMBER: builtins.int - @property - def spec(self) -> global___RequestFeatureViewSpec: - """User-specified specifications of this feature view.""" - pass - def __init__(self, - *, - spec : typing.Optional[global___RequestFeatureViewSpec] = ..., - ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["spec",b"spec"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["spec",b"spec"]) -> None: ... -global___RequestFeatureView = RequestFeatureView - -class RequestFeatureViewSpec(google.protobuf.message.Message): - """Next available id: 7""" - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - class TagsEntry(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - KEY_FIELD_NUMBER: builtins.int - VALUE_FIELD_NUMBER: builtins.int - key: typing.Text = ... - value: typing.Text = ... - def __init__(self, - *, - key : typing.Text = ..., - value : typing.Text = ..., - ) -> None: ... - def ClearField(self, field_name: typing_extensions.Literal["key",b"key","value",b"value"]) -> None: ... - - NAME_FIELD_NUMBER: builtins.int - PROJECT_FIELD_NUMBER: builtins.int - REQUEST_DATA_SOURCE_FIELD_NUMBER: builtins.int - DESCRIPTION_FIELD_NUMBER: builtins.int - TAGS_FIELD_NUMBER: builtins.int - OWNER_FIELD_NUMBER: builtins.int - name: typing.Text = ... - """Name of the feature view. Must be unique. Not updated.""" - - project: typing.Text = ... - """Name of Feast project that this feature view belongs to.""" - - @property - def request_data_source(self) -> feast.core.DataSource_pb2.DataSource: - """Request data which contains the underlying data schema and list of associated features""" - pass - description: typing.Text = ... - """Description of the request feature view.""" - - @property - def tags(self) -> google.protobuf.internal.containers.ScalarMap[typing.Text, typing.Text]: - """User defined metadata.""" - pass - owner: typing.Text = ... - """Owner of the request feature view.""" - - def __init__(self, - *, - name : typing.Text = ..., - project : typing.Text = ..., - request_data_source : typing.Optional[feast.core.DataSource_pb2.DataSource] = ..., - description : typing.Text = ..., - tags : typing.Optional[typing.Mapping[typing.Text, typing.Text]] = ..., - owner : typing.Text = ..., - ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["request_data_source",b"request_data_source"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["description",b"description","name",b"name","owner",b"owner","project",b"project","request_data_source",b"request_data_source","tags",b"tags"]) -> None: ... -global___RequestFeatureViewSpec = RequestFeatureViewSpec diff --git a/sdk/python/feast/protos/feast/core/RequestFeatureView_pb2_grpc.py b/sdk/python/feast/protos/feast/core/RequestFeatureView_pb2_grpc.py deleted file mode 100644 index 2daafffebf..0000000000 --- a/sdk/python/feast/protos/feast/core/RequestFeatureView_pb2_grpc.py +++ /dev/null @@ -1,4 +0,0 @@ -# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! -"""Client and server classes corresponding to protobuf-defined services.""" -import grpc - diff --git a/sdk/python/feast/protos/feast/core/SavedDataset_pb2.py b/sdk/python/feast/protos/feast/core/SavedDataset_pb2.py deleted file mode 100644 index 535d2f5772..0000000000 --- a/sdk/python/feast/protos/feast/core/SavedDataset_pb2.py +++ /dev/null @@ -1,39 +0,0 @@ -# -*- coding: utf-8 -*- -# Generated by the protocol buffer compiler. DO NOT EDIT! -# source: feast/core/SavedDataset.proto -"""Generated protocol buffer code.""" -from google.protobuf import descriptor as _descriptor -from google.protobuf import descriptor_pool as _descriptor_pool -from google.protobuf import symbol_database as _symbol_database -from google.protobuf.internal import builder as _builder -# @@protoc_insertion_point(imports) - -_sym_db = _symbol_database.Default() - - -from google.protobuf import timestamp_pb2 as google_dot_protobuf_dot_timestamp__pb2 -from feast.protos.feast.core import DataSource_pb2 as feast_dot_core_dot_DataSource__pb2 - - -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1d\x66\x65\x61st/core/SavedDataset.proto\x12\nfeast.core\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x1b\x66\x65\x61st/core/DataSource.proto\"\xa5\x02\n\x10SavedDatasetSpec\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0f\n\x07project\x18\x02 \x01(\t\x12\x10\n\x08\x66\x65\x61tures\x18\x03 \x03(\t\x12\x11\n\tjoin_keys\x18\x04 \x03(\t\x12\x1a\n\x12\x66ull_feature_names\x18\x05 \x01(\x08\x12\x30\n\x07storage\x18\x06 \x01(\x0b\x32\x1f.feast.core.SavedDatasetStorage\x12\x1c\n\x14\x66\x65\x61ture_service_name\x18\x08 \x01(\t\x12\x34\n\x04tags\x18\x07 \x03(\x0b\x32&.feast.core.SavedDatasetSpec.TagsEntry\x1a+\n\tTagsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\xa9\x04\n\x13SavedDatasetStorage\x12:\n\x0c\x66ile_storage\x18\x04 \x01(\x0b\x32\".feast.core.DataSource.FileOptionsH\x00\x12\x42\n\x10\x62igquery_storage\x18\x05 \x01(\x0b\x32&.feast.core.DataSource.BigQueryOptionsH\x00\x12\x42\n\x10redshift_storage\x18\x06 \x01(\x0b\x32&.feast.core.DataSource.RedshiftOptionsH\x00\x12\x44\n\x11snowflake_storage\x18\x07 \x01(\x0b\x32\'.feast.core.DataSource.SnowflakeOptionsH\x00\x12<\n\rtrino_storage\x18\x08 \x01(\x0b\x32#.feast.core.DataSource.TrinoOptionsH\x00\x12<\n\rspark_storage\x18\t \x01(\x0b\x32#.feast.core.DataSource.SparkOptionsH\x00\x12\x44\n\x0e\x63ustom_storage\x18\n \x01(\x0b\x32*.feast.core.DataSource.CustomSourceOptionsH\x00\x12>\n\x0e\x61thena_storage\x18\x0b \x01(\x0b\x32$.feast.core.DataSource.AthenaOptionsH\x00\x42\x06\n\x04kind\"\xf7\x01\n\x10SavedDatasetMeta\x12\x35\n\x11\x63reated_timestamp\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12:\n\x16last_updated_timestamp\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x37\n\x13min_event_timestamp\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x37\n\x13max_event_timestamp\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\"f\n\x0cSavedDataset\x12*\n\x04spec\x18\x01 \x01(\x0b\x32\x1c.feast.core.SavedDatasetSpec\x12*\n\x04meta\x18\x02 \x01(\x0b\x32\x1c.feast.core.SavedDatasetMetaBV\n\x10\x66\x65\x61st.proto.coreB\x11SavedDatasetProtoZ/github.com/feast-dev/feast/go/protos/feast/coreb\x06proto3') - -_globals = globals() -_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) -_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'feast.core.SavedDataset_pb2', _globals) -if _descriptor._USE_C_DESCRIPTORS == False: - - DESCRIPTOR._options = None - DESCRIPTOR._serialized_options = b'\n\020feast.proto.coreB\021SavedDatasetProtoZ/github.com/feast-dev/feast/go/protos/feast/core' - _SAVEDDATASETSPEC_TAGSENTRY._options = None - _SAVEDDATASETSPEC_TAGSENTRY._serialized_options = b'8\001' - _globals['_SAVEDDATASETSPEC']._serialized_start=108 - _globals['_SAVEDDATASETSPEC']._serialized_end=401 - _globals['_SAVEDDATASETSPEC_TAGSENTRY']._serialized_start=358 - _globals['_SAVEDDATASETSPEC_TAGSENTRY']._serialized_end=401 - _globals['_SAVEDDATASETSTORAGE']._serialized_start=404 - _globals['_SAVEDDATASETSTORAGE']._serialized_end=957 - _globals['_SAVEDDATASETMETA']._serialized_start=960 - _globals['_SAVEDDATASETMETA']._serialized_end=1207 - _globals['_SAVEDDATASET']._serialized_start=1209 - _globals['_SAVEDDATASET']._serialized_end=1311 -# @@protoc_insertion_point(module_scope) diff --git a/sdk/python/feast/protos/feast/core/SavedDataset_pb2.pyi b/sdk/python/feast/protos/feast/core/SavedDataset_pb2.pyi deleted file mode 100644 index 5b7fd06bf0..0000000000 --- a/sdk/python/feast/protos/feast/core/SavedDataset_pb2.pyi +++ /dev/null @@ -1,170 +0,0 @@ -""" -@generated by mypy-protobuf. Do not edit manually! -isort:skip_file -""" -import builtins -import feast.core.DataSource_pb2 -import google.protobuf.descriptor -import google.protobuf.internal.containers -import google.protobuf.message -import google.protobuf.timestamp_pb2 -import typing -import typing_extensions - -DESCRIPTOR: google.protobuf.descriptor.FileDescriptor = ... - -class SavedDatasetSpec(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - class TagsEntry(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - KEY_FIELD_NUMBER: builtins.int - VALUE_FIELD_NUMBER: builtins.int - key: typing.Text = ... - value: typing.Text = ... - def __init__(self, - *, - key : typing.Text = ..., - value : typing.Text = ..., - ) -> None: ... - def ClearField(self, field_name: typing_extensions.Literal["key",b"key","value",b"value"]) -> None: ... - - NAME_FIELD_NUMBER: builtins.int - PROJECT_FIELD_NUMBER: builtins.int - FEATURES_FIELD_NUMBER: builtins.int - JOIN_KEYS_FIELD_NUMBER: builtins.int - FULL_FEATURE_NAMES_FIELD_NUMBER: builtins.int - STORAGE_FIELD_NUMBER: builtins.int - FEATURE_SERVICE_NAME_FIELD_NUMBER: builtins.int - TAGS_FIELD_NUMBER: builtins.int - name: typing.Text = ... - """Name of the dataset. Must be unique since it's possible to overwrite dataset by name""" - - project: typing.Text = ... - """Name of Feast project that this Dataset belongs to.""" - - @property - def features(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[typing.Text]: - """list of feature references with format ":" """ - pass - @property - def join_keys(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[typing.Text]: - """entity columns + request columns from all feature views used during retrieval""" - pass - full_feature_names: builtins.bool = ... - """Whether full feature names are used in stored data""" - - @property - def storage(self) -> global___SavedDatasetStorage: ... - feature_service_name: typing.Text = ... - """Optional and only populated if generated from a feature service fetch""" - - @property - def tags(self) -> google.protobuf.internal.containers.ScalarMap[typing.Text, typing.Text]: - """User defined metadata""" - pass - def __init__(self, - *, - name : typing.Text = ..., - project : typing.Text = ..., - features : typing.Optional[typing.Iterable[typing.Text]] = ..., - join_keys : typing.Optional[typing.Iterable[typing.Text]] = ..., - full_feature_names : builtins.bool = ..., - storage : typing.Optional[global___SavedDatasetStorage] = ..., - feature_service_name : typing.Text = ..., - tags : typing.Optional[typing.Mapping[typing.Text, typing.Text]] = ..., - ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["storage",b"storage"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["feature_service_name",b"feature_service_name","features",b"features","full_feature_names",b"full_feature_names","join_keys",b"join_keys","name",b"name","project",b"project","storage",b"storage","tags",b"tags"]) -> None: ... -global___SavedDatasetSpec = SavedDatasetSpec - -class SavedDatasetStorage(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - FILE_STORAGE_FIELD_NUMBER: builtins.int - BIGQUERY_STORAGE_FIELD_NUMBER: builtins.int - REDSHIFT_STORAGE_FIELD_NUMBER: builtins.int - SNOWFLAKE_STORAGE_FIELD_NUMBER: builtins.int - TRINO_STORAGE_FIELD_NUMBER: builtins.int - SPARK_STORAGE_FIELD_NUMBER: builtins.int - CUSTOM_STORAGE_FIELD_NUMBER: builtins.int - ATHENA_STORAGE_FIELD_NUMBER: builtins.int - @property - def file_storage(self) -> feast.core.DataSource_pb2.DataSource.FileOptions: ... - @property - def bigquery_storage(self) -> feast.core.DataSource_pb2.DataSource.BigQueryOptions: ... - @property - def redshift_storage(self) -> feast.core.DataSource_pb2.DataSource.RedshiftOptions: ... - @property - def snowflake_storage(self) -> feast.core.DataSource_pb2.DataSource.SnowflakeOptions: ... - @property - def trino_storage(self) -> feast.core.DataSource_pb2.DataSource.TrinoOptions: ... - @property - def spark_storage(self) -> feast.core.DataSource_pb2.DataSource.SparkOptions: ... - @property - def custom_storage(self) -> feast.core.DataSource_pb2.DataSource.CustomSourceOptions: ... - @property - def athena_storage(self) -> feast.core.DataSource_pb2.DataSource.AthenaOptions: ... - def __init__(self, - *, - file_storage : typing.Optional[feast.core.DataSource_pb2.DataSource.FileOptions] = ..., - bigquery_storage : typing.Optional[feast.core.DataSource_pb2.DataSource.BigQueryOptions] = ..., - redshift_storage : typing.Optional[feast.core.DataSource_pb2.DataSource.RedshiftOptions] = ..., - snowflake_storage : typing.Optional[feast.core.DataSource_pb2.DataSource.SnowflakeOptions] = ..., - trino_storage : typing.Optional[feast.core.DataSource_pb2.DataSource.TrinoOptions] = ..., - spark_storage : typing.Optional[feast.core.DataSource_pb2.DataSource.SparkOptions] = ..., - custom_storage : typing.Optional[feast.core.DataSource_pb2.DataSource.CustomSourceOptions] = ..., - athena_storage : typing.Optional[feast.core.DataSource_pb2.DataSource.AthenaOptions] = ..., - ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["athena_storage",b"athena_storage","bigquery_storage",b"bigquery_storage","custom_storage",b"custom_storage","file_storage",b"file_storage","kind",b"kind","redshift_storage",b"redshift_storage","snowflake_storage",b"snowflake_storage","spark_storage",b"spark_storage","trino_storage",b"trino_storage"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["athena_storage",b"athena_storage","bigquery_storage",b"bigquery_storage","custom_storage",b"custom_storage","file_storage",b"file_storage","kind",b"kind","redshift_storage",b"redshift_storage","snowflake_storage",b"snowflake_storage","spark_storage",b"spark_storage","trino_storage",b"trino_storage"]) -> None: ... - def WhichOneof(self, oneof_group: typing_extensions.Literal["kind",b"kind"]) -> typing.Optional[typing_extensions.Literal["file_storage","bigquery_storage","redshift_storage","snowflake_storage","trino_storage","spark_storage","custom_storage","athena_storage"]]: ... -global___SavedDatasetStorage = SavedDatasetStorage - -class SavedDatasetMeta(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - CREATED_TIMESTAMP_FIELD_NUMBER: builtins.int - LAST_UPDATED_TIMESTAMP_FIELD_NUMBER: builtins.int - MIN_EVENT_TIMESTAMP_FIELD_NUMBER: builtins.int - MAX_EVENT_TIMESTAMP_FIELD_NUMBER: builtins.int - @property - def created_timestamp(self) -> google.protobuf.timestamp_pb2.Timestamp: - """Time when this saved dataset is created""" - pass - @property - def last_updated_timestamp(self) -> google.protobuf.timestamp_pb2.Timestamp: - """Time when this saved dataset is last updated""" - pass - @property - def min_event_timestamp(self) -> google.protobuf.timestamp_pb2.Timestamp: - """Min timestamp in the dataset (needed for retrieval)""" - pass - @property - def max_event_timestamp(self) -> google.protobuf.timestamp_pb2.Timestamp: - """Max timestamp in the dataset (needed for retrieval)""" - pass - def __init__(self, - *, - created_timestamp : typing.Optional[google.protobuf.timestamp_pb2.Timestamp] = ..., - last_updated_timestamp : typing.Optional[google.protobuf.timestamp_pb2.Timestamp] = ..., - min_event_timestamp : typing.Optional[google.protobuf.timestamp_pb2.Timestamp] = ..., - max_event_timestamp : typing.Optional[google.protobuf.timestamp_pb2.Timestamp] = ..., - ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["created_timestamp",b"created_timestamp","last_updated_timestamp",b"last_updated_timestamp","max_event_timestamp",b"max_event_timestamp","min_event_timestamp",b"min_event_timestamp"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["created_timestamp",b"created_timestamp","last_updated_timestamp",b"last_updated_timestamp","max_event_timestamp",b"max_event_timestamp","min_event_timestamp",b"min_event_timestamp"]) -> None: ... -global___SavedDatasetMeta = SavedDatasetMeta - -class SavedDataset(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - SPEC_FIELD_NUMBER: builtins.int - META_FIELD_NUMBER: builtins.int - @property - def spec(self) -> global___SavedDatasetSpec: ... - @property - def meta(self) -> global___SavedDatasetMeta: ... - def __init__(self, - *, - spec : typing.Optional[global___SavedDatasetSpec] = ..., - meta : typing.Optional[global___SavedDatasetMeta] = ..., - ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["meta",b"meta","spec",b"spec"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["meta",b"meta","spec",b"spec"]) -> None: ... -global___SavedDataset = SavedDataset diff --git a/sdk/python/feast/protos/feast/core/SavedDataset_pb2_grpc.py b/sdk/python/feast/protos/feast/core/SavedDataset_pb2_grpc.py deleted file mode 100644 index 2daafffebf..0000000000 --- a/sdk/python/feast/protos/feast/core/SavedDataset_pb2_grpc.py +++ /dev/null @@ -1,4 +0,0 @@ -# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! -"""Client and server classes corresponding to protobuf-defined services.""" -import grpc - diff --git a/sdk/python/feast/protos/feast/core/SqliteTable_pb2.py b/sdk/python/feast/protos/feast/core/SqliteTable_pb2.py deleted file mode 100644 index a61f866b51..0000000000 --- a/sdk/python/feast/protos/feast/core/SqliteTable_pb2.py +++ /dev/null @@ -1,27 +0,0 @@ -# -*- coding: utf-8 -*- -# Generated by the protocol buffer compiler. DO NOT EDIT! -# source: feast/core/SqliteTable.proto -"""Generated protocol buffer code.""" -from google.protobuf import descriptor as _descriptor -from google.protobuf import descriptor_pool as _descriptor_pool -from google.protobuf import symbol_database as _symbol_database -from google.protobuf.internal import builder as _builder -# @@protoc_insertion_point(imports) - -_sym_db = _symbol_database.Default() - - - - -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1c\x66\x65\x61st/core/SqliteTable.proto\x12\nfeast.core\")\n\x0bSqliteTable\x12\x0c\n\x04path\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\tBU\n\x10\x66\x65\x61st.proto.coreB\x10SqliteTableProtoZ/github.com/feast-dev/feast/go/protos/feast/coreb\x06proto3') - -_globals = globals() -_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) -_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'feast.core.SqliteTable_pb2', _globals) -if _descriptor._USE_C_DESCRIPTORS == False: - - DESCRIPTOR._options = None - DESCRIPTOR._serialized_options = b'\n\020feast.proto.coreB\020SqliteTableProtoZ/github.com/feast-dev/feast/go/protos/feast/core' - _globals['_SQLITETABLE']._serialized_start=44 - _globals['_SQLITETABLE']._serialized_end=85 -# @@protoc_insertion_point(module_scope) diff --git a/sdk/python/feast/protos/feast/core/SqliteTable_pb2.pyi b/sdk/python/feast/protos/feast/core/SqliteTable_pb2.pyi deleted file mode 100644 index 7fa0cac693..0000000000 --- a/sdk/python/feast/protos/feast/core/SqliteTable_pb2.pyi +++ /dev/null @@ -1,30 +0,0 @@ -""" -@generated by mypy-protobuf. Do not edit manually! -isort:skip_file -""" -import builtins -import google.protobuf.descriptor -import google.protobuf.message -import typing -import typing_extensions - -DESCRIPTOR: google.protobuf.descriptor.FileDescriptor = ... - -class SqliteTable(google.protobuf.message.Message): - """Represents a Sqlite table""" - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - PATH_FIELD_NUMBER: builtins.int - NAME_FIELD_NUMBER: builtins.int - path: typing.Text = ... - """Absolute path of the table""" - - name: typing.Text = ... - """Name of the table""" - - def __init__(self, - *, - path : typing.Text = ..., - name : typing.Text = ..., - ) -> None: ... - def ClearField(self, field_name: typing_extensions.Literal["name",b"name","path",b"path"]) -> None: ... -global___SqliteTable = SqliteTable diff --git a/sdk/python/feast/protos/feast/core/SqliteTable_pb2_grpc.py b/sdk/python/feast/protos/feast/core/SqliteTable_pb2_grpc.py deleted file mode 100644 index 2daafffebf..0000000000 --- a/sdk/python/feast/protos/feast/core/SqliteTable_pb2_grpc.py +++ /dev/null @@ -1,4 +0,0 @@ -# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! -"""Client and server classes corresponding to protobuf-defined services.""" -import grpc - diff --git a/sdk/python/feast/protos/feast/core/Store_pb2.py b/sdk/python/feast/protos/feast/core/Store_pb2.py deleted file mode 100644 index 4169921bc2..0000000000 --- a/sdk/python/feast/protos/feast/core/Store_pb2.py +++ /dev/null @@ -1,37 +0,0 @@ -# -*- coding: utf-8 -*- -# Generated by the protocol buffer compiler. DO NOT EDIT! -# source: feast/core/Store.proto -"""Generated protocol buffer code.""" -from google.protobuf import descriptor as _descriptor -from google.protobuf import descriptor_pool as _descriptor_pool -from google.protobuf import symbol_database as _symbol_database -from google.protobuf.internal import builder as _builder -# @@protoc_insertion_point(imports) - -_sym_db = _symbol_database.Default() - - - - -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x16\x66\x65\x61st/core/Store.proto\x12\nfeast.core\"\xfd\x06\n\x05Store\x12\x0c\n\x04name\x18\x01 \x01(\t\x12)\n\x04type\x18\x02 \x01(\x0e\x32\x1b.feast.core.Store.StoreType\x12\x35\n\rsubscriptions\x18\x04 \x03(\x0b\x32\x1e.feast.core.Store.Subscription\x12\x35\n\x0credis_config\x18\x0b \x01(\x0b\x32\x1d.feast.core.Store.RedisConfigH\x00\x12\x44\n\x14redis_cluster_config\x18\x0e \x01(\x0b\x32$.feast.core.Store.RedisClusterConfigH\x00\x1a\x88\x01\n\x0bRedisConfig\x12\x0c\n\x04host\x18\x01 \x01(\t\x12\x0c\n\x04port\x18\x02 \x01(\x05\x12\x1a\n\x12initial_backoff_ms\x18\x03 \x01(\x05\x12\x13\n\x0bmax_retries\x18\x04 \x01(\x05\x12\x1f\n\x17\x66lush_frequency_seconds\x18\x05 \x01(\x05\x12\x0b\n\x03ssl\x18\x06 \x01(\x08\x1a\xdb\x02\n\x12RedisClusterConfig\x12\x19\n\x11\x63onnection_string\x18\x01 \x01(\t\x12\x1a\n\x12initial_backoff_ms\x18\x02 \x01(\x05\x12\x13\n\x0bmax_retries\x18\x03 \x01(\x05\x12\x1f\n\x17\x66lush_frequency_seconds\x18\x04 \x01(\x05\x12\x12\n\nkey_prefix\x18\x05 \x01(\t\x12\x17\n\x0f\x65nable_fallback\x18\x06 \x01(\x08\x12\x17\n\x0f\x66\x61llback_prefix\x18\x07 \x01(\t\x12@\n\tread_from\x18\x08 \x01(\x0e\x32-.feast.core.Store.RedisClusterConfig.ReadFrom\"P\n\x08ReadFrom\x12\n\n\x06MASTER\x10\x00\x12\x14\n\x10MASTER_PREFERRED\x10\x01\x12\x0b\n\x07REPLICA\x10\x02\x12\x15\n\x11REPLICA_PREFERRED\x10\x03\x1a\x44\n\x0cSubscription\x12\x0f\n\x07project\x18\x03 \x01(\t\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0f\n\x07\x65xclude\x18\x04 \x01(\x08J\x04\x08\x02\x10\x03\"N\n\tStoreType\x12\x0b\n\x07INVALID\x10\x00\x12\t\n\x05REDIS\x10\x01\x12\x11\n\rREDIS_CLUSTER\x10\x04\"\x04\x08\x02\x10\x02\"\x04\x08\x03\x10\x03\"\x04\x08\x0c\x10\x0c\"\x04\x08\r\x10\rB\x08\n\x06\x63onfigBO\n\x10\x66\x65\x61st.proto.coreB\nStoreProtoZ/github.com/feast-dev/feast/go/protos/feast/coreb\x06proto3') - -_globals = globals() -_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) -_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'feast.core.Store_pb2', _globals) -if _descriptor._USE_C_DESCRIPTORS == False: - - DESCRIPTOR._options = None - DESCRIPTOR._serialized_options = b'\n\020feast.proto.coreB\nStoreProtoZ/github.com/feast-dev/feast/go/protos/feast/core' - _globals['_STORE']._serialized_start=39 - _globals['_STORE']._serialized_end=932 - _globals['_STORE_REDISCONFIG']._serialized_start=286 - _globals['_STORE_REDISCONFIG']._serialized_end=422 - _globals['_STORE_REDISCLUSTERCONFIG']._serialized_start=425 - _globals['_STORE_REDISCLUSTERCONFIG']._serialized_end=772 - _globals['_STORE_REDISCLUSTERCONFIG_READFROM']._serialized_start=692 - _globals['_STORE_REDISCLUSTERCONFIG_READFROM']._serialized_end=772 - _globals['_STORE_SUBSCRIPTION']._serialized_start=774 - _globals['_STORE_SUBSCRIPTION']._serialized_end=842 - _globals['_STORE_STORETYPE']._serialized_start=844 - _globals['_STORE_STORETYPE']._serialized_end=922 -# @@protoc_insertion_point(module_scope) diff --git a/sdk/python/feast/protos/feast/core/Store_pb2.pyi b/sdk/python/feast/protos/feast/core/Store_pb2.pyi deleted file mode 100644 index 19896b31fc..0000000000 --- a/sdk/python/feast/protos/feast/core/Store_pb2.pyi +++ /dev/null @@ -1,220 +0,0 @@ -""" -@generated by mypy-protobuf. Do not edit manually! -isort:skip_file -""" -import builtins -import google.protobuf.descriptor -import google.protobuf.internal.containers -import google.protobuf.internal.enum_type_wrapper -import google.protobuf.message -import typing -import typing_extensions - -DESCRIPTOR: google.protobuf.descriptor.FileDescriptor = ... - -class Store(google.protobuf.message.Message): - """Store provides a location where Feast reads and writes feature values. - Feature values will be written to the Store in the form of FeatureRow elements. - The way FeatureRow is encoded and decoded when it is written to and read from - the Store depends on the type of the Store. - """ - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - class _StoreType: - ValueType = typing.NewType('ValueType', builtins.int) - V: typing_extensions.TypeAlias = ValueType - class _StoreTypeEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_StoreType.ValueType], builtins.type): - DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor = ... - INVALID: Store.StoreType.ValueType = ... # 0 - REDIS: Store.StoreType.ValueType = ... # 1 - """Redis stores a FeatureRow element as a key, value pair. - - The Redis data types used (https://redis.io/topics/data-types): - - key: STRING - - value: STRING - - Encodings: - - key: byte array of RedisKey (refer to feast.storage.RedisKeyV2) - - value: Redis hashmap - """ - - REDIS_CLUSTER: Store.StoreType.ValueType = ... # 4 - class StoreType(_StoreType, metaclass=_StoreTypeEnumTypeWrapper): - pass - - INVALID: Store.StoreType.ValueType = ... # 0 - REDIS: Store.StoreType.ValueType = ... # 1 - """Redis stores a FeatureRow element as a key, value pair. - - The Redis data types used (https://redis.io/topics/data-types): - - key: STRING - - value: STRING - - Encodings: - - key: byte array of RedisKey (refer to feast.storage.RedisKeyV2) - - value: Redis hashmap - """ - - REDIS_CLUSTER: Store.StoreType.ValueType = ... # 4 - - class RedisConfig(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - HOST_FIELD_NUMBER: builtins.int - PORT_FIELD_NUMBER: builtins.int - INITIAL_BACKOFF_MS_FIELD_NUMBER: builtins.int - MAX_RETRIES_FIELD_NUMBER: builtins.int - FLUSH_FREQUENCY_SECONDS_FIELD_NUMBER: builtins.int - SSL_FIELD_NUMBER: builtins.int - host: typing.Text = ... - port: builtins.int = ... - initial_backoff_ms: builtins.int = ... - """Optional. The number of milliseconds to wait before retrying failed Redis connection. - By default, Feast uses exponential backoff policy and "initial_backoff_ms" sets the initial wait duration. - """ - - max_retries: builtins.int = ... - """Optional. Maximum total number of retries for connecting to Redis. Default to zero retries.""" - - flush_frequency_seconds: builtins.int = ... - """Optional. How often flush data to redis""" - - ssl: builtins.bool = ... - """Optional. Connect over SSL.""" - - def __init__(self, - *, - host : typing.Text = ..., - port : builtins.int = ..., - initial_backoff_ms : builtins.int = ..., - max_retries : builtins.int = ..., - flush_frequency_seconds : builtins.int = ..., - ssl : builtins.bool = ..., - ) -> None: ... - def ClearField(self, field_name: typing_extensions.Literal["flush_frequency_seconds",b"flush_frequency_seconds","host",b"host","initial_backoff_ms",b"initial_backoff_ms","max_retries",b"max_retries","port",b"port","ssl",b"ssl"]) -> None: ... - - class RedisClusterConfig(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - class _ReadFrom: - ValueType = typing.NewType('ValueType', builtins.int) - V: typing_extensions.TypeAlias = ValueType - class _ReadFromEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_ReadFrom.ValueType], builtins.type): - DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor = ... - MASTER: Store.RedisClusterConfig.ReadFrom.ValueType = ... # 0 - MASTER_PREFERRED: Store.RedisClusterConfig.ReadFrom.ValueType = ... # 1 - REPLICA: Store.RedisClusterConfig.ReadFrom.ValueType = ... # 2 - REPLICA_PREFERRED: Store.RedisClusterConfig.ReadFrom.ValueType = ... # 3 - class ReadFrom(_ReadFrom, metaclass=_ReadFromEnumTypeWrapper): - """Optional. Priority of nodes when reading from cluster""" - pass - - MASTER: Store.RedisClusterConfig.ReadFrom.ValueType = ... # 0 - MASTER_PREFERRED: Store.RedisClusterConfig.ReadFrom.ValueType = ... # 1 - REPLICA: Store.RedisClusterConfig.ReadFrom.ValueType = ... # 2 - REPLICA_PREFERRED: Store.RedisClusterConfig.ReadFrom.ValueType = ... # 3 - - CONNECTION_STRING_FIELD_NUMBER: builtins.int - INITIAL_BACKOFF_MS_FIELD_NUMBER: builtins.int - MAX_RETRIES_FIELD_NUMBER: builtins.int - FLUSH_FREQUENCY_SECONDS_FIELD_NUMBER: builtins.int - KEY_PREFIX_FIELD_NUMBER: builtins.int - ENABLE_FALLBACK_FIELD_NUMBER: builtins.int - FALLBACK_PREFIX_FIELD_NUMBER: builtins.int - READ_FROM_FIELD_NUMBER: builtins.int - connection_string: typing.Text = ... - """List of Redis Uri for all the nodes in Redis Cluster, comma separated. Eg. host1:6379, host2:6379""" - - initial_backoff_ms: builtins.int = ... - max_retries: builtins.int = ... - flush_frequency_seconds: builtins.int = ... - """Optional. How often flush data to redis""" - - key_prefix: typing.Text = ... - """Optional. Append a prefix to the Redis Key""" - - enable_fallback: builtins.bool = ... - """Optional. Enable fallback to another key prefix if the original key is not present. - Useful for migrating key prefix without re-ingestion. Disabled by default. - """ - - fallback_prefix: typing.Text = ... - """Optional. This would be the fallback prefix to use if enable_fallback is true.""" - - read_from: global___Store.RedisClusterConfig.ReadFrom.ValueType = ... - def __init__(self, - *, - connection_string : typing.Text = ..., - initial_backoff_ms : builtins.int = ..., - max_retries : builtins.int = ..., - flush_frequency_seconds : builtins.int = ..., - key_prefix : typing.Text = ..., - enable_fallback : builtins.bool = ..., - fallback_prefix : typing.Text = ..., - read_from : global___Store.RedisClusterConfig.ReadFrom.ValueType = ..., - ) -> None: ... - def ClearField(self, field_name: typing_extensions.Literal["connection_string",b"connection_string","enable_fallback",b"enable_fallback","fallback_prefix",b"fallback_prefix","flush_frequency_seconds",b"flush_frequency_seconds","initial_backoff_ms",b"initial_backoff_ms","key_prefix",b"key_prefix","max_retries",b"max_retries","read_from",b"read_from"]) -> None: ... - - class Subscription(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - PROJECT_FIELD_NUMBER: builtins.int - NAME_FIELD_NUMBER: builtins.int - EXCLUDE_FIELD_NUMBER: builtins.int - project: typing.Text = ... - """Name of project that the feature sets belongs to. This can be one of - - [project_name] - - * - If an asterisk is provided, filtering on projects will be disabled. All projects will - be matched. It is NOT possible to provide an asterisk with a string in order to do - pattern matching. - """ - - name: typing.Text = ... - """Name of the desired feature set. Asterisks can be used as wildcards in the name. - Matching on names is only permitted if a specific project is defined. It is disallowed - If the project name is set to "*" - e.g. - - * can be used to match all feature sets - - my-feature-set* can be used to match all features prefixed by "my-feature-set" - - my-feature-set-6 can be used to select a single feature set - """ - - exclude: builtins.bool = ... - """All matches with exclude enabled will be filtered out instead of added""" - - def __init__(self, - *, - project : typing.Text = ..., - name : typing.Text = ..., - exclude : builtins.bool = ..., - ) -> None: ... - def ClearField(self, field_name: typing_extensions.Literal["exclude",b"exclude","name",b"name","project",b"project"]) -> None: ... - - NAME_FIELD_NUMBER: builtins.int - TYPE_FIELD_NUMBER: builtins.int - SUBSCRIPTIONS_FIELD_NUMBER: builtins.int - REDIS_CONFIG_FIELD_NUMBER: builtins.int - REDIS_CLUSTER_CONFIG_FIELD_NUMBER: builtins.int - name: typing.Text = ... - """Name of the store.""" - - type: global___Store.StoreType.ValueType = ... - """Type of store.""" - - @property - def subscriptions(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Store.Subscription]: - """Feature sets to subscribe to.""" - pass - @property - def redis_config(self) -> global___Store.RedisConfig: ... - @property - def redis_cluster_config(self) -> global___Store.RedisClusterConfig: ... - def __init__(self, - *, - name : typing.Text = ..., - type : global___Store.StoreType.ValueType = ..., - subscriptions : typing.Optional[typing.Iterable[global___Store.Subscription]] = ..., - redis_config : typing.Optional[global___Store.RedisConfig] = ..., - redis_cluster_config : typing.Optional[global___Store.RedisClusterConfig] = ..., - ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["config",b"config","redis_cluster_config",b"redis_cluster_config","redis_config",b"redis_config"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["config",b"config","name",b"name","redis_cluster_config",b"redis_cluster_config","redis_config",b"redis_config","subscriptions",b"subscriptions","type",b"type"]) -> None: ... - def WhichOneof(self, oneof_group: typing_extensions.Literal["config",b"config"]) -> typing.Optional[typing_extensions.Literal["redis_config","redis_cluster_config"]]: ... -global___Store = Store diff --git a/sdk/python/feast/protos/feast/core/Store_pb2_grpc.py b/sdk/python/feast/protos/feast/core/Store_pb2_grpc.py deleted file mode 100644 index 2daafffebf..0000000000 --- a/sdk/python/feast/protos/feast/core/Store_pb2_grpc.py +++ /dev/null @@ -1,4 +0,0 @@ -# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! -"""Client and server classes corresponding to protobuf-defined services.""" -import grpc - diff --git a/sdk/python/feast/protos/feast/core/StreamFeatureView_pb2.py b/sdk/python/feast/protos/feast/core/StreamFeatureView_pb2.py deleted file mode 100644 index 1bada7860e..0000000000 --- a/sdk/python/feast/protos/feast/core/StreamFeatureView_pb2.py +++ /dev/null @@ -1,39 +0,0 @@ -# -*- coding: utf-8 -*- -# Generated by the protocol buffer compiler. DO NOT EDIT! -# source: feast/core/StreamFeatureView.proto -"""Generated protocol buffer code.""" -from google.protobuf import descriptor as _descriptor -from google.protobuf import descriptor_pool as _descriptor_pool -from google.protobuf import symbol_database as _symbol_database -from google.protobuf.internal import builder as _builder -# @@protoc_insertion_point(imports) - -_sym_db = _symbol_database.Default() - - -from google.protobuf import duration_pb2 as google_dot_protobuf_dot_duration__pb2 -from feast.protos.feast.core import OnDemandFeatureView_pb2 as feast_dot_core_dot_OnDemandFeatureView__pb2 -from feast.protos.feast.core import FeatureView_pb2 as feast_dot_core_dot_FeatureView__pb2 -from feast.protos.feast.core import Feature_pb2 as feast_dot_core_dot_Feature__pb2 -from feast.protos.feast.core import DataSource_pb2 as feast_dot_core_dot_DataSource__pb2 -from feast.protos.feast.core import Aggregation_pb2 as feast_dot_core_dot_Aggregation__pb2 - - -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\"feast/core/StreamFeatureView.proto\x12\nfeast.core\x1a\x1egoogle/protobuf/duration.proto\x1a$feast/core/OnDemandFeatureView.proto\x1a\x1c\x66\x65\x61st/core/FeatureView.proto\x1a\x18\x66\x65\x61st/core/Feature.proto\x1a\x1b\x66\x65\x61st/core/DataSource.proto\x1a\x1c\x66\x65\x61st/core/Aggregation.proto\"o\n\x11StreamFeatureView\x12/\n\x04spec\x18\x01 \x01(\x0b\x32!.feast.core.StreamFeatureViewSpec\x12)\n\x04meta\x18\x02 \x01(\x0b\x32\x1b.feast.core.FeatureViewMeta\"\xdf\x04\n\x15StreamFeatureViewSpec\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0f\n\x07project\x18\x02 \x01(\t\x12\x10\n\x08\x65ntities\x18\x03 \x03(\t\x12+\n\x08\x66\x65\x61tures\x18\x04 \x03(\x0b\x32\x19.feast.core.FeatureSpecV2\x12\x31\n\x0e\x65ntity_columns\x18\x05 \x03(\x0b\x32\x19.feast.core.FeatureSpecV2\x12\x13\n\x0b\x64\x65scription\x18\x06 \x01(\t\x12\x39\n\x04tags\x18\x07 \x03(\x0b\x32+.feast.core.StreamFeatureViewSpec.TagsEntry\x12\r\n\x05owner\x18\x08 \x01(\t\x12&\n\x03ttl\x18\t \x01(\x0b\x32\x19.google.protobuf.Duration\x12,\n\x0c\x62\x61tch_source\x18\n \x01(\x0b\x32\x16.feast.core.DataSource\x12-\n\rstream_source\x18\x0b \x01(\x0b\x32\x16.feast.core.DataSource\x12\x0e\n\x06online\x18\x0c \x01(\x08\x12>\n\x15user_defined_function\x18\r \x01(\x0b\x32\x1f.feast.core.UserDefinedFunction\x12\x0c\n\x04mode\x18\x0e \x01(\t\x12-\n\x0c\x61ggregations\x18\x0f \x03(\x0b\x32\x17.feast.core.Aggregation\x12\x17\n\x0ftimestamp_field\x18\x10 \x01(\t\x1a+\n\tTagsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x42[\n\x10\x66\x65\x61st.proto.coreB\x16StreamFeatureViewProtoZ/github.com/feast-dev/feast/go/protos/feast/coreb\x06proto3') - -_globals = globals() -_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) -_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'feast.core.StreamFeatureView_pb2', _globals) -if _descriptor._USE_C_DESCRIPTORS == False: - - DESCRIPTOR._options = None - DESCRIPTOR._serialized_options = b'\n\020feast.proto.coreB\026StreamFeatureViewProtoZ/github.com/feast-dev/feast/go/protos/feast/core' - _STREAMFEATUREVIEWSPEC_TAGSENTRY._options = None - _STREAMFEATUREVIEWSPEC_TAGSENTRY._serialized_options = b'8\001' - _globals['_STREAMFEATUREVIEW']._serialized_start=235 - _globals['_STREAMFEATUREVIEW']._serialized_end=346 - _globals['_STREAMFEATUREVIEWSPEC']._serialized_start=349 - _globals['_STREAMFEATUREVIEWSPEC']._serialized_end=956 - _globals['_STREAMFEATUREVIEWSPEC_TAGSENTRY']._serialized_start=913 - _globals['_STREAMFEATUREVIEWSPEC_TAGSENTRY']._serialized_end=956 -# @@protoc_insertion_point(module_scope) diff --git a/sdk/python/feast/protos/feast/core/StreamFeatureView_pb2.pyi b/sdk/python/feast/protos/feast/core/StreamFeatureView_pb2.pyi deleted file mode 100644 index d46dbe45ae..0000000000 --- a/sdk/python/feast/protos/feast/core/StreamFeatureView_pb2.pyi +++ /dev/null @@ -1,153 +0,0 @@ -""" -@generated by mypy-protobuf. Do not edit manually! -isort:skip_file -""" -import builtins -import feast.core.Aggregation_pb2 -import feast.core.DataSource_pb2 -import feast.core.FeatureView_pb2 -import feast.core.Feature_pb2 -import feast.core.OnDemandFeatureView_pb2 -import google.protobuf.descriptor -import google.protobuf.duration_pb2 -import google.protobuf.internal.containers -import google.protobuf.message -import typing -import typing_extensions - -DESCRIPTOR: google.protobuf.descriptor.FileDescriptor = ... - -class StreamFeatureView(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - SPEC_FIELD_NUMBER: builtins.int - META_FIELD_NUMBER: builtins.int - @property - def spec(self) -> global___StreamFeatureViewSpec: - """User-specified specifications of this feature view.""" - pass - @property - def meta(self) -> feast.core.FeatureView_pb2.FeatureViewMeta: ... - def __init__(self, - *, - spec : typing.Optional[global___StreamFeatureViewSpec] = ..., - meta : typing.Optional[feast.core.FeatureView_pb2.FeatureViewMeta] = ..., - ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["meta",b"meta","spec",b"spec"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["meta",b"meta","spec",b"spec"]) -> None: ... -global___StreamFeatureView = StreamFeatureView - -class StreamFeatureViewSpec(google.protobuf.message.Message): - """Next available id: 17""" - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - class TagsEntry(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - KEY_FIELD_NUMBER: builtins.int - VALUE_FIELD_NUMBER: builtins.int - key: typing.Text = ... - value: typing.Text = ... - def __init__(self, - *, - key : typing.Text = ..., - value : typing.Text = ..., - ) -> None: ... - def ClearField(self, field_name: typing_extensions.Literal["key",b"key","value",b"value"]) -> None: ... - - NAME_FIELD_NUMBER: builtins.int - PROJECT_FIELD_NUMBER: builtins.int - ENTITIES_FIELD_NUMBER: builtins.int - FEATURES_FIELD_NUMBER: builtins.int - ENTITY_COLUMNS_FIELD_NUMBER: builtins.int - DESCRIPTION_FIELD_NUMBER: builtins.int - TAGS_FIELD_NUMBER: builtins.int - OWNER_FIELD_NUMBER: builtins.int - TTL_FIELD_NUMBER: builtins.int - BATCH_SOURCE_FIELD_NUMBER: builtins.int - STREAM_SOURCE_FIELD_NUMBER: builtins.int - ONLINE_FIELD_NUMBER: builtins.int - USER_DEFINED_FUNCTION_FIELD_NUMBER: builtins.int - MODE_FIELD_NUMBER: builtins.int - AGGREGATIONS_FIELD_NUMBER: builtins.int - TIMESTAMP_FIELD_FIELD_NUMBER: builtins.int - name: typing.Text = ... - """Name of the feature view. Must be unique. Not updated.""" - - project: typing.Text = ... - """Name of Feast project that this feature view belongs to.""" - - @property - def entities(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[typing.Text]: - """List of names of entities associated with this feature view.""" - pass - @property - def features(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[feast.core.Feature_pb2.FeatureSpecV2]: - """List of specifications for each feature defined as part of this feature view.""" - pass - @property - def entity_columns(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[feast.core.Feature_pb2.FeatureSpecV2]: - """List of specifications for each entity defined as part of this feature view.""" - pass - description: typing.Text = ... - """Description of the feature view.""" - - @property - def tags(self) -> google.protobuf.internal.containers.ScalarMap[typing.Text, typing.Text]: - """User defined metadata""" - pass - owner: typing.Text = ... - """Owner of the feature view.""" - - @property - def ttl(self) -> google.protobuf.duration_pb2.Duration: - """Features in this feature view can only be retrieved from online serving - younger than ttl. Ttl is measured as the duration of time between - the feature's event timestamp and when the feature is retrieved - Feature values outside ttl will be returned as unset values and indicated to end user - """ - pass - @property - def batch_source(self) -> feast.core.DataSource_pb2.DataSource: - """Batch/Offline DataSource where this view can retrieve offline feature data.""" - pass - @property - def stream_source(self) -> feast.core.DataSource_pb2.DataSource: - """Streaming DataSource from where this view can consume "online" feature data.""" - pass - online: builtins.bool = ... - """Whether these features should be served online or not""" - - @property - def user_defined_function(self) -> feast.core.OnDemandFeatureView_pb2.UserDefinedFunction: - """Serialized function that is encoded in the streamfeatureview""" - pass - mode: typing.Text = ... - """Mode of execution""" - - @property - def aggregations(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[feast.core.Aggregation_pb2.Aggregation]: - """Aggregation definitions""" - pass - timestamp_field: typing.Text = ... - """Timestamp field for aggregation""" - - def __init__(self, - *, - name : typing.Text = ..., - project : typing.Text = ..., - entities : typing.Optional[typing.Iterable[typing.Text]] = ..., - features : typing.Optional[typing.Iterable[feast.core.Feature_pb2.FeatureSpecV2]] = ..., - entity_columns : typing.Optional[typing.Iterable[feast.core.Feature_pb2.FeatureSpecV2]] = ..., - description : typing.Text = ..., - tags : typing.Optional[typing.Mapping[typing.Text, typing.Text]] = ..., - owner : typing.Text = ..., - ttl : typing.Optional[google.protobuf.duration_pb2.Duration] = ..., - batch_source : typing.Optional[feast.core.DataSource_pb2.DataSource] = ..., - stream_source : typing.Optional[feast.core.DataSource_pb2.DataSource] = ..., - online : builtins.bool = ..., - user_defined_function : typing.Optional[feast.core.OnDemandFeatureView_pb2.UserDefinedFunction] = ..., - mode : typing.Text = ..., - aggregations : typing.Optional[typing.Iterable[feast.core.Aggregation_pb2.Aggregation]] = ..., - timestamp_field : typing.Text = ..., - ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["batch_source",b"batch_source","stream_source",b"stream_source","ttl",b"ttl","user_defined_function",b"user_defined_function"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["aggregations",b"aggregations","batch_source",b"batch_source","description",b"description","entities",b"entities","entity_columns",b"entity_columns","features",b"features","mode",b"mode","name",b"name","online",b"online","owner",b"owner","project",b"project","stream_source",b"stream_source","tags",b"tags","timestamp_field",b"timestamp_field","ttl",b"ttl","user_defined_function",b"user_defined_function"]) -> None: ... -global___StreamFeatureViewSpec = StreamFeatureViewSpec diff --git a/sdk/python/feast/protos/feast/core/StreamFeatureView_pb2_grpc.py b/sdk/python/feast/protos/feast/core/StreamFeatureView_pb2_grpc.py deleted file mode 100644 index 2daafffebf..0000000000 --- a/sdk/python/feast/protos/feast/core/StreamFeatureView_pb2_grpc.py +++ /dev/null @@ -1,4 +0,0 @@ -# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! -"""Client and server classes corresponding to protobuf-defined services.""" -import grpc - diff --git a/sdk/python/feast/protos/feast/core/ValidationProfile_pb2.py b/sdk/python/feast/protos/feast/core/ValidationProfile_pb2.py deleted file mode 100644 index a82d7a4f0b..0000000000 --- a/sdk/python/feast/protos/feast/core/ValidationProfile_pb2.py +++ /dev/null @@ -1,37 +0,0 @@ -# -*- coding: utf-8 -*- -# Generated by the protocol buffer compiler. DO NOT EDIT! -# source: feast/core/ValidationProfile.proto -"""Generated protocol buffer code.""" -from google.protobuf import descriptor as _descriptor -from google.protobuf import descriptor_pool as _descriptor_pool -from google.protobuf import symbol_database as _symbol_database -from google.protobuf.internal import builder as _builder -# @@protoc_insertion_point(imports) - -_sym_db = _symbol_database.Default() - - - - -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\"feast/core/ValidationProfile.proto\x12\nfeast.core\"\x83\x01\n\x14GEValidationProfiler\x12\x46\n\x08profiler\x18\x01 \x01(\x0b\x32\x34.feast.core.GEValidationProfiler.UserDefinedProfiler\x1a#\n\x13UserDefinedProfiler\x12\x0c\n\x04\x62ody\x18\x01 \x01(\x0c\"0\n\x13GEValidationProfile\x12\x19\n\x11\x65xpectation_suite\x18\x01 \x01(\x0c\"\xdd\x02\n\x13ValidationReference\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x1e\n\x16reference_dataset_name\x18\x02 \x01(\t\x12\x0f\n\x07project\x18\x03 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x04 \x01(\t\x12\x37\n\x04tags\x18\x05 \x03(\x0b\x32).feast.core.ValidationReference.TagsEntry\x12\x37\n\x0bge_profiler\x18\x06 \x01(\x0b\x32 .feast.core.GEValidationProfilerH\x00\x12\x35\n\nge_profile\x18\x07 \x01(\x0b\x32\x1f.feast.core.GEValidationProfileH\x01\x1a+\n\tTagsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x42\n\n\x08profilerB\x10\n\x0e\x63\x61\x63hed_profileBV\n\x10\x66\x65\x61st.proto.coreB\x11ValidationProfileZ/github.com/feast-dev/feast/go/protos/feast/coreb\x06proto3') - -_globals = globals() -_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) -_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'feast.core.ValidationProfile_pb2', _globals) -if _descriptor._USE_C_DESCRIPTORS == False: - - DESCRIPTOR._options = None - DESCRIPTOR._serialized_options = b'\n\020feast.proto.coreB\021ValidationProfileZ/github.com/feast-dev/feast/go/protos/feast/core' - _VALIDATIONREFERENCE_TAGSENTRY._options = None - _VALIDATIONREFERENCE_TAGSENTRY._serialized_options = b'8\001' - _globals['_GEVALIDATIONPROFILER']._serialized_start=51 - _globals['_GEVALIDATIONPROFILER']._serialized_end=182 - _globals['_GEVALIDATIONPROFILER_USERDEFINEDPROFILER']._serialized_start=147 - _globals['_GEVALIDATIONPROFILER_USERDEFINEDPROFILER']._serialized_end=182 - _globals['_GEVALIDATIONPROFILE']._serialized_start=184 - _globals['_GEVALIDATIONPROFILE']._serialized_end=232 - _globals['_VALIDATIONREFERENCE']._serialized_start=235 - _globals['_VALIDATIONREFERENCE']._serialized_end=584 - _globals['_VALIDATIONREFERENCE_TAGSENTRY']._serialized_start=511 - _globals['_VALIDATIONREFERENCE_TAGSENTRY']._serialized_end=554 -# @@protoc_insertion_point(module_scope) diff --git a/sdk/python/feast/protos/feast/core/ValidationProfile_pb2.pyi b/sdk/python/feast/protos/feast/core/ValidationProfile_pb2.pyi deleted file mode 100644 index 321f2c7ea3..0000000000 --- a/sdk/python/feast/protos/feast/core/ValidationProfile_pb2.pyi +++ /dev/null @@ -1,110 +0,0 @@ -""" -@generated by mypy-protobuf. Do not edit manually! -isort:skip_file -""" -import builtins -import google.protobuf.descriptor -import google.protobuf.internal.containers -import google.protobuf.message -import typing -import typing_extensions - -DESCRIPTOR: google.protobuf.descriptor.FileDescriptor = ... - -class GEValidationProfiler(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - class UserDefinedProfiler(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - BODY_FIELD_NUMBER: builtins.int - body: builtins.bytes = ... - """The python-syntax function body (serialized by dill)""" - - def __init__(self, - *, - body : builtins.bytes = ..., - ) -> None: ... - def ClearField(self, field_name: typing_extensions.Literal["body",b"body"]) -> None: ... - - PROFILER_FIELD_NUMBER: builtins.int - @property - def profiler(self) -> global___GEValidationProfiler.UserDefinedProfiler: ... - def __init__(self, - *, - profiler : typing.Optional[global___GEValidationProfiler.UserDefinedProfiler] = ..., - ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["profiler",b"profiler"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["profiler",b"profiler"]) -> None: ... -global___GEValidationProfiler = GEValidationProfiler - -class GEValidationProfile(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - EXPECTATION_SUITE_FIELD_NUMBER: builtins.int - expectation_suite: builtins.bytes = ... - """JSON-serialized ExpectationSuite object""" - - def __init__(self, - *, - expectation_suite : builtins.bytes = ..., - ) -> None: ... - def ClearField(self, field_name: typing_extensions.Literal["expectation_suite",b"expectation_suite"]) -> None: ... -global___GEValidationProfile = GEValidationProfile - -class ValidationReference(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - class TagsEntry(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - KEY_FIELD_NUMBER: builtins.int - VALUE_FIELD_NUMBER: builtins.int - key: typing.Text = ... - value: typing.Text = ... - def __init__(self, - *, - key : typing.Text = ..., - value : typing.Text = ..., - ) -> None: ... - def ClearField(self, field_name: typing_extensions.Literal["key",b"key","value",b"value"]) -> None: ... - - NAME_FIELD_NUMBER: builtins.int - REFERENCE_DATASET_NAME_FIELD_NUMBER: builtins.int - PROJECT_FIELD_NUMBER: builtins.int - DESCRIPTION_FIELD_NUMBER: builtins.int - TAGS_FIELD_NUMBER: builtins.int - GE_PROFILER_FIELD_NUMBER: builtins.int - GE_PROFILE_FIELD_NUMBER: builtins.int - name: typing.Text = ... - """Unique name of validation reference within the project""" - - reference_dataset_name: typing.Text = ... - """Name of saved dataset used as reference dataset""" - - project: typing.Text = ... - """Name of Feast project that this object source belongs to""" - - description: typing.Text = ... - """Description of the validation reference""" - - @property - def tags(self) -> google.protobuf.internal.containers.ScalarMap[typing.Text, typing.Text]: - """User defined metadata""" - pass - @property - def ge_profiler(self) -> global___GEValidationProfiler: ... - @property - def ge_profile(self) -> global___GEValidationProfile: ... - def __init__(self, - *, - name : typing.Text = ..., - reference_dataset_name : typing.Text = ..., - project : typing.Text = ..., - description : typing.Text = ..., - tags : typing.Optional[typing.Mapping[typing.Text, typing.Text]] = ..., - ge_profiler : typing.Optional[global___GEValidationProfiler] = ..., - ge_profile : typing.Optional[global___GEValidationProfile] = ..., - ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["cached_profile",b"cached_profile","ge_profile",b"ge_profile","ge_profiler",b"ge_profiler","profiler",b"profiler"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["cached_profile",b"cached_profile","description",b"description","ge_profile",b"ge_profile","ge_profiler",b"ge_profiler","name",b"name","profiler",b"profiler","project",b"project","reference_dataset_name",b"reference_dataset_name","tags",b"tags"]) -> None: ... - @typing.overload - def WhichOneof(self, oneof_group: typing_extensions.Literal["cached_profile",b"cached_profile"]) -> typing.Optional[typing_extensions.Literal["ge_profile"]]: ... - @typing.overload - def WhichOneof(self, oneof_group: typing_extensions.Literal["profiler",b"profiler"]) -> typing.Optional[typing_extensions.Literal["ge_profiler"]]: ... -global___ValidationReference = ValidationReference diff --git a/sdk/python/feast/protos/feast/core/ValidationProfile_pb2_grpc.py b/sdk/python/feast/protos/feast/core/ValidationProfile_pb2_grpc.py deleted file mode 100644 index 2daafffebf..0000000000 --- a/sdk/python/feast/protos/feast/core/ValidationProfile_pb2_grpc.py +++ /dev/null @@ -1,4 +0,0 @@ -# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! -"""Client and server classes corresponding to protobuf-defined services.""" -import grpc - diff --git a/sdk/python/feast/protos/feast/core/__init__.py b/sdk/python/feast/protos/feast/core/__init__.py deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/sdk/python/feast/protos/feast/serving/Connector_pb2.py b/sdk/python/feast/protos/feast/serving/Connector_pb2.py deleted file mode 100644 index 8b5516eaba..0000000000 --- a/sdk/python/feast/protos/feast/serving/Connector_pb2.py +++ /dev/null @@ -1,39 +0,0 @@ -# -*- coding: utf-8 -*- -# Generated by the protocol buffer compiler. DO NOT EDIT! -# source: feast/serving/Connector.proto -"""Generated protocol buffer code.""" -from google.protobuf import descriptor as _descriptor -from google.protobuf import descriptor_pool as _descriptor_pool -from google.protobuf import symbol_database as _symbol_database -from google.protobuf.internal import builder as _builder -# @@protoc_insertion_point(imports) - -_sym_db = _symbol_database.Default() - - -from google.protobuf import timestamp_pb2 as google_dot_protobuf_dot_timestamp__pb2 -from feast.protos.feast.types import Value_pb2 as feast_dot_types_dot_Value__pb2 -from feast.protos.feast.types import EntityKey_pb2 as feast_dot_types_dot_EntityKey__pb2 -from feast.protos.feast.serving import ServingService_pb2 as feast_dot_serving_dot_ServingService__pb2 - - -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1d\x66\x65\x61st/serving/Connector.proto\x12\x0egrpc.connector\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x17\x66\x65\x61st/types/Value.proto\x1a\x1b\x66\x65\x61st/types/EntityKey.proto\x1a\"feast/serving/ServingService.proto\"\x9a\x01\n\x10\x43onnectorFeature\x12\x34\n\treference\x18\x01 \x01(\x0b\x32!.feast.serving.FeatureReferenceV2\x12-\n\ttimestamp\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12!\n\x05value\x18\x03 \x01(\x0b\x32\x12.feast.types.Value\"M\n\x14\x43onnectorFeatureList\x12\x35\n\x0b\x66\x65\x61tureList\x18\x01 \x03(\x0b\x32 .grpc.connector.ConnectorFeature\"_\n\x11OnlineReadRequest\x12*\n\nentityKeys\x18\x01 \x03(\x0b\x32\x16.feast.types.EntityKey\x12\x0c\n\x04view\x18\x02 \x01(\t\x12\x10\n\x08\x66\x65\x61tures\x18\x03 \x03(\t\"K\n\x12OnlineReadResponse\x12\x35\n\x07results\x18\x01 \x03(\x0b\x32$.grpc.connector.ConnectorFeatureList2b\n\x0bOnlineStore\x12S\n\nOnlineRead\x12!.grpc.connector.OnlineReadRequest\x1a\".grpc.connector.OnlineReadResponseB4Z2github.com/feast-dev/feast/go/protos/feast/servingb\x06proto3') - -_globals = globals() -_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) -_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'feast.serving.Connector_pb2', _globals) -if _descriptor._USE_C_DESCRIPTORS == False: - - DESCRIPTOR._options = None - DESCRIPTOR._serialized_options = b'Z2github.com/feast-dev/feast/go/protos/feast/serving' - _globals['_CONNECTORFEATURE']._serialized_start=173 - _globals['_CONNECTORFEATURE']._serialized_end=327 - _globals['_CONNECTORFEATURELIST']._serialized_start=329 - _globals['_CONNECTORFEATURELIST']._serialized_end=406 - _globals['_ONLINEREADREQUEST']._serialized_start=408 - _globals['_ONLINEREADREQUEST']._serialized_end=503 - _globals['_ONLINEREADRESPONSE']._serialized_start=505 - _globals['_ONLINEREADRESPONSE']._serialized_end=580 - _globals['_ONLINESTORE']._serialized_start=582 - _globals['_ONLINESTORE']._serialized_end=680 -# @@protoc_insertion_point(module_scope) diff --git a/sdk/python/feast/protos/feast/serving/Connector_pb2.pyi b/sdk/python/feast/protos/feast/serving/Connector_pb2.pyi deleted file mode 100644 index 1ada5c5a7e..0000000000 --- a/sdk/python/feast/protos/feast/serving/Connector_pb2.pyi +++ /dev/null @@ -1,80 +0,0 @@ -""" -@generated by mypy-protobuf. Do not edit manually! -isort:skip_file -""" -import builtins -import feast.serving.ServingService_pb2 -import feast.types.EntityKey_pb2 -import feast.types.Value_pb2 -import google.protobuf.descriptor -import google.protobuf.internal.containers -import google.protobuf.message -import google.protobuf.timestamp_pb2 -import typing -import typing_extensions - -DESCRIPTOR: google.protobuf.descriptor.FileDescriptor = ... - -class ConnectorFeature(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - REFERENCE_FIELD_NUMBER: builtins.int - TIMESTAMP_FIELD_NUMBER: builtins.int - VALUE_FIELD_NUMBER: builtins.int - @property - def reference(self) -> feast.serving.ServingService_pb2.FeatureReferenceV2: ... - @property - def timestamp(self) -> google.protobuf.timestamp_pb2.Timestamp: ... - @property - def value(self) -> feast.types.Value_pb2.Value: ... - def __init__(self, - *, - reference : typing.Optional[feast.serving.ServingService_pb2.FeatureReferenceV2] = ..., - timestamp : typing.Optional[google.protobuf.timestamp_pb2.Timestamp] = ..., - value : typing.Optional[feast.types.Value_pb2.Value] = ..., - ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["reference",b"reference","timestamp",b"timestamp","value",b"value"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["reference",b"reference","timestamp",b"timestamp","value",b"value"]) -> None: ... -global___ConnectorFeature = ConnectorFeature - -class ConnectorFeatureList(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - FEATURELIST_FIELD_NUMBER: builtins.int - @property - def featureList(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___ConnectorFeature]: ... - def __init__(self, - *, - featureList : typing.Optional[typing.Iterable[global___ConnectorFeature]] = ..., - ) -> None: ... - def ClearField(self, field_name: typing_extensions.Literal["featureList",b"featureList"]) -> None: ... -global___ConnectorFeatureList = ConnectorFeatureList - -class OnlineReadRequest(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - ENTITYKEYS_FIELD_NUMBER: builtins.int - VIEW_FIELD_NUMBER: builtins.int - FEATURES_FIELD_NUMBER: builtins.int - @property - def entityKeys(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[feast.types.EntityKey_pb2.EntityKey]: ... - view: typing.Text = ... - @property - def features(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[typing.Text]: ... - def __init__(self, - *, - entityKeys : typing.Optional[typing.Iterable[feast.types.EntityKey_pb2.EntityKey]] = ..., - view : typing.Text = ..., - features : typing.Optional[typing.Iterable[typing.Text]] = ..., - ) -> None: ... - def ClearField(self, field_name: typing_extensions.Literal["entityKeys",b"entityKeys","features",b"features","view",b"view"]) -> None: ... -global___OnlineReadRequest = OnlineReadRequest - -class OnlineReadResponse(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - RESULTS_FIELD_NUMBER: builtins.int - @property - def results(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___ConnectorFeatureList]: ... - def __init__(self, - *, - results : typing.Optional[typing.Iterable[global___ConnectorFeatureList]] = ..., - ) -> None: ... - def ClearField(self, field_name: typing_extensions.Literal["results",b"results"]) -> None: ... -global___OnlineReadResponse = OnlineReadResponse diff --git a/sdk/python/feast/protos/feast/serving/Connector_pb2_grpc.py b/sdk/python/feast/protos/feast/serving/Connector_pb2_grpc.py deleted file mode 100644 index dfadf982dd..0000000000 --- a/sdk/python/feast/protos/feast/serving/Connector_pb2_grpc.py +++ /dev/null @@ -1,66 +0,0 @@ -# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! -"""Client and server classes corresponding to protobuf-defined services.""" -import grpc - -from feast.protos.feast.serving import Connector_pb2 as feast_dot_serving_dot_Connector__pb2 - - -class OnlineStoreStub(object): - """Missing associated documentation comment in .proto file.""" - - def __init__(self, channel): - """Constructor. - - Args: - channel: A grpc.Channel. - """ - self.OnlineRead = channel.unary_unary( - '/grpc.connector.OnlineStore/OnlineRead', - request_serializer=feast_dot_serving_dot_Connector__pb2.OnlineReadRequest.SerializeToString, - response_deserializer=feast_dot_serving_dot_Connector__pb2.OnlineReadResponse.FromString, - ) - - -class OnlineStoreServicer(object): - """Missing associated documentation comment in .proto file.""" - - def OnlineRead(self, request, context): - """Missing associated documentation comment in .proto file.""" - context.set_code(grpc.StatusCode.UNIMPLEMENTED) - context.set_details('Method not implemented!') - raise NotImplementedError('Method not implemented!') - - -def add_OnlineStoreServicer_to_server(servicer, server): - rpc_method_handlers = { - 'OnlineRead': grpc.unary_unary_rpc_method_handler( - servicer.OnlineRead, - request_deserializer=feast_dot_serving_dot_Connector__pb2.OnlineReadRequest.FromString, - response_serializer=feast_dot_serving_dot_Connector__pb2.OnlineReadResponse.SerializeToString, - ), - } - generic_handler = grpc.method_handlers_generic_handler( - 'grpc.connector.OnlineStore', rpc_method_handlers) - server.add_generic_rpc_handlers((generic_handler,)) - - - # This class is part of an EXPERIMENTAL API. -class OnlineStore(object): - """Missing associated documentation comment in .proto file.""" - - @staticmethod - def OnlineRead(request, - target, - options=(), - channel_credentials=None, - call_credentials=None, - insecure=False, - compression=None, - wait_for_ready=None, - timeout=None, - metadata=None): - return grpc.experimental.unary_unary(request, target, '/grpc.connector.OnlineStore/OnlineRead', - feast_dot_serving_dot_Connector__pb2.OnlineReadRequest.SerializeToString, - feast_dot_serving_dot_Connector__pb2.OnlineReadResponse.FromString, - options, channel_credentials, - insecure, call_credentials, compression, wait_for_ready, timeout, metadata) diff --git a/sdk/python/feast/protos/feast/serving/GrpcServer_pb2.py b/sdk/python/feast/protos/feast/serving/GrpcServer_pb2.py deleted file mode 100644 index 7a7b9c151b..0000000000 --- a/sdk/python/feast/protos/feast/serving/GrpcServer_pb2.py +++ /dev/null @@ -1,42 +0,0 @@ -# -*- coding: utf-8 -*- -# Generated by the protocol buffer compiler. DO NOT EDIT! -# source: feast/serving/GrpcServer.proto -"""Generated protocol buffer code.""" -from google.protobuf import descriptor as _descriptor -from google.protobuf import descriptor_pool as _descriptor_pool -from google.protobuf import symbol_database as _symbol_database -from google.protobuf.internal import builder as _builder -# @@protoc_insertion_point(imports) - -_sym_db = _symbol_database.Default() - - - - -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1e\x66\x65\x61st/serving/GrpcServer.proto\"\xb3\x01\n\x0bPushRequest\x12,\n\x08\x66\x65\x61tures\x18\x01 \x03(\x0b\x32\x1a.PushRequest.FeaturesEntry\x12\x1b\n\x13stream_feature_view\x18\x02 \x01(\t\x12\x1c\n\x14\x61llow_registry_cache\x18\x03 \x01(\x08\x12\n\n\x02to\x18\x04 \x01(\t\x1a/\n\rFeaturesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\x1e\n\x0cPushResponse\x12\x0e\n\x06status\x18\x01 \x01(\x08\"\xc1\x01\n\x19WriteToOnlineStoreRequest\x12:\n\x08\x66\x65\x61tures\x18\x01 \x03(\x0b\x32(.WriteToOnlineStoreRequest.FeaturesEntry\x12\x19\n\x11\x66\x65\x61ture_view_name\x18\x02 \x01(\t\x12\x1c\n\x14\x61llow_registry_cache\x18\x03 \x01(\x08\x1a/\n\rFeaturesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\",\n\x1aWriteToOnlineStoreResponse\x12\x0e\n\x06status\x18\x01 \x01(\x08\x32\x89\x01\n\x11GrpcFeatureServer\x12%\n\x04Push\x12\x0c.PushRequest\x1a\r.PushResponse\"\x00\x12M\n\x12WriteToOnlineStore\x12\x1a.WriteToOnlineStoreRequest\x1a\x1b.WriteToOnlineStoreResponseb\x06proto3') - -_globals = globals() -_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) -_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'feast.serving.GrpcServer_pb2', _globals) -if _descriptor._USE_C_DESCRIPTORS == False: - - DESCRIPTOR._options = None - _PUSHREQUEST_FEATURESENTRY._options = None - _PUSHREQUEST_FEATURESENTRY._serialized_options = b'8\001' - _WRITETOONLINESTOREREQUEST_FEATURESENTRY._options = None - _WRITETOONLINESTOREREQUEST_FEATURESENTRY._serialized_options = b'8\001' - _globals['_PUSHREQUEST']._serialized_start=35 - _globals['_PUSHREQUEST']._serialized_end=214 - _globals['_PUSHREQUEST_FEATURESENTRY']._serialized_start=167 - _globals['_PUSHREQUEST_FEATURESENTRY']._serialized_end=214 - _globals['_PUSHRESPONSE']._serialized_start=216 - _globals['_PUSHRESPONSE']._serialized_end=246 - _globals['_WRITETOONLINESTOREREQUEST']._serialized_start=249 - _globals['_WRITETOONLINESTOREREQUEST']._serialized_end=442 - _globals['_WRITETOONLINESTOREREQUEST_FEATURESENTRY']._serialized_start=167 - _globals['_WRITETOONLINESTOREREQUEST_FEATURESENTRY']._serialized_end=214 - _globals['_WRITETOONLINESTORERESPONSE']._serialized_start=444 - _globals['_WRITETOONLINESTORERESPONSE']._serialized_end=488 - _globals['_GRPCFEATURESERVER']._serialized_start=491 - _globals['_GRPCFEATURESERVER']._serialized_end=628 -# @@protoc_insertion_point(module_scope) diff --git a/sdk/python/feast/protos/feast/serving/GrpcServer_pb2.pyi b/sdk/python/feast/protos/feast/serving/GrpcServer_pb2.pyi deleted file mode 100644 index e096ee59bd..0000000000 --- a/sdk/python/feast/protos/feast/serving/GrpcServer_pb2.pyi +++ /dev/null @@ -1,99 +0,0 @@ -""" -@generated by mypy-protobuf. Do not edit manually! -isort:skip_file -""" -import builtins -import google.protobuf.descriptor -import google.protobuf.internal.containers -import google.protobuf.message -import typing -import typing_extensions - -DESCRIPTOR: google.protobuf.descriptor.FileDescriptor = ... - -class PushRequest(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - class FeaturesEntry(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - KEY_FIELD_NUMBER: builtins.int - VALUE_FIELD_NUMBER: builtins.int - key: typing.Text = ... - value: typing.Text = ... - def __init__(self, - *, - key : typing.Text = ..., - value : typing.Text = ..., - ) -> None: ... - def ClearField(self, field_name: typing_extensions.Literal["key",b"key","value",b"value"]) -> None: ... - - FEATURES_FIELD_NUMBER: builtins.int - STREAM_FEATURE_VIEW_FIELD_NUMBER: builtins.int - ALLOW_REGISTRY_CACHE_FIELD_NUMBER: builtins.int - TO_FIELD_NUMBER: builtins.int - @property - def features(self) -> google.protobuf.internal.containers.ScalarMap[typing.Text, typing.Text]: ... - stream_feature_view: typing.Text = ... - allow_registry_cache: builtins.bool = ... - to: typing.Text = ... - def __init__(self, - *, - features : typing.Optional[typing.Mapping[typing.Text, typing.Text]] = ..., - stream_feature_view : typing.Text = ..., - allow_registry_cache : builtins.bool = ..., - to : typing.Text = ..., - ) -> None: ... - def ClearField(self, field_name: typing_extensions.Literal["allow_registry_cache",b"allow_registry_cache","features",b"features","stream_feature_view",b"stream_feature_view","to",b"to"]) -> None: ... -global___PushRequest = PushRequest - -class PushResponse(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - STATUS_FIELD_NUMBER: builtins.int - status: builtins.bool = ... - def __init__(self, - *, - status : builtins.bool = ..., - ) -> None: ... - def ClearField(self, field_name: typing_extensions.Literal["status",b"status"]) -> None: ... -global___PushResponse = PushResponse - -class WriteToOnlineStoreRequest(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - class FeaturesEntry(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - KEY_FIELD_NUMBER: builtins.int - VALUE_FIELD_NUMBER: builtins.int - key: typing.Text = ... - value: typing.Text = ... - def __init__(self, - *, - key : typing.Text = ..., - value : typing.Text = ..., - ) -> None: ... - def ClearField(self, field_name: typing_extensions.Literal["key",b"key","value",b"value"]) -> None: ... - - FEATURES_FIELD_NUMBER: builtins.int - FEATURE_VIEW_NAME_FIELD_NUMBER: builtins.int - ALLOW_REGISTRY_CACHE_FIELD_NUMBER: builtins.int - @property - def features(self) -> google.protobuf.internal.containers.ScalarMap[typing.Text, typing.Text]: ... - feature_view_name: typing.Text = ... - allow_registry_cache: builtins.bool = ... - def __init__(self, - *, - features : typing.Optional[typing.Mapping[typing.Text, typing.Text]] = ..., - feature_view_name : typing.Text = ..., - allow_registry_cache : builtins.bool = ..., - ) -> None: ... - def ClearField(self, field_name: typing_extensions.Literal["allow_registry_cache",b"allow_registry_cache","feature_view_name",b"feature_view_name","features",b"features"]) -> None: ... -global___WriteToOnlineStoreRequest = WriteToOnlineStoreRequest - -class WriteToOnlineStoreResponse(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - STATUS_FIELD_NUMBER: builtins.int - status: builtins.bool = ... - def __init__(self, - *, - status : builtins.bool = ..., - ) -> None: ... - def ClearField(self, field_name: typing_extensions.Literal["status",b"status"]) -> None: ... -global___WriteToOnlineStoreResponse = WriteToOnlineStoreResponse diff --git a/sdk/python/feast/protos/feast/serving/GrpcServer_pb2_grpc.py b/sdk/python/feast/protos/feast/serving/GrpcServer_pb2_grpc.py deleted file mode 100644 index 882030d7e6..0000000000 --- a/sdk/python/feast/protos/feast/serving/GrpcServer_pb2_grpc.py +++ /dev/null @@ -1,99 +0,0 @@ -# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! -"""Client and server classes corresponding to protobuf-defined services.""" -import grpc - -from feast.protos.feast.serving import GrpcServer_pb2 as feast_dot_serving_dot_GrpcServer__pb2 - - -class GrpcFeatureServerStub(object): - """Missing associated documentation comment in .proto file.""" - - def __init__(self, channel): - """Constructor. - - Args: - channel: A grpc.Channel. - """ - self.Push = channel.unary_unary( - '/GrpcFeatureServer/Push', - request_serializer=feast_dot_serving_dot_GrpcServer__pb2.PushRequest.SerializeToString, - response_deserializer=feast_dot_serving_dot_GrpcServer__pb2.PushResponse.FromString, - ) - self.WriteToOnlineStore = channel.unary_unary( - '/GrpcFeatureServer/WriteToOnlineStore', - request_serializer=feast_dot_serving_dot_GrpcServer__pb2.WriteToOnlineStoreRequest.SerializeToString, - response_deserializer=feast_dot_serving_dot_GrpcServer__pb2.WriteToOnlineStoreResponse.FromString, - ) - - -class GrpcFeatureServerServicer(object): - """Missing associated documentation comment in .proto file.""" - - def Push(self, request, context): - """Missing associated documentation comment in .proto file.""" - context.set_code(grpc.StatusCode.UNIMPLEMENTED) - context.set_details('Method not implemented!') - raise NotImplementedError('Method not implemented!') - - def WriteToOnlineStore(self, request, context): - """Missing associated documentation comment in .proto file.""" - context.set_code(grpc.StatusCode.UNIMPLEMENTED) - context.set_details('Method not implemented!') - raise NotImplementedError('Method not implemented!') - - -def add_GrpcFeatureServerServicer_to_server(servicer, server): - rpc_method_handlers = { - 'Push': grpc.unary_unary_rpc_method_handler( - servicer.Push, - request_deserializer=feast_dot_serving_dot_GrpcServer__pb2.PushRequest.FromString, - response_serializer=feast_dot_serving_dot_GrpcServer__pb2.PushResponse.SerializeToString, - ), - 'WriteToOnlineStore': grpc.unary_unary_rpc_method_handler( - servicer.WriteToOnlineStore, - request_deserializer=feast_dot_serving_dot_GrpcServer__pb2.WriteToOnlineStoreRequest.FromString, - response_serializer=feast_dot_serving_dot_GrpcServer__pb2.WriteToOnlineStoreResponse.SerializeToString, - ), - } - generic_handler = grpc.method_handlers_generic_handler( - 'GrpcFeatureServer', rpc_method_handlers) - server.add_generic_rpc_handlers((generic_handler,)) - - - # This class is part of an EXPERIMENTAL API. -class GrpcFeatureServer(object): - """Missing associated documentation comment in .proto file.""" - - @staticmethod - def Push(request, - target, - options=(), - channel_credentials=None, - call_credentials=None, - insecure=False, - compression=None, - wait_for_ready=None, - timeout=None, - metadata=None): - return grpc.experimental.unary_unary(request, target, '/GrpcFeatureServer/Push', - feast_dot_serving_dot_GrpcServer__pb2.PushRequest.SerializeToString, - feast_dot_serving_dot_GrpcServer__pb2.PushResponse.FromString, - options, channel_credentials, - insecure, call_credentials, compression, wait_for_ready, timeout, metadata) - - @staticmethod - def WriteToOnlineStore(request, - target, - options=(), - channel_credentials=None, - call_credentials=None, - insecure=False, - compression=None, - wait_for_ready=None, - timeout=None, - metadata=None): - return grpc.experimental.unary_unary(request, target, '/GrpcFeatureServer/WriteToOnlineStore', - feast_dot_serving_dot_GrpcServer__pb2.WriteToOnlineStoreRequest.SerializeToString, - feast_dot_serving_dot_GrpcServer__pb2.WriteToOnlineStoreResponse.FromString, - options, channel_credentials, - insecure, call_credentials, compression, wait_for_ready, timeout, metadata) diff --git a/sdk/python/feast/protos/feast/serving/ServingService_pb2.py b/sdk/python/feast/protos/feast/serving/ServingService_pb2.py deleted file mode 100644 index d6fde97481..0000000000 --- a/sdk/python/feast/protos/feast/serving/ServingService_pb2.py +++ /dev/null @@ -1,63 +0,0 @@ -# -*- coding: utf-8 -*- -# Generated by the protocol buffer compiler. DO NOT EDIT! -# source: feast/serving/ServingService.proto -"""Generated protocol buffer code.""" -from google.protobuf import descriptor as _descriptor -from google.protobuf import descriptor_pool as _descriptor_pool -from google.protobuf import symbol_database as _symbol_database -from google.protobuf.internal import builder as _builder -# @@protoc_insertion_point(imports) - -_sym_db = _symbol_database.Default() - - -from google.protobuf import timestamp_pb2 as google_dot_protobuf_dot_timestamp__pb2 -from feast.protos.feast.types import Value_pb2 as feast_dot_types_dot_Value__pb2 - - -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\"feast/serving/ServingService.proto\x12\rfeast.serving\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x17\x66\x65\x61st/types/Value.proto\"\x1c\n\x1aGetFeastServingInfoRequest\".\n\x1bGetFeastServingInfoResponse\x12\x0f\n\x07version\x18\x01 \x01(\t\"E\n\x12\x46\x65\x61tureReferenceV2\x12\x19\n\x11\x66\x65\x61ture_view_name\x18\x01 \x01(\t\x12\x14\n\x0c\x66\x65\x61ture_name\x18\x02 \x01(\t\"\xfd\x02\n\x1aGetOnlineFeaturesRequestV2\x12\x33\n\x08\x66\x65\x61tures\x18\x04 \x03(\x0b\x32!.feast.serving.FeatureReferenceV2\x12H\n\x0b\x65ntity_rows\x18\x02 \x03(\x0b\x32\x33.feast.serving.GetOnlineFeaturesRequestV2.EntityRow\x12\x0f\n\x07project\x18\x05 \x01(\t\x1a\xce\x01\n\tEntityRow\x12-\n\ttimestamp\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12O\n\x06\x66ields\x18\x02 \x03(\x0b\x32?.feast.serving.GetOnlineFeaturesRequestV2.EntityRow.FieldsEntry\x1a\x41\n\x0b\x46ieldsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12!\n\x05value\x18\x02 \x01(\x0b\x32\x12.feast.types.Value:\x02\x38\x01\"\x1a\n\x0b\x46\x65\x61tureList\x12\x0b\n\x03val\x18\x01 \x03(\t\"\xc8\x03\n\x18GetOnlineFeaturesRequest\x12\x19\n\x0f\x66\x65\x61ture_service\x18\x01 \x01(\tH\x00\x12.\n\x08\x66\x65\x61tures\x18\x02 \x01(\x0b\x32\x1a.feast.serving.FeatureListH\x00\x12G\n\x08\x65ntities\x18\x03 \x03(\x0b\x32\x35.feast.serving.GetOnlineFeaturesRequest.EntitiesEntry\x12\x1a\n\x12\x66ull_feature_names\x18\x04 \x01(\x08\x12T\n\x0frequest_context\x18\x05 \x03(\x0b\x32;.feast.serving.GetOnlineFeaturesRequest.RequestContextEntry\x1aK\n\rEntitiesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12)\n\x05value\x18\x02 \x01(\x0b\x32\x1a.feast.types.RepeatedValue:\x02\x38\x01\x1aQ\n\x13RequestContextEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12)\n\x05value\x18\x02 \x01(\x0b\x32\x1a.feast.types.RepeatedValue:\x02\x38\x01\x42\x06\n\x04kind\"\xc2\x02\n\x19GetOnlineFeaturesResponse\x12\x42\n\x08metadata\x18\x01 \x01(\x0b\x32\x30.feast.serving.GetOnlineFeaturesResponseMetadata\x12G\n\x07results\x18\x02 \x03(\x0b\x32\x36.feast.serving.GetOnlineFeaturesResponse.FeatureVector\x1a\x97\x01\n\rFeatureVector\x12\"\n\x06values\x18\x01 \x03(\x0b\x32\x12.feast.types.Value\x12,\n\x08statuses\x18\x02 \x03(\x0e\x32\x1a.feast.serving.FieldStatus\x12\x34\n\x10\x65vent_timestamps\x18\x03 \x03(\x0b\x32\x1a.google.protobuf.Timestamp\"V\n!GetOnlineFeaturesResponseMetadata\x12\x31\n\rfeature_names\x18\x01 \x01(\x0b\x32\x1a.feast.serving.FeatureList*[\n\x0b\x46ieldStatus\x12\x0b\n\x07INVALID\x10\x00\x12\x0b\n\x07PRESENT\x10\x01\x12\x0e\n\nNULL_VALUE\x10\x02\x12\r\n\tNOT_FOUND\x10\x03\x12\x13\n\x0fOUTSIDE_MAX_AGE\x10\x04\x32\xe6\x01\n\x0eServingService\x12l\n\x13GetFeastServingInfo\x12).feast.serving.GetFeastServingInfoRequest\x1a*.feast.serving.GetFeastServingInfoResponse\x12\x66\n\x11GetOnlineFeatures\x12\'.feast.serving.GetOnlineFeaturesRequest\x1a(.feast.serving.GetOnlineFeaturesResponseBZ\n\x13\x66\x65\x61st.proto.servingB\x0fServingAPIProtoZ2github.com/feast-dev/feast/go/protos/feast/servingb\x06proto3') - -_globals = globals() -_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) -_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'feast.serving.ServingService_pb2', _globals) -if _descriptor._USE_C_DESCRIPTORS == False: - - DESCRIPTOR._options = None - DESCRIPTOR._serialized_options = b'\n\023feast.proto.servingB\017ServingAPIProtoZ2github.com/feast-dev/feast/go/protos/feast/serving' - _GETONLINEFEATURESREQUESTV2_ENTITYROW_FIELDSENTRY._options = None - _GETONLINEFEATURESREQUESTV2_ENTITYROW_FIELDSENTRY._serialized_options = b'8\001' - _GETONLINEFEATURESREQUEST_ENTITIESENTRY._options = None - _GETONLINEFEATURESREQUEST_ENTITIESENTRY._serialized_options = b'8\001' - _GETONLINEFEATURESREQUEST_REQUESTCONTEXTENTRY._options = None - _GETONLINEFEATURESREQUEST_REQUESTCONTEXTENTRY._serialized_options = b'8\001' - _globals['_FIELDSTATUS']._serialized_start=1544 - _globals['_FIELDSTATUS']._serialized_end=1635 - _globals['_GETFEASTSERVINGINFOREQUEST']._serialized_start=111 - _globals['_GETFEASTSERVINGINFOREQUEST']._serialized_end=139 - _globals['_GETFEASTSERVINGINFORESPONSE']._serialized_start=141 - _globals['_GETFEASTSERVINGINFORESPONSE']._serialized_end=187 - _globals['_FEATUREREFERENCEV2']._serialized_start=189 - _globals['_FEATUREREFERENCEV2']._serialized_end=258 - _globals['_GETONLINEFEATURESREQUESTV2']._serialized_start=261 - _globals['_GETONLINEFEATURESREQUESTV2']._serialized_end=642 - _globals['_GETONLINEFEATURESREQUESTV2_ENTITYROW']._serialized_start=436 - _globals['_GETONLINEFEATURESREQUESTV2_ENTITYROW']._serialized_end=642 - _globals['_GETONLINEFEATURESREQUESTV2_ENTITYROW_FIELDSENTRY']._serialized_start=577 - _globals['_GETONLINEFEATURESREQUESTV2_ENTITYROW_FIELDSENTRY']._serialized_end=642 - _globals['_FEATURELIST']._serialized_start=644 - _globals['_FEATURELIST']._serialized_end=670 - _globals['_GETONLINEFEATURESREQUEST']._serialized_start=673 - _globals['_GETONLINEFEATURESREQUEST']._serialized_end=1129 - _globals['_GETONLINEFEATURESREQUEST_ENTITIESENTRY']._serialized_start=963 - _globals['_GETONLINEFEATURESREQUEST_ENTITIESENTRY']._serialized_end=1038 - _globals['_GETONLINEFEATURESREQUEST_REQUESTCONTEXTENTRY']._serialized_start=1040 - _globals['_GETONLINEFEATURESREQUEST_REQUESTCONTEXTENTRY']._serialized_end=1121 - _globals['_GETONLINEFEATURESRESPONSE']._serialized_start=1132 - _globals['_GETONLINEFEATURESRESPONSE']._serialized_end=1454 - _globals['_GETONLINEFEATURESRESPONSE_FEATUREVECTOR']._serialized_start=1303 - _globals['_GETONLINEFEATURESRESPONSE_FEATUREVECTOR']._serialized_end=1454 - _globals['_GETONLINEFEATURESRESPONSEMETADATA']._serialized_start=1456 - _globals['_GETONLINEFEATURESRESPONSEMETADATA']._serialized_end=1542 - _globals['_SERVINGSERVICE']._serialized_start=1638 - _globals['_SERVINGSERVICE']._serialized_end=1868 -# @@protoc_insertion_point(module_scope) diff --git a/sdk/python/feast/protos/feast/serving/ServingService_pb2.pyi b/sdk/python/feast/protos/feast/serving/ServingService_pb2.pyi deleted file mode 100644 index 5dc041b065..0000000000 --- a/sdk/python/feast/protos/feast/serving/ServingService_pb2.pyi +++ /dev/null @@ -1,309 +0,0 @@ -""" -@generated by mypy-protobuf. Do not edit manually! -isort:skip_file -""" -import builtins -import feast.types.Value_pb2 -import google.protobuf.descriptor -import google.protobuf.internal.containers -import google.protobuf.internal.enum_type_wrapper -import google.protobuf.message -import google.protobuf.timestamp_pb2 -import typing -import typing_extensions - -DESCRIPTOR: google.protobuf.descriptor.FileDescriptor = ... - -class _FieldStatus: - ValueType = typing.NewType('ValueType', builtins.int) - V: typing_extensions.TypeAlias = ValueType -class _FieldStatusEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_FieldStatus.ValueType], builtins.type): - DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor = ... - INVALID: FieldStatus.ValueType = ... # 0 - """Status is unset for this field.""" - - PRESENT: FieldStatus.ValueType = ... # 1 - """Field value is present for this field and age is within max age.""" - - NULL_VALUE: FieldStatus.ValueType = ... # 2 - """Values could be found for entity key and age is within max age, but - this field value is not assigned a value on ingestion into feast. - """ - - NOT_FOUND: FieldStatus.ValueType = ... # 3 - """Entity key did not return any values as they do not exist in Feast. - This could suggest that the feature values have not yet been ingested - into feast or the ingestion failed. - """ - - OUTSIDE_MAX_AGE: FieldStatus.ValueType = ... # 4 - """Values could be found for entity key, but field values are outside the maximum - allowable range. - """ - -class FieldStatus(_FieldStatus, metaclass=_FieldStatusEnumTypeWrapper): - pass - -INVALID: FieldStatus.ValueType = ... # 0 -"""Status is unset for this field.""" - -PRESENT: FieldStatus.ValueType = ... # 1 -"""Field value is present for this field and age is within max age.""" - -NULL_VALUE: FieldStatus.ValueType = ... # 2 -"""Values could be found for entity key and age is within max age, but -this field value is not assigned a value on ingestion into feast. -""" - -NOT_FOUND: FieldStatus.ValueType = ... # 3 -"""Entity key did not return any values as they do not exist in Feast. -This could suggest that the feature values have not yet been ingested -into feast or the ingestion failed. -""" - -OUTSIDE_MAX_AGE: FieldStatus.ValueType = ... # 4 -"""Values could be found for entity key, but field values are outside the maximum -allowable range. -""" - -global___FieldStatus = FieldStatus - - -class GetFeastServingInfoRequest(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - def __init__(self, - ) -> None: ... -global___GetFeastServingInfoRequest = GetFeastServingInfoRequest - -class GetFeastServingInfoResponse(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - VERSION_FIELD_NUMBER: builtins.int - version: typing.Text = ... - """Feast version of this serving deployment.""" - - def __init__(self, - *, - version : typing.Text = ..., - ) -> None: ... - def ClearField(self, field_name: typing_extensions.Literal["version",b"version"]) -> None: ... -global___GetFeastServingInfoResponse = GetFeastServingInfoResponse - -class FeatureReferenceV2(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - FEATURE_VIEW_NAME_FIELD_NUMBER: builtins.int - FEATURE_NAME_FIELD_NUMBER: builtins.int - feature_view_name: typing.Text = ... - """Name of the Feature View to retrieve the feature from.""" - - feature_name: typing.Text = ... - """Name of the Feature to retrieve the feature from.""" - - def __init__(self, - *, - feature_view_name : typing.Text = ..., - feature_name : typing.Text = ..., - ) -> None: ... - def ClearField(self, field_name: typing_extensions.Literal["feature_name",b"feature_name","feature_view_name",b"feature_view_name"]) -> None: ... -global___FeatureReferenceV2 = FeatureReferenceV2 - -class GetOnlineFeaturesRequestV2(google.protobuf.message.Message): - """ToDo (oleksii): remove this message (since it's not used) and move EntityRow on package level""" - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - class EntityRow(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - class FieldsEntry(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - KEY_FIELD_NUMBER: builtins.int - VALUE_FIELD_NUMBER: builtins.int - key: typing.Text = ... - @property - def value(self) -> feast.types.Value_pb2.Value: ... - def __init__(self, - *, - key : typing.Text = ..., - value : typing.Optional[feast.types.Value_pb2.Value] = ..., - ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["value",b"value"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["key",b"key","value",b"value"]) -> None: ... - - TIMESTAMP_FIELD_NUMBER: builtins.int - FIELDS_FIELD_NUMBER: builtins.int - @property - def timestamp(self) -> google.protobuf.timestamp_pb2.Timestamp: - """Request timestamp of this row. This value will be used, - together with maxAge, to determine feature staleness. - """ - pass - @property - def fields(self) -> google.protobuf.internal.containers.MessageMap[typing.Text, feast.types.Value_pb2.Value]: - """Map containing mapping of entity name to entity value.""" - pass - def __init__(self, - *, - timestamp : typing.Optional[google.protobuf.timestamp_pb2.Timestamp] = ..., - fields : typing.Optional[typing.Mapping[typing.Text, feast.types.Value_pb2.Value]] = ..., - ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["timestamp",b"timestamp"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["fields",b"fields","timestamp",b"timestamp"]) -> None: ... - - FEATURES_FIELD_NUMBER: builtins.int - ENTITY_ROWS_FIELD_NUMBER: builtins.int - PROJECT_FIELD_NUMBER: builtins.int - @property - def features(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___FeatureReferenceV2]: - """List of features that are being retrieved""" - pass - @property - def entity_rows(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___GetOnlineFeaturesRequestV2.EntityRow]: - """List of entity rows, containing entity id and timestamp data. - Used during retrieval of feature rows and for joining feature - rows into a final dataset - """ - pass - project: typing.Text = ... - """Optional field to specify project name override. If specified, uses the - given project for retrieval. Overrides the projects specified in - Feature References if both are specified. - """ - - def __init__(self, - *, - features : typing.Optional[typing.Iterable[global___FeatureReferenceV2]] = ..., - entity_rows : typing.Optional[typing.Iterable[global___GetOnlineFeaturesRequestV2.EntityRow]] = ..., - project : typing.Text = ..., - ) -> None: ... - def ClearField(self, field_name: typing_extensions.Literal["entity_rows",b"entity_rows","features",b"features","project",b"project"]) -> None: ... -global___GetOnlineFeaturesRequestV2 = GetOnlineFeaturesRequestV2 - -class FeatureList(google.protobuf.message.Message): - """In JSON "val" field can be omitted""" - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - VAL_FIELD_NUMBER: builtins.int - @property - def val(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[typing.Text]: ... - def __init__(self, - *, - val : typing.Optional[typing.Iterable[typing.Text]] = ..., - ) -> None: ... - def ClearField(self, field_name: typing_extensions.Literal["val",b"val"]) -> None: ... -global___FeatureList = FeatureList - -class GetOnlineFeaturesRequest(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - class EntitiesEntry(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - KEY_FIELD_NUMBER: builtins.int - VALUE_FIELD_NUMBER: builtins.int - key: typing.Text = ... - @property - def value(self) -> feast.types.Value_pb2.RepeatedValue: ... - def __init__(self, - *, - key : typing.Text = ..., - value : typing.Optional[feast.types.Value_pb2.RepeatedValue] = ..., - ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["value",b"value"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["key",b"key","value",b"value"]) -> None: ... - - class RequestContextEntry(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - KEY_FIELD_NUMBER: builtins.int - VALUE_FIELD_NUMBER: builtins.int - key: typing.Text = ... - @property - def value(self) -> feast.types.Value_pb2.RepeatedValue: ... - def __init__(self, - *, - key : typing.Text = ..., - value : typing.Optional[feast.types.Value_pb2.RepeatedValue] = ..., - ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["value",b"value"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["key",b"key","value",b"value"]) -> None: ... - - FEATURE_SERVICE_FIELD_NUMBER: builtins.int - FEATURES_FIELD_NUMBER: builtins.int - ENTITIES_FIELD_NUMBER: builtins.int - FULL_FEATURE_NAMES_FIELD_NUMBER: builtins.int - REQUEST_CONTEXT_FIELD_NUMBER: builtins.int - feature_service: typing.Text = ... - @property - def features(self) -> global___FeatureList: ... - @property - def entities(self) -> google.protobuf.internal.containers.MessageMap[typing.Text, feast.types.Value_pb2.RepeatedValue]: - """The entity data is specified in a columnar format - A map of entity name -> list of values - """ - pass - full_feature_names: builtins.bool = ... - @property - def request_context(self) -> google.protobuf.internal.containers.MessageMap[typing.Text, feast.types.Value_pb2.RepeatedValue]: - """Context for OnDemand Feature Transformation - (was moved to dedicated parameter to avoid unnecessary separation logic on serving side) - A map of variable name -> list of values - """ - pass - def __init__(self, - *, - feature_service : typing.Text = ..., - features : typing.Optional[global___FeatureList] = ..., - entities : typing.Optional[typing.Mapping[typing.Text, feast.types.Value_pb2.RepeatedValue]] = ..., - full_feature_names : builtins.bool = ..., - request_context : typing.Optional[typing.Mapping[typing.Text, feast.types.Value_pb2.RepeatedValue]] = ..., - ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["feature_service",b"feature_service","features",b"features","kind",b"kind"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["entities",b"entities","feature_service",b"feature_service","features",b"features","full_feature_names",b"full_feature_names","kind",b"kind","request_context",b"request_context"]) -> None: ... - def WhichOneof(self, oneof_group: typing_extensions.Literal["kind",b"kind"]) -> typing.Optional[typing_extensions.Literal["feature_service","features"]]: ... -global___GetOnlineFeaturesRequest = GetOnlineFeaturesRequest - -class GetOnlineFeaturesResponse(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - class FeatureVector(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - VALUES_FIELD_NUMBER: builtins.int - STATUSES_FIELD_NUMBER: builtins.int - EVENT_TIMESTAMPS_FIELD_NUMBER: builtins.int - @property - def values(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[feast.types.Value_pb2.Value]: ... - @property - def statuses(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[global___FieldStatus.ValueType]: ... - @property - def event_timestamps(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[google.protobuf.timestamp_pb2.Timestamp]: ... - def __init__(self, - *, - values : typing.Optional[typing.Iterable[feast.types.Value_pb2.Value]] = ..., - statuses : typing.Optional[typing.Iterable[global___FieldStatus.ValueType]] = ..., - event_timestamps : typing.Optional[typing.Iterable[google.protobuf.timestamp_pb2.Timestamp]] = ..., - ) -> None: ... - def ClearField(self, field_name: typing_extensions.Literal["event_timestamps",b"event_timestamps","statuses",b"statuses","values",b"values"]) -> None: ... - - METADATA_FIELD_NUMBER: builtins.int - RESULTS_FIELD_NUMBER: builtins.int - @property - def metadata(self) -> global___GetOnlineFeaturesResponseMetadata: ... - @property - def results(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___GetOnlineFeaturesResponse.FeatureVector]: - """Length of "results" array should match length of requested features. - We also preserve the same order of features here as in metadata.feature_names - """ - pass - def __init__(self, - *, - metadata : typing.Optional[global___GetOnlineFeaturesResponseMetadata] = ..., - results : typing.Optional[typing.Iterable[global___GetOnlineFeaturesResponse.FeatureVector]] = ..., - ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["metadata",b"metadata"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["metadata",b"metadata","results",b"results"]) -> None: ... -global___GetOnlineFeaturesResponse = GetOnlineFeaturesResponse - -class GetOnlineFeaturesResponseMetadata(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - FEATURE_NAMES_FIELD_NUMBER: builtins.int - @property - def feature_names(self) -> global___FeatureList: ... - def __init__(self, - *, - feature_names : typing.Optional[global___FeatureList] = ..., - ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["feature_names",b"feature_names"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["feature_names",b"feature_names"]) -> None: ... -global___GetOnlineFeaturesResponseMetadata = GetOnlineFeaturesResponseMetadata diff --git a/sdk/python/feast/protos/feast/serving/ServingService_pb2_grpc.py b/sdk/python/feast/protos/feast/serving/ServingService_pb2_grpc.py deleted file mode 100644 index d3cd055f66..0000000000 --- a/sdk/python/feast/protos/feast/serving/ServingService_pb2_grpc.py +++ /dev/null @@ -1,101 +0,0 @@ -# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! -"""Client and server classes corresponding to protobuf-defined services.""" -import grpc - -from feast.protos.feast.serving import ServingService_pb2 as feast_dot_serving_dot_ServingService__pb2 - - -class ServingServiceStub(object): - """Missing associated documentation comment in .proto file.""" - - def __init__(self, channel): - """Constructor. - - Args: - channel: A grpc.Channel. - """ - self.GetFeastServingInfo = channel.unary_unary( - '/feast.serving.ServingService/GetFeastServingInfo', - request_serializer=feast_dot_serving_dot_ServingService__pb2.GetFeastServingInfoRequest.SerializeToString, - response_deserializer=feast_dot_serving_dot_ServingService__pb2.GetFeastServingInfoResponse.FromString, - ) - self.GetOnlineFeatures = channel.unary_unary( - '/feast.serving.ServingService/GetOnlineFeatures', - request_serializer=feast_dot_serving_dot_ServingService__pb2.GetOnlineFeaturesRequest.SerializeToString, - response_deserializer=feast_dot_serving_dot_ServingService__pb2.GetOnlineFeaturesResponse.FromString, - ) - - -class ServingServiceServicer(object): - """Missing associated documentation comment in .proto file.""" - - def GetFeastServingInfo(self, request, context): - """Get information about this Feast serving. - """ - context.set_code(grpc.StatusCode.UNIMPLEMENTED) - context.set_details('Method not implemented!') - raise NotImplementedError('Method not implemented!') - - def GetOnlineFeatures(self, request, context): - """Get online features synchronously. - """ - context.set_code(grpc.StatusCode.UNIMPLEMENTED) - context.set_details('Method not implemented!') - raise NotImplementedError('Method not implemented!') - - -def add_ServingServiceServicer_to_server(servicer, server): - rpc_method_handlers = { - 'GetFeastServingInfo': grpc.unary_unary_rpc_method_handler( - servicer.GetFeastServingInfo, - request_deserializer=feast_dot_serving_dot_ServingService__pb2.GetFeastServingInfoRequest.FromString, - response_serializer=feast_dot_serving_dot_ServingService__pb2.GetFeastServingInfoResponse.SerializeToString, - ), - 'GetOnlineFeatures': grpc.unary_unary_rpc_method_handler( - servicer.GetOnlineFeatures, - request_deserializer=feast_dot_serving_dot_ServingService__pb2.GetOnlineFeaturesRequest.FromString, - response_serializer=feast_dot_serving_dot_ServingService__pb2.GetOnlineFeaturesResponse.SerializeToString, - ), - } - generic_handler = grpc.method_handlers_generic_handler( - 'feast.serving.ServingService', rpc_method_handlers) - server.add_generic_rpc_handlers((generic_handler,)) - - - # This class is part of an EXPERIMENTAL API. -class ServingService(object): - """Missing associated documentation comment in .proto file.""" - - @staticmethod - def GetFeastServingInfo(request, - target, - options=(), - channel_credentials=None, - call_credentials=None, - insecure=False, - compression=None, - wait_for_ready=None, - timeout=None, - metadata=None): - return grpc.experimental.unary_unary(request, target, '/feast.serving.ServingService/GetFeastServingInfo', - feast_dot_serving_dot_ServingService__pb2.GetFeastServingInfoRequest.SerializeToString, - feast_dot_serving_dot_ServingService__pb2.GetFeastServingInfoResponse.FromString, - options, channel_credentials, - insecure, call_credentials, compression, wait_for_ready, timeout, metadata) - - @staticmethod - def GetOnlineFeatures(request, - target, - options=(), - channel_credentials=None, - call_credentials=None, - insecure=False, - compression=None, - wait_for_ready=None, - timeout=None, - metadata=None): - return grpc.experimental.unary_unary(request, target, '/feast.serving.ServingService/GetOnlineFeatures', - feast_dot_serving_dot_ServingService__pb2.GetOnlineFeaturesRequest.SerializeToString, - feast_dot_serving_dot_ServingService__pb2.GetOnlineFeaturesResponse.FromString, - options, channel_credentials, - insecure, call_credentials, compression, wait_for_ready, timeout, metadata) diff --git a/sdk/python/feast/protos/feast/serving/TransformationService_pb2.py b/sdk/python/feast/protos/feast/serving/TransformationService_pb2.py deleted file mode 100644 index 0416d84b6f..0000000000 --- a/sdk/python/feast/protos/feast/serving/TransformationService_pb2.py +++ /dev/null @@ -1,39 +0,0 @@ -# -*- coding: utf-8 -*- -# Generated by the protocol buffer compiler. DO NOT EDIT! -# source: feast/serving/TransformationService.proto -"""Generated protocol buffer code.""" -from google.protobuf import descriptor as _descriptor -from google.protobuf import descriptor_pool as _descriptor_pool -from google.protobuf import symbol_database as _symbol_database -from google.protobuf.internal import builder as _builder -# @@protoc_insertion_point(imports) - -_sym_db = _symbol_database.Default() - - - - -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n)feast/serving/TransformationService.proto\x12\rfeast.serving\"+\n\tValueType\x12\x15\n\x0b\x61rrow_value\x18\x01 \x01(\x0cH\x00\x42\x07\n\x05value\"%\n#GetTransformationServiceInfoRequest\"\x9c\x01\n$GetTransformationServiceInfoResponse\x12\x0f\n\x07version\x18\x01 \x01(\t\x12\x36\n\x04type\x18\x02 \x01(\x0e\x32(.feast.serving.TransformationServiceType\x12+\n#transformation_service_type_details\x18\x03 \x01(\t\"\x88\x01\n\x18TransformFeaturesRequest\x12#\n\x1bon_demand_feature_view_name\x18\x01 \x01(\t\x12\x0f\n\x07project\x18\x02 \x01(\t\x12\x36\n\x14transformation_input\x18\x03 \x01(\x0b\x32\x18.feast.serving.ValueType\"T\n\x19TransformFeaturesResponse\x12\x37\n\x15transformation_output\x18\x03 \x01(\x0b\x32\x18.feast.serving.ValueType*\x94\x01\n\x19TransformationServiceType\x12\'\n#TRANSFORMATION_SERVICE_TYPE_INVALID\x10\x00\x12&\n\"TRANSFORMATION_SERVICE_TYPE_PYTHON\x10\x01\x12&\n\"TRANSFORMATION_SERVICE_TYPE_CUSTOM\x10\x64\x32\x89\x02\n\x15TransformationService\x12\x87\x01\n\x1cGetTransformationServiceInfo\x12\x32.feast.serving.GetTransformationServiceInfoRequest\x1a\x33.feast.serving.GetTransformationServiceInfoResponse\x12\x66\n\x11TransformFeatures\x12\'.feast.serving.TransformFeaturesRequest\x1a(.feast.serving.TransformFeaturesResponseBh\n\x13\x66\x65\x61st.proto.servingB\x1dTransformationServiceAPIProtoZ2github.com/feast-dev/feast/go/protos/feast/servingb\x06proto3') - -_globals = globals() -_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) -_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'feast.serving.TransformationService_pb2', _globals) -if _descriptor._USE_C_DESCRIPTORS == False: - - DESCRIPTOR._options = None - DESCRIPTOR._serialized_options = b'\n\023feast.proto.servingB\035TransformationServiceAPIProtoZ2github.com/feast-dev/feast/go/protos/feast/serving' - _globals['_TRANSFORMATIONSERVICETYPE']._serialized_start=529 - _globals['_TRANSFORMATIONSERVICETYPE']._serialized_end=677 - _globals['_VALUETYPE']._serialized_start=60 - _globals['_VALUETYPE']._serialized_end=103 - _globals['_GETTRANSFORMATIONSERVICEINFOREQUEST']._serialized_start=105 - _globals['_GETTRANSFORMATIONSERVICEINFOREQUEST']._serialized_end=142 - _globals['_GETTRANSFORMATIONSERVICEINFORESPONSE']._serialized_start=145 - _globals['_GETTRANSFORMATIONSERVICEINFORESPONSE']._serialized_end=301 - _globals['_TRANSFORMFEATURESREQUEST']._serialized_start=304 - _globals['_TRANSFORMFEATURESREQUEST']._serialized_end=440 - _globals['_TRANSFORMFEATURESRESPONSE']._serialized_start=442 - _globals['_TRANSFORMFEATURESRESPONSE']._serialized_end=526 - _globals['_TRANSFORMATIONSERVICE']._serialized_start=680 - _globals['_TRANSFORMATIONSERVICE']._serialized_end=945 -# @@protoc_insertion_point(module_scope) diff --git a/sdk/python/feast/protos/feast/serving/TransformationService_pb2.pyi b/sdk/python/feast/protos/feast/serving/TransformationService_pb2.pyi deleted file mode 100644 index 2862f4b0ab..0000000000 --- a/sdk/python/feast/protos/feast/serving/TransformationService_pb2.pyi +++ /dev/null @@ -1,105 +0,0 @@ -""" -@generated by mypy-protobuf. Do not edit manually! -isort:skip_file -""" -import builtins -import google.protobuf.descriptor -import google.protobuf.internal.enum_type_wrapper -import google.protobuf.message -import typing -import typing_extensions - -DESCRIPTOR: google.protobuf.descriptor.FileDescriptor = ... - -class _TransformationServiceType: - ValueType = typing.NewType('ValueType', builtins.int) - V: typing_extensions.TypeAlias = ValueType -class _TransformationServiceTypeEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_TransformationServiceType.ValueType], builtins.type): - DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor = ... - TRANSFORMATION_SERVICE_TYPE_INVALID: TransformationServiceType.ValueType = ... # 0 - TRANSFORMATION_SERVICE_TYPE_PYTHON: TransformationServiceType.ValueType = ... # 1 - TRANSFORMATION_SERVICE_TYPE_CUSTOM: TransformationServiceType.ValueType = ... # 100 -class TransformationServiceType(_TransformationServiceType, metaclass=_TransformationServiceTypeEnumTypeWrapper): - pass - -TRANSFORMATION_SERVICE_TYPE_INVALID: TransformationServiceType.ValueType = ... # 0 -TRANSFORMATION_SERVICE_TYPE_PYTHON: TransformationServiceType.ValueType = ... # 1 -TRANSFORMATION_SERVICE_TYPE_CUSTOM: TransformationServiceType.ValueType = ... # 100 -global___TransformationServiceType = TransformationServiceType - - -class ValueType(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - ARROW_VALUE_FIELD_NUMBER: builtins.int - arrow_value: builtins.bytes = ... - """Having a oneOf provides forward compatibility if we need to support compound types - that are not supported by arrow natively. - """ - - def __init__(self, - *, - arrow_value : builtins.bytes = ..., - ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["arrow_value",b"arrow_value","value",b"value"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["arrow_value",b"arrow_value","value",b"value"]) -> None: ... - def WhichOneof(self, oneof_group: typing_extensions.Literal["value",b"value"]) -> typing.Optional[typing_extensions.Literal["arrow_value"]]: ... -global___ValueType = ValueType - -class GetTransformationServiceInfoRequest(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - def __init__(self, - ) -> None: ... -global___GetTransformationServiceInfoRequest = GetTransformationServiceInfoRequest - -class GetTransformationServiceInfoResponse(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - VERSION_FIELD_NUMBER: builtins.int - TYPE_FIELD_NUMBER: builtins.int - TRANSFORMATION_SERVICE_TYPE_DETAILS_FIELD_NUMBER: builtins.int - version: typing.Text = ... - """Feast version of this transformation service deployment.""" - - type: global___TransformationServiceType.ValueType = ... - """Type of transformation service deployment. This is either Python, or custom""" - - transformation_service_type_details: typing.Text = ... - def __init__(self, - *, - version : typing.Text = ..., - type : global___TransformationServiceType.ValueType = ..., - transformation_service_type_details : typing.Text = ..., - ) -> None: ... - def ClearField(self, field_name: typing_extensions.Literal["transformation_service_type_details",b"transformation_service_type_details","type",b"type","version",b"version"]) -> None: ... -global___GetTransformationServiceInfoResponse = GetTransformationServiceInfoResponse - -class TransformFeaturesRequest(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - ON_DEMAND_FEATURE_VIEW_NAME_FIELD_NUMBER: builtins.int - PROJECT_FIELD_NUMBER: builtins.int - TRANSFORMATION_INPUT_FIELD_NUMBER: builtins.int - on_demand_feature_view_name: typing.Text = ... - project: typing.Text = ... - @property - def transformation_input(self) -> global___ValueType: ... - def __init__(self, - *, - on_demand_feature_view_name : typing.Text = ..., - project : typing.Text = ..., - transformation_input : typing.Optional[global___ValueType] = ..., - ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["transformation_input",b"transformation_input"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["on_demand_feature_view_name",b"on_demand_feature_view_name","project",b"project","transformation_input",b"transformation_input"]) -> None: ... -global___TransformFeaturesRequest = TransformFeaturesRequest - -class TransformFeaturesResponse(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - TRANSFORMATION_OUTPUT_FIELD_NUMBER: builtins.int - @property - def transformation_output(self) -> global___ValueType: ... - def __init__(self, - *, - transformation_output : typing.Optional[global___ValueType] = ..., - ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["transformation_output",b"transformation_output"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["transformation_output",b"transformation_output"]) -> None: ... -global___TransformFeaturesResponse = TransformFeaturesResponse diff --git a/sdk/python/feast/protos/feast/serving/TransformationService_pb2_grpc.py b/sdk/python/feast/protos/feast/serving/TransformationService_pb2_grpc.py deleted file mode 100644 index 30099e39ca..0000000000 --- a/sdk/python/feast/protos/feast/serving/TransformationService_pb2_grpc.py +++ /dev/null @@ -1,99 +0,0 @@ -# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! -"""Client and server classes corresponding to protobuf-defined services.""" -import grpc - -from feast.protos.feast.serving import TransformationService_pb2 as feast_dot_serving_dot_TransformationService__pb2 - - -class TransformationServiceStub(object): - """Missing associated documentation comment in .proto file.""" - - def __init__(self, channel): - """Constructor. - - Args: - channel: A grpc.Channel. - """ - self.GetTransformationServiceInfo = channel.unary_unary( - '/feast.serving.TransformationService/GetTransformationServiceInfo', - request_serializer=feast_dot_serving_dot_TransformationService__pb2.GetTransformationServiceInfoRequest.SerializeToString, - response_deserializer=feast_dot_serving_dot_TransformationService__pb2.GetTransformationServiceInfoResponse.FromString, - ) - self.TransformFeatures = channel.unary_unary( - '/feast.serving.TransformationService/TransformFeatures', - request_serializer=feast_dot_serving_dot_TransformationService__pb2.TransformFeaturesRequest.SerializeToString, - response_deserializer=feast_dot_serving_dot_TransformationService__pb2.TransformFeaturesResponse.FromString, - ) - - -class TransformationServiceServicer(object): - """Missing associated documentation comment in .proto file.""" - - def GetTransformationServiceInfo(self, request, context): - """Missing associated documentation comment in .proto file.""" - context.set_code(grpc.StatusCode.UNIMPLEMENTED) - context.set_details('Method not implemented!') - raise NotImplementedError('Method not implemented!') - - def TransformFeatures(self, request, context): - """Missing associated documentation comment in .proto file.""" - context.set_code(grpc.StatusCode.UNIMPLEMENTED) - context.set_details('Method not implemented!') - raise NotImplementedError('Method not implemented!') - - -def add_TransformationServiceServicer_to_server(servicer, server): - rpc_method_handlers = { - 'GetTransformationServiceInfo': grpc.unary_unary_rpc_method_handler( - servicer.GetTransformationServiceInfo, - request_deserializer=feast_dot_serving_dot_TransformationService__pb2.GetTransformationServiceInfoRequest.FromString, - response_serializer=feast_dot_serving_dot_TransformationService__pb2.GetTransformationServiceInfoResponse.SerializeToString, - ), - 'TransformFeatures': grpc.unary_unary_rpc_method_handler( - servicer.TransformFeatures, - request_deserializer=feast_dot_serving_dot_TransformationService__pb2.TransformFeaturesRequest.FromString, - response_serializer=feast_dot_serving_dot_TransformationService__pb2.TransformFeaturesResponse.SerializeToString, - ), - } - generic_handler = grpc.method_handlers_generic_handler( - 'feast.serving.TransformationService', rpc_method_handlers) - server.add_generic_rpc_handlers((generic_handler,)) - - - # This class is part of an EXPERIMENTAL API. -class TransformationService(object): - """Missing associated documentation comment in .proto file.""" - - @staticmethod - def GetTransformationServiceInfo(request, - target, - options=(), - channel_credentials=None, - call_credentials=None, - insecure=False, - compression=None, - wait_for_ready=None, - timeout=None, - metadata=None): - return grpc.experimental.unary_unary(request, target, '/feast.serving.TransformationService/GetTransformationServiceInfo', - feast_dot_serving_dot_TransformationService__pb2.GetTransformationServiceInfoRequest.SerializeToString, - feast_dot_serving_dot_TransformationService__pb2.GetTransformationServiceInfoResponse.FromString, - options, channel_credentials, - insecure, call_credentials, compression, wait_for_ready, timeout, metadata) - - @staticmethod - def TransformFeatures(request, - target, - options=(), - channel_credentials=None, - call_credentials=None, - insecure=False, - compression=None, - wait_for_ready=None, - timeout=None, - metadata=None): - return grpc.experimental.unary_unary(request, target, '/feast.serving.TransformationService/TransformFeatures', - feast_dot_serving_dot_TransformationService__pb2.TransformFeaturesRequest.SerializeToString, - feast_dot_serving_dot_TransformationService__pb2.TransformFeaturesResponse.FromString, - options, channel_credentials, - insecure, call_credentials, compression, wait_for_ready, timeout, metadata) diff --git a/sdk/python/feast/protos/feast/serving/__init__.py b/sdk/python/feast/protos/feast/serving/__init__.py deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/sdk/python/feast/protos/feast/storage/Redis_pb2.py b/sdk/python/feast/protos/feast/storage/Redis_pb2.py deleted file mode 100644 index c7c6e967a4..0000000000 --- a/sdk/python/feast/protos/feast/storage/Redis_pb2.py +++ /dev/null @@ -1,28 +0,0 @@ -# -*- coding: utf-8 -*- -# Generated by the protocol buffer compiler. DO NOT EDIT! -# source: feast/storage/Redis.proto -"""Generated protocol buffer code.""" -from google.protobuf import descriptor as _descriptor -from google.protobuf import descriptor_pool as _descriptor_pool -from google.protobuf import symbol_database as _symbol_database -from google.protobuf.internal import builder as _builder -# @@protoc_insertion_point(imports) - -_sym_db = _symbol_database.Default() - - -from feast.protos.feast.types import Value_pb2 as feast_dot_types_dot_Value__pb2 - - -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x19\x66\x65\x61st/storage/Redis.proto\x12\rfeast.storage\x1a\x17\x66\x65\x61st/types/Value.proto\"^\n\nRedisKeyV2\x12\x0f\n\x07project\x18\x01 \x01(\t\x12\x14\n\x0c\x65ntity_names\x18\x02 \x03(\t\x12)\n\rentity_values\x18\x03 \x03(\x0b\x32\x12.feast.types.ValueBU\n\x13\x66\x65\x61st.proto.storageB\nRedisProtoZ2github.com/feast-dev/feast/go/protos/feast/storageb\x06proto3') - -_globals = globals() -_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) -_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'feast.storage.Redis_pb2', _globals) -if _descriptor._USE_C_DESCRIPTORS == False: - - DESCRIPTOR._options = None - DESCRIPTOR._serialized_options = b'\n\023feast.proto.storageB\nRedisProtoZ2github.com/feast-dev/feast/go/protos/feast/storage' - _globals['_REDISKEYV2']._serialized_start=69 - _globals['_REDISKEYV2']._serialized_end=163 -# @@protoc_insertion_point(module_scope) diff --git a/sdk/python/feast/protos/feast/storage/Redis_pb2.pyi b/sdk/python/feast/protos/feast/storage/Redis_pb2.pyi deleted file mode 100644 index caa0086263..0000000000 --- a/sdk/python/feast/protos/feast/storage/Redis_pb2.pyi +++ /dev/null @@ -1,32 +0,0 @@ -""" -@generated by mypy-protobuf. Do not edit manually! -isort:skip_file -""" -import builtins -import feast.types.Value_pb2 -import google.protobuf.descriptor -import google.protobuf.internal.containers -import google.protobuf.message -import typing -import typing_extensions - -DESCRIPTOR: google.protobuf.descriptor.FileDescriptor = ... - -class RedisKeyV2(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - PROJECT_FIELD_NUMBER: builtins.int - ENTITY_NAMES_FIELD_NUMBER: builtins.int - ENTITY_VALUES_FIELD_NUMBER: builtins.int - project: typing.Text = ... - @property - def entity_names(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[typing.Text]: ... - @property - def entity_values(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[feast.types.Value_pb2.Value]: ... - def __init__(self, - *, - project : typing.Text = ..., - entity_names : typing.Optional[typing.Iterable[typing.Text]] = ..., - entity_values : typing.Optional[typing.Iterable[feast.types.Value_pb2.Value]] = ..., - ) -> None: ... - def ClearField(self, field_name: typing_extensions.Literal["entity_names",b"entity_names","entity_values",b"entity_values","project",b"project"]) -> None: ... -global___RedisKeyV2 = RedisKeyV2 diff --git a/sdk/python/feast/protos/feast/storage/Redis_pb2_grpc.py b/sdk/python/feast/protos/feast/storage/Redis_pb2_grpc.py deleted file mode 100644 index 2daafffebf..0000000000 --- a/sdk/python/feast/protos/feast/storage/Redis_pb2_grpc.py +++ /dev/null @@ -1,4 +0,0 @@ -# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! -"""Client and server classes corresponding to protobuf-defined services.""" -import grpc - diff --git a/sdk/python/feast/protos/feast/storage/__init__.py b/sdk/python/feast/protos/feast/storage/__init__.py deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/sdk/python/feast/protos/feast/types/EntityKey_pb2.py b/sdk/python/feast/protos/feast/types/EntityKey_pb2.py deleted file mode 100644 index 34480eb8a3..0000000000 --- a/sdk/python/feast/protos/feast/types/EntityKey_pb2.py +++ /dev/null @@ -1,28 +0,0 @@ -# -*- coding: utf-8 -*- -# Generated by the protocol buffer compiler. DO NOT EDIT! -# source: feast/types/EntityKey.proto -"""Generated protocol buffer code.""" -from google.protobuf import descriptor as _descriptor -from google.protobuf import descriptor_pool as _descriptor_pool -from google.protobuf import symbol_database as _symbol_database -from google.protobuf.internal import builder as _builder -# @@protoc_insertion_point(imports) - -_sym_db = _symbol_database.Default() - - -from feast.protos.feast.types import Value_pb2 as feast_dot_types_dot_Value__pb2 - - -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1b\x66\x65\x61st/types/EntityKey.proto\x12\x0b\x66\x65\x61st.types\x1a\x17\x66\x65\x61st/types/Value.proto\"I\n\tEntityKey\x12\x11\n\tjoin_keys\x18\x01 \x03(\t\x12)\n\rentity_values\x18\x02 \x03(\x0b\x32\x12.feast.types.ValueBU\n\x11\x66\x65\x61st.proto.typesB\x0e\x45ntityKeyProtoZ0github.com/feast-dev/feast/go/protos/feast/typesb\x06proto3') - -_globals = globals() -_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) -_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'feast.types.EntityKey_pb2', _globals) -if _descriptor._USE_C_DESCRIPTORS == False: - - DESCRIPTOR._options = None - DESCRIPTOR._serialized_options = b'\n\021feast.proto.typesB\016EntityKeyProtoZ0github.com/feast-dev/feast/go/protos/feast/types' - _globals['_ENTITYKEY']._serialized_start=69 - _globals['_ENTITYKEY']._serialized_end=142 -# @@protoc_insertion_point(module_scope) diff --git a/sdk/python/feast/protos/feast/types/EntityKey_pb2.pyi b/sdk/python/feast/protos/feast/types/EntityKey_pb2.pyi deleted file mode 100644 index f302f6d681..0000000000 --- a/sdk/python/feast/protos/feast/types/EntityKey_pb2.pyi +++ /dev/null @@ -1,29 +0,0 @@ -""" -@generated by mypy-protobuf. Do not edit manually! -isort:skip_file -""" -import builtins -import feast.types.Value_pb2 -import google.protobuf.descriptor -import google.protobuf.internal.containers -import google.protobuf.message -import typing -import typing_extensions - -DESCRIPTOR: google.protobuf.descriptor.FileDescriptor = ... - -class EntityKey(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - JOIN_KEYS_FIELD_NUMBER: builtins.int - ENTITY_VALUES_FIELD_NUMBER: builtins.int - @property - def join_keys(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[typing.Text]: ... - @property - def entity_values(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[feast.types.Value_pb2.Value]: ... - def __init__(self, - *, - join_keys : typing.Optional[typing.Iterable[typing.Text]] = ..., - entity_values : typing.Optional[typing.Iterable[feast.types.Value_pb2.Value]] = ..., - ) -> None: ... - def ClearField(self, field_name: typing_extensions.Literal["entity_values",b"entity_values","join_keys",b"join_keys"]) -> None: ... -global___EntityKey = EntityKey diff --git a/sdk/python/feast/protos/feast/types/EntityKey_pb2_grpc.py b/sdk/python/feast/protos/feast/types/EntityKey_pb2_grpc.py deleted file mode 100644 index 2daafffebf..0000000000 --- a/sdk/python/feast/protos/feast/types/EntityKey_pb2_grpc.py +++ /dev/null @@ -1,4 +0,0 @@ -# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! -"""Client and server classes corresponding to protobuf-defined services.""" -import grpc - diff --git a/sdk/python/feast/protos/feast/types/Field_pb2.py b/sdk/python/feast/protos/feast/types/Field_pb2.py deleted file mode 100644 index f85b67245b..0000000000 --- a/sdk/python/feast/protos/feast/types/Field_pb2.py +++ /dev/null @@ -1,32 +0,0 @@ -# -*- coding: utf-8 -*- -# Generated by the protocol buffer compiler. DO NOT EDIT! -# source: feast/types/Field.proto -"""Generated protocol buffer code.""" -from google.protobuf import descriptor as _descriptor -from google.protobuf import descriptor_pool as _descriptor_pool -from google.protobuf import symbol_database as _symbol_database -from google.protobuf.internal import builder as _builder -# @@protoc_insertion_point(imports) - -_sym_db = _symbol_database.Default() - - -from feast.protos.feast.types import Value_pb2 as feast_dot_types_dot_Value__pb2 - - -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x17\x66\x65\x61st/types/Field.proto\x12\x0b\x66\x65\x61st.types\x1a\x17\x66\x65\x61st/types/Value.proto\"\xaf\x01\n\x05\x46ield\x12\x0c\n\x04name\x18\x01 \x01(\t\x12*\n\x05value\x18\x02 \x01(\x0e\x32\x1b.feast.types.ValueType.Enum\x12*\n\x04tags\x18\x03 \x03(\x0b\x32\x1c.feast.types.Field.TagsEntry\x12\x13\n\x0b\x64\x65scription\x18\x04 \x01(\t\x1a+\n\tTagsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x42Q\n\x11\x66\x65\x61st.proto.typesB\nFieldProtoZ0github.com/feast-dev/feast/go/protos/feast/typesb\x06proto3') - -_globals = globals() -_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) -_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'feast.types.Field_pb2', _globals) -if _descriptor._USE_C_DESCRIPTORS == False: - - DESCRIPTOR._options = None - DESCRIPTOR._serialized_options = b'\n\021feast.proto.typesB\nFieldProtoZ0github.com/feast-dev/feast/go/protos/feast/types' - _FIELD_TAGSENTRY._options = None - _FIELD_TAGSENTRY._serialized_options = b'8\001' - _globals['_FIELD']._serialized_start=66 - _globals['_FIELD']._serialized_end=241 - _globals['_FIELD_TAGSENTRY']._serialized_start=198 - _globals['_FIELD_TAGSENTRY']._serialized_end=241 -# @@protoc_insertion_point(module_scope) diff --git a/sdk/python/feast/protos/feast/types/Field_pb2.pyi b/sdk/python/feast/protos/feast/types/Field_pb2.pyi deleted file mode 100644 index 94ebc13ab2..0000000000 --- a/sdk/python/feast/protos/feast/types/Field_pb2.pyi +++ /dev/null @@ -1,51 +0,0 @@ -""" -@generated by mypy-protobuf. Do not edit manually! -isort:skip_file -""" -import builtins -import feast.types.Value_pb2 -import google.protobuf.descriptor -import google.protobuf.internal.containers -import google.protobuf.message -import typing -import typing_extensions - -DESCRIPTOR: google.protobuf.descriptor.FileDescriptor = ... - -class Field(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - class TagsEntry(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - KEY_FIELD_NUMBER: builtins.int - VALUE_FIELD_NUMBER: builtins.int - key: typing.Text = ... - value: typing.Text = ... - def __init__(self, - *, - key : typing.Text = ..., - value : typing.Text = ..., - ) -> None: ... - def ClearField(self, field_name: typing_extensions.Literal["key",b"key","value",b"value"]) -> None: ... - - NAME_FIELD_NUMBER: builtins.int - VALUE_FIELD_NUMBER: builtins.int - TAGS_FIELD_NUMBER: builtins.int - DESCRIPTION_FIELD_NUMBER: builtins.int - name: typing.Text = ... - value: feast.types.Value_pb2.ValueType.Enum.ValueType = ... - @property - def tags(self) -> google.protobuf.internal.containers.ScalarMap[typing.Text, typing.Text]: - """Tags for user defined metadata on a field""" - pass - description: typing.Text = ... - """Description of the field.""" - - def __init__(self, - *, - name : typing.Text = ..., - value : feast.types.Value_pb2.ValueType.Enum.ValueType = ..., - tags : typing.Optional[typing.Mapping[typing.Text, typing.Text]] = ..., - description : typing.Text = ..., - ) -> None: ... - def ClearField(self, field_name: typing_extensions.Literal["description",b"description","name",b"name","tags",b"tags","value",b"value"]) -> None: ... -global___Field = Field diff --git a/sdk/python/feast/protos/feast/types/Field_pb2_grpc.py b/sdk/python/feast/protos/feast/types/Field_pb2_grpc.py deleted file mode 100644 index 2daafffebf..0000000000 --- a/sdk/python/feast/protos/feast/types/Field_pb2_grpc.py +++ /dev/null @@ -1,4 +0,0 @@ -# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! -"""Client and server classes corresponding to protobuf-defined services.""" -import grpc - diff --git a/sdk/python/feast/protos/feast/types/Value_pb2.py b/sdk/python/feast/protos/feast/types/Value_pb2.py deleted file mode 100644 index 942359f7d7..0000000000 --- a/sdk/python/feast/protos/feast/types/Value_pb2.py +++ /dev/null @@ -1,49 +0,0 @@ -# -*- coding: utf-8 -*- -# Generated by the protocol buffer compiler. DO NOT EDIT! -# source: feast/types/Value.proto -"""Generated protocol buffer code.""" -from google.protobuf import descriptor as _descriptor -from google.protobuf import descriptor_pool as _descriptor_pool -from google.protobuf import symbol_database as _symbol_database -from google.protobuf.internal import builder as _builder -# @@protoc_insertion_point(imports) - -_sym_db = _symbol_database.Default() - - - - -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x17\x66\x65\x61st/types/Value.proto\x12\x0b\x66\x65\x61st.types\"\x97\x02\n\tValueType\"\x89\x02\n\x04\x45num\x12\x0b\n\x07INVALID\x10\x00\x12\t\n\x05\x42YTES\x10\x01\x12\n\n\x06STRING\x10\x02\x12\t\n\x05INT32\x10\x03\x12\t\n\x05INT64\x10\x04\x12\n\n\x06\x44OUBLE\x10\x05\x12\t\n\x05\x46LOAT\x10\x06\x12\x08\n\x04\x42OOL\x10\x07\x12\x12\n\x0eUNIX_TIMESTAMP\x10\x08\x12\x0e\n\nBYTES_LIST\x10\x0b\x12\x0f\n\x0bSTRING_LIST\x10\x0c\x12\x0e\n\nINT32_LIST\x10\r\x12\x0e\n\nINT64_LIST\x10\x0e\x12\x0f\n\x0b\x44OUBLE_LIST\x10\x0f\x12\x0e\n\nFLOAT_LIST\x10\x10\x12\r\n\tBOOL_LIST\x10\x11\x12\x17\n\x13UNIX_TIMESTAMP_LIST\x10\x12\x12\x08\n\x04NULL\x10\x13\"\x82\x05\n\x05Value\x12\x13\n\tbytes_val\x18\x01 \x01(\x0cH\x00\x12\x14\n\nstring_val\x18\x02 \x01(\tH\x00\x12\x13\n\tint32_val\x18\x03 \x01(\x05H\x00\x12\x13\n\tint64_val\x18\x04 \x01(\x03H\x00\x12\x14\n\ndouble_val\x18\x05 \x01(\x01H\x00\x12\x13\n\tfloat_val\x18\x06 \x01(\x02H\x00\x12\x12\n\x08\x62ool_val\x18\x07 \x01(\x08H\x00\x12\x1c\n\x12unix_timestamp_val\x18\x08 \x01(\x03H\x00\x12\x30\n\x0e\x62ytes_list_val\x18\x0b \x01(\x0b\x32\x16.feast.types.BytesListH\x00\x12\x32\n\x0fstring_list_val\x18\x0c \x01(\x0b\x32\x17.feast.types.StringListH\x00\x12\x30\n\x0eint32_list_val\x18\r \x01(\x0b\x32\x16.feast.types.Int32ListH\x00\x12\x30\n\x0eint64_list_val\x18\x0e \x01(\x0b\x32\x16.feast.types.Int64ListH\x00\x12\x32\n\x0f\x64ouble_list_val\x18\x0f \x01(\x0b\x32\x17.feast.types.DoubleListH\x00\x12\x30\n\x0e\x66loat_list_val\x18\x10 \x01(\x0b\x32\x16.feast.types.FloatListH\x00\x12.\n\rbool_list_val\x18\x11 \x01(\x0b\x32\x15.feast.types.BoolListH\x00\x12\x39\n\x17unix_timestamp_list_val\x18\x12 \x01(\x0b\x32\x16.feast.types.Int64ListH\x00\x12%\n\x08null_val\x18\x13 \x01(\x0e\x32\x11.feast.types.NullH\x00\x42\x05\n\x03val\"\x18\n\tBytesList\x12\x0b\n\x03val\x18\x01 \x03(\x0c\"\x19\n\nStringList\x12\x0b\n\x03val\x18\x01 \x03(\t\"\x18\n\tInt32List\x12\x0b\n\x03val\x18\x01 \x03(\x05\"\x18\n\tInt64List\x12\x0b\n\x03val\x18\x01 \x03(\x03\"\x19\n\nDoubleList\x12\x0b\n\x03val\x18\x01 \x03(\x01\"\x18\n\tFloatList\x12\x0b\n\x03val\x18\x01 \x03(\x02\"\x17\n\x08\x42oolList\x12\x0b\n\x03val\x18\x01 \x03(\x08\"0\n\rRepeatedValue\x12\x1f\n\x03val\x18\x01 \x03(\x0b\x32\x12.feast.types.Value*\x10\n\x04Null\x12\x08\n\x04NULL\x10\x00\x42Q\n\x11\x66\x65\x61st.proto.typesB\nValueProtoZ0github.com/feast-dev/feast/go/protos/feast/typesb\x06proto3') - -_globals = globals() -_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) -_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'feast.types.Value_pb2', _globals) -if _descriptor._USE_C_DESCRIPTORS == False: - - DESCRIPTOR._options = None - DESCRIPTOR._serialized_options = b'\n\021feast.proto.typesB\nValueProtoZ0github.com/feast-dev/feast/go/protos/feast/types' - _globals['_NULL']._serialized_start=1200 - _globals['_NULL']._serialized_end=1216 - _globals['_VALUETYPE']._serialized_start=41 - _globals['_VALUETYPE']._serialized_end=320 - _globals['_VALUETYPE_ENUM']._serialized_start=55 - _globals['_VALUETYPE_ENUM']._serialized_end=320 - _globals['_VALUE']._serialized_start=323 - _globals['_VALUE']._serialized_end=965 - _globals['_BYTESLIST']._serialized_start=967 - _globals['_BYTESLIST']._serialized_end=991 - _globals['_STRINGLIST']._serialized_start=993 - _globals['_STRINGLIST']._serialized_end=1018 - _globals['_INT32LIST']._serialized_start=1020 - _globals['_INT32LIST']._serialized_end=1044 - _globals['_INT64LIST']._serialized_start=1046 - _globals['_INT64LIST']._serialized_end=1070 - _globals['_DOUBLELIST']._serialized_start=1072 - _globals['_DOUBLELIST']._serialized_end=1097 - _globals['_FLOATLIST']._serialized_start=1099 - _globals['_FLOATLIST']._serialized_end=1123 - _globals['_BOOLLIST']._serialized_start=1125 - _globals['_BOOLLIST']._serialized_end=1148 - _globals['_REPEATEDVALUE']._serialized_start=1150 - _globals['_REPEATEDVALUE']._serialized_end=1198 -# @@protoc_insertion_point(module_scope) diff --git a/sdk/python/feast/protos/feast/types/Value_pb2.pyi b/sdk/python/feast/protos/feast/types/Value_pb2.pyi deleted file mode 100644 index 5832641e4a..0000000000 --- a/sdk/python/feast/protos/feast/types/Value_pb2.pyi +++ /dev/null @@ -1,245 +0,0 @@ -""" -@generated by mypy-protobuf. Do not edit manually! -isort:skip_file -""" -import builtins -import google.protobuf.descriptor -import google.protobuf.internal.containers -import google.protobuf.internal.enum_type_wrapper -import google.protobuf.message -import typing -import typing_extensions - -DESCRIPTOR: google.protobuf.descriptor.FileDescriptor = ... - -class _Null: - ValueType = typing.NewType('ValueType', builtins.int) - V: typing_extensions.TypeAlias = ValueType -class _NullEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_Null.ValueType], builtins.type): - DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor = ... - NULL: Null.ValueType = ... # 0 -class Null(_Null, metaclass=_NullEnumTypeWrapper): - pass - -NULL: Null.ValueType = ... # 0 -global___Null = Null - - -class ValueType(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - class _Enum: - ValueType = typing.NewType('ValueType', builtins.int) - V: typing_extensions.TypeAlias = ValueType - class _EnumEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_Enum.ValueType], builtins.type): - DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor = ... - INVALID: ValueType.Enum.ValueType = ... # 0 - BYTES: ValueType.Enum.ValueType = ... # 1 - STRING: ValueType.Enum.ValueType = ... # 2 - INT32: ValueType.Enum.ValueType = ... # 3 - INT64: ValueType.Enum.ValueType = ... # 4 - DOUBLE: ValueType.Enum.ValueType = ... # 5 - FLOAT: ValueType.Enum.ValueType = ... # 6 - BOOL: ValueType.Enum.ValueType = ... # 7 - UNIX_TIMESTAMP: ValueType.Enum.ValueType = ... # 8 - BYTES_LIST: ValueType.Enum.ValueType = ... # 11 - STRING_LIST: ValueType.Enum.ValueType = ... # 12 - INT32_LIST: ValueType.Enum.ValueType = ... # 13 - INT64_LIST: ValueType.Enum.ValueType = ... # 14 - DOUBLE_LIST: ValueType.Enum.ValueType = ... # 15 - FLOAT_LIST: ValueType.Enum.ValueType = ... # 16 - BOOL_LIST: ValueType.Enum.ValueType = ... # 17 - UNIX_TIMESTAMP_LIST: ValueType.Enum.ValueType = ... # 18 - NULL: ValueType.Enum.ValueType = ... # 19 - class Enum(_Enum, metaclass=_EnumEnumTypeWrapper): - pass - - INVALID: ValueType.Enum.ValueType = ... # 0 - BYTES: ValueType.Enum.ValueType = ... # 1 - STRING: ValueType.Enum.ValueType = ... # 2 - INT32: ValueType.Enum.ValueType = ... # 3 - INT64: ValueType.Enum.ValueType = ... # 4 - DOUBLE: ValueType.Enum.ValueType = ... # 5 - FLOAT: ValueType.Enum.ValueType = ... # 6 - BOOL: ValueType.Enum.ValueType = ... # 7 - UNIX_TIMESTAMP: ValueType.Enum.ValueType = ... # 8 - BYTES_LIST: ValueType.Enum.ValueType = ... # 11 - STRING_LIST: ValueType.Enum.ValueType = ... # 12 - INT32_LIST: ValueType.Enum.ValueType = ... # 13 - INT64_LIST: ValueType.Enum.ValueType = ... # 14 - DOUBLE_LIST: ValueType.Enum.ValueType = ... # 15 - FLOAT_LIST: ValueType.Enum.ValueType = ... # 16 - BOOL_LIST: ValueType.Enum.ValueType = ... # 17 - UNIX_TIMESTAMP_LIST: ValueType.Enum.ValueType = ... # 18 - NULL: ValueType.Enum.ValueType = ... # 19 - - def __init__(self, - ) -> None: ... -global___ValueType = ValueType - -class Value(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - BYTES_VAL_FIELD_NUMBER: builtins.int - STRING_VAL_FIELD_NUMBER: builtins.int - INT32_VAL_FIELD_NUMBER: builtins.int - INT64_VAL_FIELD_NUMBER: builtins.int - DOUBLE_VAL_FIELD_NUMBER: builtins.int - FLOAT_VAL_FIELD_NUMBER: builtins.int - BOOL_VAL_FIELD_NUMBER: builtins.int - UNIX_TIMESTAMP_VAL_FIELD_NUMBER: builtins.int - BYTES_LIST_VAL_FIELD_NUMBER: builtins.int - STRING_LIST_VAL_FIELD_NUMBER: builtins.int - INT32_LIST_VAL_FIELD_NUMBER: builtins.int - INT64_LIST_VAL_FIELD_NUMBER: builtins.int - DOUBLE_LIST_VAL_FIELD_NUMBER: builtins.int - FLOAT_LIST_VAL_FIELD_NUMBER: builtins.int - BOOL_LIST_VAL_FIELD_NUMBER: builtins.int - UNIX_TIMESTAMP_LIST_VAL_FIELD_NUMBER: builtins.int - NULL_VAL_FIELD_NUMBER: builtins.int - bytes_val: builtins.bytes = ... - string_val: typing.Text = ... - int32_val: builtins.int = ... - int64_val: builtins.int = ... - double_val: builtins.float = ... - float_val: builtins.float = ... - bool_val: builtins.bool = ... - unix_timestamp_val: builtins.int = ... - @property - def bytes_list_val(self) -> global___BytesList: ... - @property - def string_list_val(self) -> global___StringList: ... - @property - def int32_list_val(self) -> global___Int32List: ... - @property - def int64_list_val(self) -> global___Int64List: ... - @property - def double_list_val(self) -> global___DoubleList: ... - @property - def float_list_val(self) -> global___FloatList: ... - @property - def bool_list_val(self) -> global___BoolList: ... - @property - def unix_timestamp_list_val(self) -> global___Int64List: ... - null_val: global___Null.ValueType = ... - def __init__(self, - *, - bytes_val : builtins.bytes = ..., - string_val : typing.Text = ..., - int32_val : builtins.int = ..., - int64_val : builtins.int = ..., - double_val : builtins.float = ..., - float_val : builtins.float = ..., - bool_val : builtins.bool = ..., - unix_timestamp_val : builtins.int = ..., - bytes_list_val : typing.Optional[global___BytesList] = ..., - string_list_val : typing.Optional[global___StringList] = ..., - int32_list_val : typing.Optional[global___Int32List] = ..., - int64_list_val : typing.Optional[global___Int64List] = ..., - double_list_val : typing.Optional[global___DoubleList] = ..., - float_list_val : typing.Optional[global___FloatList] = ..., - bool_list_val : typing.Optional[global___BoolList] = ..., - unix_timestamp_list_val : typing.Optional[global___Int64List] = ..., - null_val : global___Null.ValueType = ..., - ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["bool_list_val",b"bool_list_val","bool_val",b"bool_val","bytes_list_val",b"bytes_list_val","bytes_val",b"bytes_val","double_list_val",b"double_list_val","double_val",b"double_val","float_list_val",b"float_list_val","float_val",b"float_val","int32_list_val",b"int32_list_val","int32_val",b"int32_val","int64_list_val",b"int64_list_val","int64_val",b"int64_val","null_val",b"null_val","string_list_val",b"string_list_val","string_val",b"string_val","unix_timestamp_list_val",b"unix_timestamp_list_val","unix_timestamp_val",b"unix_timestamp_val","val",b"val"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["bool_list_val",b"bool_list_val","bool_val",b"bool_val","bytes_list_val",b"bytes_list_val","bytes_val",b"bytes_val","double_list_val",b"double_list_val","double_val",b"double_val","float_list_val",b"float_list_val","float_val",b"float_val","int32_list_val",b"int32_list_val","int32_val",b"int32_val","int64_list_val",b"int64_list_val","int64_val",b"int64_val","null_val",b"null_val","string_list_val",b"string_list_val","string_val",b"string_val","unix_timestamp_list_val",b"unix_timestamp_list_val","unix_timestamp_val",b"unix_timestamp_val","val",b"val"]) -> None: ... - def WhichOneof(self, oneof_group: typing_extensions.Literal["val",b"val"]) -> typing.Optional[typing_extensions.Literal["bytes_val","string_val","int32_val","int64_val","double_val","float_val","bool_val","unix_timestamp_val","bytes_list_val","string_list_val","int32_list_val","int64_list_val","double_list_val","float_list_val","bool_list_val","unix_timestamp_list_val","null_val"]]: ... -global___Value = Value - -class BytesList(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - VAL_FIELD_NUMBER: builtins.int - @property - def val(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.bytes]: ... - def __init__(self, - *, - val : typing.Optional[typing.Iterable[builtins.bytes]] = ..., - ) -> None: ... - def ClearField(self, field_name: typing_extensions.Literal["val",b"val"]) -> None: ... -global___BytesList = BytesList - -class StringList(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - VAL_FIELD_NUMBER: builtins.int - @property - def val(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[typing.Text]: ... - def __init__(self, - *, - val : typing.Optional[typing.Iterable[typing.Text]] = ..., - ) -> None: ... - def ClearField(self, field_name: typing_extensions.Literal["val",b"val"]) -> None: ... -global___StringList = StringList - -class Int32List(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - VAL_FIELD_NUMBER: builtins.int - @property - def val(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.int]: ... - def __init__(self, - *, - val : typing.Optional[typing.Iterable[builtins.int]] = ..., - ) -> None: ... - def ClearField(self, field_name: typing_extensions.Literal["val",b"val"]) -> None: ... -global___Int32List = Int32List - -class Int64List(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - VAL_FIELD_NUMBER: builtins.int - @property - def val(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.int]: ... - def __init__(self, - *, - val : typing.Optional[typing.Iterable[builtins.int]] = ..., - ) -> None: ... - def ClearField(self, field_name: typing_extensions.Literal["val",b"val"]) -> None: ... -global___Int64List = Int64List - -class DoubleList(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - VAL_FIELD_NUMBER: builtins.int - @property - def val(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.float]: ... - def __init__(self, - *, - val : typing.Optional[typing.Iterable[builtins.float]] = ..., - ) -> None: ... - def ClearField(self, field_name: typing_extensions.Literal["val",b"val"]) -> None: ... -global___DoubleList = DoubleList - -class FloatList(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - VAL_FIELD_NUMBER: builtins.int - @property - def val(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.float]: ... - def __init__(self, - *, - val : typing.Optional[typing.Iterable[builtins.float]] = ..., - ) -> None: ... - def ClearField(self, field_name: typing_extensions.Literal["val",b"val"]) -> None: ... -global___FloatList = FloatList - -class BoolList(google.protobuf.message.Message): - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - VAL_FIELD_NUMBER: builtins.int - @property - def val(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.bool]: ... - def __init__(self, - *, - val : typing.Optional[typing.Iterable[builtins.bool]] = ..., - ) -> None: ... - def ClearField(self, field_name: typing_extensions.Literal["val",b"val"]) -> None: ... -global___BoolList = BoolList - -class RepeatedValue(google.protobuf.message.Message): - """This is to avoid an issue of being unable to specify `repeated value` in oneofs or maps - In JSON "val" field can be omitted - """ - DESCRIPTOR: google.protobuf.descriptor.Descriptor = ... - VAL_FIELD_NUMBER: builtins.int - @property - def val(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Value]: ... - def __init__(self, - *, - val : typing.Optional[typing.Iterable[global___Value]] = ..., - ) -> None: ... - def ClearField(self, field_name: typing_extensions.Literal["val",b"val"]) -> None: ... -global___RepeatedValue = RepeatedValue diff --git a/sdk/python/feast/protos/feast/types/Value_pb2_grpc.py b/sdk/python/feast/protos/feast/types/Value_pb2_grpc.py deleted file mode 100644 index 2daafffebf..0000000000 --- a/sdk/python/feast/protos/feast/types/Value_pb2_grpc.py +++ /dev/null @@ -1,4 +0,0 @@ -# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! -"""Client and server classes corresponding to protobuf-defined services.""" -import grpc - diff --git a/sdk/python/feast/protos/feast/types/__init__.py b/sdk/python/feast/protos/feast/types/__init__.py deleted file mode 100644 index e69de29bb2..0000000000