Skip to content

Commit

Permalink
make registry server writable
Browse files Browse the repository at this point in the history
Signed-off-by: tokoko <togurg14@freeuni.edu.ge>
  • Loading branch information
tokoko committed May 27, 2024
1 parent fffc366 commit 73a3fda
Show file tree
Hide file tree
Showing 6 changed files with 442 additions and 77 deletions.
2 changes: 0 additions & 2 deletions protos/feast/core/Transformation.proto
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,6 @@ option go_package = "github.com/feast-dev/feast/go/protos/feast/core";
option java_outer_classname = "FeatureTransformationProto";
option java_package = "feast.proto.core";

import "google/protobuf/duration.proto";

// Serialized representation of python function.
message UserDefinedFunctionV2 {
// The function name
Expand Down
108 changes: 107 additions & 1 deletion protos/feast/registry/RegistryServer.proto
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ syntax = "proto3";
package feast.registry;

import "google/protobuf/empty.proto";
import "google/protobuf/timestamp.proto";
import "feast/core/Registry.proto";
import "feast/core/Entity.proto";
import "feast/core/DataSource.proto";
Expand All @@ -16,16 +17,22 @@ import "feast/core/InfraObject.proto";

service RegistryServer{
// Entity RPCs
rpc ApplyEntity (ApplyEntityRequest) returns (google.protobuf.Empty) {}
rpc GetEntity (GetEntityRequest) returns (feast.core.Entity) {}
rpc ListEntities (ListEntitiesRequest) returns (ListEntitiesResponse) {}
rpc DeleteEntity (DeleteEntityRequest) returns (google.protobuf.Empty) {}

// DataSource RPCs
rpc ApplyDataSource (ApplyDataSourceRequest) returns (google.protobuf.Empty) {}
rpc GetDataSource (GetDataSourceRequest) returns (feast.core.DataSource) {}
rpc ListDataSources (ListDataSourcesRequest) returns (ListDataSourcesResponse) {}
rpc DeleteDataSource (DeleteDataSourceRequest) returns (google.protobuf.Empty) {}

// FeatureView RPCs
rpc ApplyFeatureView (ApplyFeatureViewRequest) returns (google.protobuf.Empty) {}
rpc GetFeatureView (GetFeatureViewRequest) returns (feast.core.FeatureView) {}
rpc ListFeatureViews (ListFeatureViewsRequest) returns (ListFeatureViewsResponse) {}
rpc DeleteFeatureView (DeleteFeatureViewRequest) returns (google.protobuf.Empty) {}

// StreamFeatureView RPCs
rpc GetStreamFeatureView (GetStreamFeatureViewRequest) returns (feast.core.StreamFeatureView) {}
Expand All @@ -36,19 +43,28 @@ service RegistryServer{
rpc ListOnDemandFeatureViews (ListOnDemandFeatureViewsRequest) returns (ListOnDemandFeatureViewsResponse) {}

// FeatureService RPCs
rpc ApplyFeatureService (ApplyFeatureServiceRequest) returns (google.protobuf.Empty) {}
rpc GetFeatureService (GetFeatureServiceRequest) returns (feast.core.FeatureService) {}
rpc ListFeatureServices (ListFeatureServicesRequest) returns (ListFeatureServicesResponse) {}
rpc DeleteFeatureService (DeleteFeatureServiceRequest) returns (google.protobuf.Empty) {}

// SavedDataset RPCs
rpc ApplySavedDataset (ApplySavedDatasetRequest) returns (google.protobuf.Empty) {}
rpc GetSavedDataset (GetSavedDatasetRequest) returns (feast.core.SavedDataset) {}
rpc ListSavedDatasets (ListSavedDatasetsRequest) returns (ListSavedDatasetsResponse) {}
rpc DeleteSavedDataset (DeleteSavedDatasetRequest) returns (google.protobuf.Empty) {}

// ValidationReference RPCs
rpc ApplyValidationReference (ApplyValidationReferenceRequest) returns (google.protobuf.Empty) {}
rpc GetValidationReference (GetValidationReferenceRequest) returns (feast.core.ValidationReference) {}
rpc ListValidationReferences (ListValidationReferencesRequest) returns (ListValidationReferencesResponse) {}

rpc DeleteValidationReference (DeleteValidationReferenceRequest) returns (google.protobuf.Empty) {}

rpc ApplyMaterialization (ApplyMaterializationRequest) returns (google.protobuf.Empty) {}
rpc ListProjectMetadata (ListProjectMetadataRequest) returns (ListProjectMetadataResponse) {}
rpc UpdateInfra (UpdateInfraRequest) returns (google.protobuf.Empty) {}
rpc GetInfra (GetInfraRequest) returns (feast.core.Infra) {}
rpc Commit (google.protobuf.Empty) returns (google.protobuf.Empty) {}
rpc Refresh (RefreshRequest) returns (google.protobuf.Empty) {}
rpc Proto (google.protobuf.Empty) returns (feast.core.Registry) {}

Expand All @@ -58,6 +74,12 @@ message RefreshRequest {
string project = 1;
}

message UpdateInfraRequest {
feast.core.Infra infra = 1;
string project = 2;
bool commit = 3;
}

message GetInfraRequest {
string project = 1;
bool allow_cache = 2;
Expand All @@ -72,6 +94,20 @@ message ListProjectMetadataResponse {
repeated feast.core.ProjectMetadata project_metadata = 1;
}

message ApplyMaterializationRequest {
feast.core.FeatureView feature_view = 1;
string project = 2;
google.protobuf.Timestamp start_date = 3;
google.protobuf.Timestamp end_date = 4;
bool commit = 5;
}

message ApplyEntityRequest {
feast.core.Entity entity = 1;
string project = 2;
bool commit = 3;
}

message GetEntityRequest {
string name = 1;
string project = 2;
Expand All @@ -87,8 +123,20 @@ message ListEntitiesResponse {
repeated feast.core.Entity entities = 1;
}

message DeleteEntityRequest {
string name = 1;
string project = 2;
bool commit = 3;
}

// DataSources

message ApplyDataSourceRequest {
feast.core.DataSource data_source = 1;
string project = 2;
bool commit = 3;
}

message GetDataSourceRequest {
string name = 1;
string project = 2;
Expand All @@ -104,8 +152,24 @@ message ListDataSourcesResponse {
repeated feast.core.DataSource data_sources = 1;
}

message DeleteDataSourceRequest {
string name = 1;
string project = 2;
bool commit = 3;
}

// FeatureViews

message ApplyFeatureViewRequest {
oneof base_feature_view {
feast.core.FeatureView feature_view = 1;
feast.core.OnDemandFeatureView on_demand_feature_view = 2;
feast.core.StreamFeatureView stream_feature_view = 3;
}
string project = 4;
bool commit = 5;
}

message GetFeatureViewRequest {
string name = 1;
string project = 2;
Expand All @@ -121,6 +185,12 @@ message ListFeatureViewsResponse {
repeated feast.core.FeatureView feature_views = 1;
}

message DeleteFeatureViewRequest {
string name = 1;
string project = 2;
bool commit = 3;
}

// StreamFeatureView

message GetStreamFeatureViewRequest {
Expand Down Expand Up @@ -157,6 +227,12 @@ message ListOnDemandFeatureViewsResponse {

// FeatureServices

message ApplyFeatureServiceRequest {
feast.core.FeatureService feature_service = 1;
string project = 2;
bool commit = 3;
}

message GetFeatureServiceRequest {
string name = 1;
string project = 2;
Expand All @@ -172,8 +248,20 @@ message ListFeatureServicesResponse {
repeated feast.core.FeatureService feature_services = 1;
}

message DeleteFeatureServiceRequest {
string name = 1;
string project = 2;
bool commit = 3;
}

// SavedDataset

message ApplySavedDatasetRequest {
feast.core.SavedDataset saved_dataset = 1;
string project = 2;
bool commit = 3;
}

message GetSavedDatasetRequest {
string name = 1;
string project = 2;
Expand All @@ -189,8 +277,20 @@ message ListSavedDatasetsResponse {
repeated feast.core.SavedDataset saved_datasets = 1;
}

message DeleteSavedDatasetRequest {
string name = 1;
string project = 2;
bool commit = 3;
}

// ValidationReference

message ApplyValidationReferenceRequest {
feast.core.ValidationReference validation_reference = 1;
string project = 2;
bool commit = 3;
}

message GetValidationReferenceRequest {
string name = 1;
string project = 2;
Expand All @@ -205,3 +305,9 @@ message ListValidationReferencesRequest {
message ListValidationReferencesResponse {
repeated feast.core.ValidationReference validation_references = 1;
}

message DeleteValidationReferenceRequest {
string name = 1;
string project = 2;
bool commit = 3;
}
8 changes: 2 additions & 6 deletions sdk/python/feast/infra/registry/base_registry.py
Original file line number Diff line number Diff line change
Expand Up @@ -406,18 +406,14 @@ def get_saved_dataset(
"""
raise NotImplementedError

def delete_saved_dataset(self, name: str, project: str, allow_cache: bool = False):
def delete_saved_dataset(self, name: str, project: str, commit: bool = True):
"""
Delete a saved dataset.
Args:
name: Name of dataset
project: Feast project that this dataset belongs to
allow_cache: Whether to allow returning this dataset from a cached registry
Returns:
Returns either the specified SavedDataset, or raises an exception if
none is found
commit: Whether the change should be persisted immediately
"""
raise NotImplementedError

Expand Down
Loading

0 comments on commit 73a3fda

Please sign in to comment.