# frozen_string_literal: true # Copyright 2023 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # https://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # Auto-generated by gapic-generator-ruby. DO NOT EDIT! module Google module Cloud module AIPlatform module V1 # FeatureView is representation of values that the FeatureOnlineStore will # serve based on its syncConfig. # @!attribute [rw] big_query_source # @return [::Google::Cloud::AIPlatform::V1::FeatureView::BigQuerySource] # Optional. Configures how data is supposed to be extracted from a BigQuery # source to be loaded onto the FeatureOnlineStore. # @!attribute [rw] feature_registry_source # @return [::Google::Cloud::AIPlatform::V1::FeatureView::FeatureRegistrySource] # Optional. Configures the features from a Feature Registry source that # need to be loaded onto the FeatureOnlineStore. # @!attribute [r] name # @return [::String] # Output only. Name of the FeatureView. Format: # `projects/{project}/locations/{location}/featureOnlineStores/{feature_online_store}/featureViews/{feature_view}` # @!attribute [r] create_time # @return [::Google::Protobuf::Timestamp] # Output only. Timestamp when this FeatureView was created. # @!attribute [r] update_time # @return [::Google::Protobuf::Timestamp] # Output only. Timestamp when this FeatureView was last updated. # @!attribute [rw] etag # @return [::String] # Optional. Used to perform consistent read-modify-write updates. If not set, # a blind "overwrite" update happens. # @!attribute [rw] labels # @return [::Google::Protobuf::Map{::String => ::String}] # Optional. The labels with user-defined metadata to organize your # FeatureViews. # # Label keys and values can be no longer than 64 characters # (Unicode codepoints), can only contain lowercase letters, numeric # characters, underscores and dashes. International characters are allowed. # # See https://goo.gl/xmQnxf for more information on and examples of labels. # No more than 64 user labels can be associated with one # FeatureOnlineStore(System labels are excluded)." System reserved label keys # are prefixed with "aiplatform.googleapis.com/" and are immutable. # @!attribute [rw] sync_config # @return [::Google::Cloud::AIPlatform::V1::FeatureView::SyncConfig] # Configures when data is to be synced/updated for this FeatureView. At the # end of the sync the latest featureValues for each entityId of this # FeatureView are made ready for online serving. class FeatureView include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods # @!attribute [rw] uri # @return [::String] # Required. The BigQuery view URI that will be materialized on each sync # trigger based on FeatureView.SyncConfig. # @!attribute [rw] entity_id_columns # @return [::Array<::String>] # Required. Columns to construct entity_id / row keys. Start by supporting # 1 only. class BigQuerySource include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # @!attribute [rw] cron # @return [::String] # Cron schedule (https://en.wikipedia.org/wiki/Cron) to launch scheduled # runs. To explicitly set a timezone to the cron tab, apply a prefix in # the cron tab: "CRON_TZ=$\\{IANA_TIME_ZONE}" or "TZ=$\\{IANA_TIME_ZONE}". # The $\\{IANA_TIME_ZONE} may only be a valid string from IANA time zone # database. For example, "CRON_TZ=America/New_York 1 * * * *", or # "TZ=America/New_York 1 * * * *". class SyncConfig include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # A Feature Registry source for features that need to be synced to Online # Store. # @!attribute [rw] feature_groups # @return [::Array<::Google::Cloud::AIPlatform::V1::FeatureView::FeatureRegistrySource::FeatureGroup>] # Required. List of features that need to be synced to Online Store. class FeatureRegistrySource include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods # Features belonging to a single feature group that will be # synced to Online Store. # @!attribute [rw] feature_group_id # @return [::String] # Required. Identifier of the feature group. # @!attribute [rw] feature_ids # @return [::Array<::String>] # Required. Identifiers of features under the feature group. class FeatureGroup include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end end # @!attribute [rw] key # @return [::String] # @!attribute [rw] value # @return [::String] class LabelsEntry include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end end end end end end