Configures and manages metastore federation services.
Dataproc Metastore Federation Service allows federating a collection of backend metastores like BigQuery, Dataplex Lakes, and other Dataproc Metastores. The Federation Service exposes a gRPC URL through which metadata from the backend metastores are served at query time.
The Dataproc Metastore Federation API defines the following resource model:
- The service works with a collection of Google Cloud projects.
- Each project has a collection of available locations.
- Each location has a collection of federations.
- Dataproc Metastore Federations are resources with names of the form:
projects/{project_number}/locations/{location_id}/federations/{federation_id}
.
Equality
Instances of this class created via copy-construction or copy-assignment always compare equal. Instances created with equal std::shared_ptr<*Connection>
objects compare equal. Objects that compare equal share the same underlying resources.
Performance
Creating a new instance of this class is a relatively expensive operation, new objects establish new connections to the service. In contrast, copy-construction, move-construction, and the corresponding assignment operations are relatively efficient as the copies share all underlying resources.
Thread Safety
Concurrent access to different instances of this class, even if they compare equal, is guaranteed to work. Two or more threads operating on the same instance of this class is not guaranteed to work. Since copy-construction and move-construction is a relatively efficient operation, consider using such a copy when using this class from multiple threads.
Constructors
DataprocMetastoreFederationClient(DataprocMetastoreFederationClient const &)
Copy and move support
Parameter | |
---|---|
Name | Description |
|
DataprocMetastoreFederationClient const &
|
DataprocMetastoreFederationClient(DataprocMetastoreFederationClient &&)
Copy and move support
Parameter | |
---|---|
Name | Description |
|
DataprocMetastoreFederationClient &&
|
DataprocMetastoreFederationClient(std::shared_ptr< DataprocMetastoreFederationConnection >, Options)
Parameters | |
---|---|
Name | Description |
connection |
std::shared_ptr< DataprocMetastoreFederationConnection >
|
opts |
Options
|
Operators
operator=(DataprocMetastoreFederationClient const &)
Copy and move support
Parameter | |
---|---|
Name | Description |
|
DataprocMetastoreFederationClient const &
|
Returns | |
---|---|
Type | Description |
DataprocMetastoreFederationClient & |
operator=(DataprocMetastoreFederationClient &&)
Copy and move support
Parameter | |
---|---|
Name | Description |
|
DataprocMetastoreFederationClient &&
|
Returns | |
---|---|
Type | Description |
DataprocMetastoreFederationClient & |
Functions
ListFederations(std::string const &, Options)
Lists federations in a project and location.
Parameters | |
---|---|
Name | Description |
parent |
std::string const &
Required. The relative resource name of the location of metastore federations to list, in the following form: |
opts |
Options
Optional. Override the class-level options, such as retry and backoff policies. |
Returns | |
---|---|
Type | Description |
StreamRange< google::cloud::metastore::v1::Federation > |
a StreamRange to iterate of the results. See the documentation of this type for details. In brief, this class has |
ListFederations(google::cloud::metastore::v1::ListFederationsRequest, Options)
Lists federations in a project and location.
Parameters | |
---|---|
Name | Description |
request |
google::cloud::metastore::v1::ListFederationsRequest
Unary RPCs, such as the one wrapped by this function, receive a single |
opts |
Options
Optional. Override the class-level options, such as retry and backoff policies. |
Returns | |
---|---|
Type | Description |
StreamRange< google::cloud::metastore::v1::Federation > |
a StreamRange to iterate of the results. See the documentation of this type for details. In brief, this class has |
GetFederation(std::string const &, Options)
Gets the details of a single federation.
Parameters | |
---|---|
Name | Description |
name |
std::string const &
Required. The relative resource name of the metastore federation to retrieve, in the following form: |
opts |
Options
Optional. Override the class-level options, such as retry and backoff policies. |
Returns | |
---|---|
Type | Description |
StatusOr< google::cloud::metastore::v1::Federation > |
the result of the RPC. The response message type (google.cloud.metastore.v1.Federation) is mapped to a C++ class using the Protobuf mapping rules. If the request fails, the |
GetFederation(google::cloud::metastore::v1::GetFederationRequest const &, Options)
Gets the details of a single federation.
Parameters | |
---|---|
Name | Description |
request |
google::cloud::metastore::v1::GetFederationRequest const &
Unary RPCs, such as the one wrapped by this function, receive a single |
opts |
Options
Optional. Override the class-level options, such as retry and backoff policies. |
Returns | |
---|---|
Type | Description |
StatusOr< google::cloud::metastore::v1::Federation > |
the result of the RPC. The response message type (google.cloud.metastore.v1.Federation) is mapped to a C++ class using the Protobuf mapping rules. If the request fails, the |
CreateFederation(std::string const &, google::cloud::metastore::v1::Federation const &, std::string const &, Options)
Creates a metastore federation in a project and location.
Parameters | |
---|---|
Name | Description |
parent |
std::string const &
Required. The relative resource name of the location in which to create a federation service, in the following form: |
federation |
google::cloud::metastore::v1::Federation const &
Required. The Metastore Federation to create. The |
federation_id |
std::string const &
Required. The ID of the metastore federation, which is used as the final component of the metastore federation's name. |
opts |
Options
Optional. Override the class-level options, such as retry and backoff policies. |
Returns | |
---|---|
Type | Description |
future< StatusOr< google::cloud::metastore::v1::Federation > > |
A |
CreateFederation(NoAwaitTag, std::string const &, google::cloud::metastore::v1::Federation const &, std::string const &, Options)
Creates a metastore federation in a project and location.
Specifying the NoAwaitTag
immediately returns the [google::longrunning::Operation
] that corresponds to the Long Running Operation that has been started. No polling for operation status occurs.
Parameters | |
---|---|
Name | Description |
|
NoAwaitTag
|
parent |
std::string const &
|
federation |
google::cloud::metastore::v1::Federation const &
|
federation_id |
std::string const &
|
opts |
Options
|
Returns | |
---|---|
Type | Description |
StatusOr< google::longrunning::Operation > |
CreateFederation(google::cloud::metastore::v1::CreateFederationRequest const &, Options)
Creates a metastore federation in a project and location.
Parameters | |
---|---|
Name | Description |
request |
google::cloud::metastore::v1::CreateFederationRequest const &
Unary RPCs, such as the one wrapped by this function, receive a single |
opts |
Options
Optional. Override the class-level options, such as retry and backoff policies. |
Returns | |
---|---|
Type | Description |
future< StatusOr< google::cloud::metastore::v1::Federation > > |
A |
CreateFederation(NoAwaitTag, google::cloud::metastore::v1::CreateFederationRequest const &, Options)
Creates a metastore federation in a project and location.
Specifying the NoAwaitTag
immediately returns the [google::longrunning::Operation
] that corresponds to the Long Running Operation that has been started. No polling for operation status occurs.
Parameters | |
---|---|
Name | Description |
|
NoAwaitTag
|
request |
google::cloud::metastore::v1::CreateFederationRequest const &
|
opts |
Options
|
Returns | |
---|---|
Type | Description |
StatusOr< google::longrunning::Operation > |
CreateFederation(google::longrunning::Operation const &, Options)
Creates a metastore federation in a project and location.
This method accepts a google::longrunning::Operation
that corresponds to a previously started Long Running Operation (LRO) and polls the status of the LRO in the background.
Parameters | |
---|---|
Name | Description |
operation |
google::longrunning::Operation const &
|
opts |
Options
|
Returns | |
---|---|
Type | Description |
future< StatusOr< google::cloud::metastore::v1::Federation > > |
UpdateFederation(google::cloud::metastore::v1::Federation const &, google::protobuf::FieldMask const &, Options)
Updates the fields of a federation.
Parameters | |
---|---|
Name | Description |
federation |
google::cloud::metastore::v1::Federation const &
Required. The metastore federation to update. The server only merges fields in the service if they are specified in |
update_mask |
google::protobuf::FieldMask const &
Required. A field mask used to specify the fields to be overwritten in the metastore federation resource by the update. Fields specified in the |
opts |
Options
Optional. Override the class-level options, such as retry and backoff policies. |
Returns | |
---|---|
Type | Description |
future< StatusOr< google::cloud::metastore::v1::Federation > > |
A |
UpdateFederation(NoAwaitTag, google::cloud::metastore::v1::Federation const &, google::protobuf::FieldMask const &, Options)
Updates the fields of a federation.
Specifying the NoAwaitTag
immediately returns the [google::longrunning::Operation
] that corresponds to the Long Running Operation that has been started. No polling for operation status occurs.
Parameters | |
---|---|
Name | Description |
|
NoAwaitTag
|
federation |
google::cloud::metastore::v1::Federation const &
|
update_mask |
google::protobuf::FieldMask const &
|
opts |
Options
|
Returns | |
---|---|
Type | Description |
StatusOr< google::longrunning::Operation > |
UpdateFederation(google::cloud::metastore::v1::UpdateFederationRequest const &, Options)
Updates the fields of a federation.
Parameters | |
---|---|
Name | Description |
request |
google::cloud::metastore::v1::UpdateFederationRequest const &
Unary RPCs, such as the one wrapped by this function, receive a single |
opts |
Options
Optional. Override the class-level options, such as retry and backoff policies. |
Returns | |
---|---|
Type | Description |
future< StatusOr< google::cloud::metastore::v1::Federation > > |
A |
UpdateFederation(NoAwaitTag, google::cloud::metastore::v1::UpdateFederationRequest const &, Options)
Updates the fields of a federation.
Specifying the NoAwaitTag
immediately returns the [google::longrunning::Operation
] that corresponds to the Long Running Operation that has been started. No polling for operation status occurs.
Parameters | |
---|---|
Name | Description |
|
NoAwaitTag
|
request |
google::cloud::metastore::v1::UpdateFederationRequest const &
|
opts |
Options
|
Returns | |
---|---|
Type | Description |
StatusOr< google::longrunning::Operation > |
UpdateFederation(google::longrunning::Operation const &, Options)
Updates the fields of a federation.
This method accepts a google::longrunning::Operation
that corresponds to a previously started Long Running Operation (LRO) and polls the status of the LRO in the background.
Parameters | |
---|---|
Name | Description |
operation |
google::longrunning::Operation const &
|
opts |
Options
|
Returns | |
---|---|
Type | Description |
future< StatusOr< google::cloud::metastore::v1::Federation > > |
DeleteFederation(std::string const &, Options)
Deletes a single federation.
Parameters | |
---|---|
Name | Description |
name |
std::string const &
Required. The relative resource name of the metastore federation to delete, in the following form: |
opts |
Options
Optional. Override the class-level options, such as retry and backoff policies. |
Returns | |
---|---|
Type | Description |
future< StatusOr< google::cloud::metastore::v1::OperationMetadata > > |
A |
DeleteFederation(NoAwaitTag, std::string const &, Options)
Deletes a single federation.
Specifying the NoAwaitTag
immediately returns the [google::longrunning::Operation
] that corresponds to the Long Running Operation that has been started. No polling for operation status occurs.
Parameters | |
---|---|
Name | Description |
|
NoAwaitTag
|
name |
std::string const &
|
opts |
Options
|
Returns | |
---|---|
Type | Description |
StatusOr< google::longrunning::Operation > |
DeleteFederation(google::cloud::metastore::v1::DeleteFederationRequest const &, Options)
Deletes a single federation.
Parameters | |
---|---|
Name | Description |
request |
google::cloud::metastore::v1::DeleteFederationRequest const &
Unary RPCs, such as the one wrapped by this function, receive a single |
opts |
Options
Optional. Override the class-level options, such as retry and backoff policies. |
Returns | |
---|---|
Type | Description |
future< StatusOr< google::cloud::metastore::v1::OperationMetadata > > |
A |
DeleteFederation(NoAwaitTag, google::cloud::metastore::v1::DeleteFederationRequest const &, Options)
Deletes a single federation.
Specifying the NoAwaitTag
immediately returns the [google::longrunning::Operation
] that corresponds to the Long Running Operation that has been started. No polling for operation status occurs.
Parameters | |
---|---|
Name | Description |
|
NoAwaitTag
|
request |
google::cloud::metastore::v1::DeleteFederationRequest const &
|
opts |
Options
|
Returns | |
---|---|
Type | Description |
StatusOr< google::longrunning::Operation > |
DeleteFederation(google::longrunning::Operation const &, Options)
Deletes a single federation.
This method accepts a google::longrunning::Operation
that corresponds to a previously started Long Running Operation (LRO) and polls the status of the LRO in the background.
Parameters | |
---|---|
Name | Description |
operation |
google::longrunning::Operation const &
|
opts |
Options
|
Returns | |
---|---|
Type | Description |
future< StatusOr< google::cloud::metastore::v1::OperationMetadata > > |
ListLocations(google::cloud::location::ListLocationsRequest, Options)
Lists information about the supported locations for this service.
Parameters | |
---|---|
Name | Description |
request |
google::cloud::location::ListLocationsRequest
Unary RPCs, such as the one wrapped by this function, receive a single |
opts |
Options
Optional. Override the class-level options, such as retry and backoff policies. |
Returns | |
---|---|
Type | Description |
StreamRange< google::cloud::location::Location > |
a StreamRange to iterate of the results. See the documentation of this type for details. In brief, this class has |
GetLocation(google::cloud::location::GetLocationRequest const &, Options)
Gets information about a location.
Parameters | |
---|---|
Name | Description |
request |
google::cloud::location::GetLocationRequest const &
Unary RPCs, such as the one wrapped by this function, receive a single |
opts |
Options
Optional. Override the class-level options, such as retry and backoff policies. |
Returns | |
---|---|
Type | Description |
StatusOr< google::cloud::location::Location > |
the result of the RPC. The response message type (google.cloud.location.Location) is mapped to a C++ class using the Protobuf mapping rules. If the request fails, the |
SetIamPolicy(google::iam::v1::SetIamPolicyRequest const &, Options)
Sets the access control policy on the specified resource.
Replaces any existing policy.
Can return NOT_FOUND
, INVALID_ARGUMENT
, and PERMISSION_DENIED
errors.
Parameters | |
---|---|
Name | Description |
request |
google::iam::v1::SetIamPolicyRequest const &
Unary RPCs, such as the one wrapped by this function, receive a single |
opts |
Options
Optional. Override the class-level options, such as retry and backoff policies. |
Returns | |
---|---|
Type | Description |
StatusOr< google::iam::v1::Policy > |
the result of the RPC. The response message type (google.iam.v1.Policy) is mapped to a C++ class using the Protobuf mapping rules. If the request fails, the |
GetIamPolicy(google::iam::v1::GetIamPolicyRequest const &, Options)
Gets the access control policy for a resource.
Returns an empty policy if the resource exists and does not have a policy set.
Parameters | |
---|---|
Name | Description |
request |
google::iam::v1::GetIamPolicyRequest const &
Unary RPCs, such as the one wrapped by this function, receive a single |
opts |
Options
Optional. Override the class-level options, such as retry and backoff policies. |
Returns | |
---|---|
Type | Description |
StatusOr< google::iam::v1::Policy > |
the result of the RPC. The response message type (google.iam.v1.Policy) is mapped to a C++ class using the Protobuf mapping rules. If the request fails, the |
TestIamPermissions(google::iam::v1::TestIamPermissionsRequest const &, Options)
Returns permissions that a caller has on the specified resource.
If the resource does not exist, this will return an empty set of permissions, not a NOT_FOUND
error.
Note: This operation is designed to be used for building permission-aware UIs and command-line tools, not for authorization checking. This operation may "fail open" without warning.
Parameters | |
---|---|
Name | Description |
request |
google::iam::v1::TestIamPermissionsRequest const &
Unary RPCs, such as the one wrapped by this function, receive a single |
opts |
Options
Optional. Override the class-level options, such as retry and backoff policies. |
Returns | |
---|---|
Type | Description |
StatusOr< google::iam::v1::TestIamPermissionsResponse > |
the result of the RPC. The response message type (google.iam.v1.TestIamPermissionsResponse) is mapped to a C++ class using the Protobuf mapping rules. If the request fails, the |
ListOperations(std::string const &, std::string const &, Options)
Lists operations that match the specified filter in the request.
If the server doesn't support this method, it returns UNIMPLEMENTED
.
Parameters | |
---|---|
Name | Description |
name |
std::string const &
The name of the operation's parent resource. |
filter |
std::string const &
The standard list filter. |
opts |
Options
Optional. Override the class-level options, such as retry and backoff policies. |
Returns | |
---|---|
Type | Description |
StreamRange< google::longrunning::Operation > |
a StreamRange to iterate of the results. See the documentation of this type for details. In brief, this class has |
ListOperations(google::longrunning::ListOperationsRequest, Options)
Lists operations that match the specified filter in the request.
If the server doesn't support this method, it returns UNIMPLEMENTED
.
Parameters | |
---|---|
Name | Description |
request |
google::longrunning::ListOperationsRequest
Unary RPCs, such as the one wrapped by this function, receive a single |
opts |
Options
Optional. Override the class-level options, such as retry and backoff policies. |
Returns | |
---|---|
Type | Description |
StreamRange< google::longrunning::Operation > |
a StreamRange to iterate of the results. See the documentation of this type for details. In brief, this class has |
GetOperation(std::string const &, Options)
Gets the latest state of a long-running operation.
Clients can use this method to poll the operation result at intervals as recommended by the API service.
Parameters | |
---|---|
Name | Description |
name |
std::string const &
The name of the operation resource. |
opts |
Options
Optional. Override the class-level options, such as retry and backoff policies. |
Returns | |
---|---|
Type | Description |
StatusOr< google::longrunning::Operation > |
the result of the RPC. The response message type (google.longrunning.Operation) is mapped to a C++ class using the Protobuf mapping rules. If the request fails, the |
GetOperation(google::longrunning::GetOperationRequest const &, Options)
Gets the latest state of a long-running operation.
Clients can use this method to poll the operation result at intervals as recommended by the API service.
Parameters | |
---|---|
Name | Description |
request |
google::longrunning::GetOperationRequest const &
Unary RPCs, such as the one wrapped by this function, receive a single |
opts |
Options
Optional. Override the class-level options, such as retry and backoff policies. |
Returns | |
---|---|
Type | Description |
StatusOr< google::longrunning::Operation > |
the result of the RPC. The response message type (google.longrunning.Operation) is mapped to a C++ class using the Protobuf mapping rules. If the request fails, the |
DeleteOperation(std::string const &, Options)
Deletes a long-running operation.
This method indicates that the client is no longer interested in the operation result. It does not cancel the operation. If the server doesn't support this method, it returns google.rpc.Code.UNIMPLEMENTED
.
Parameters | |
---|---|
Name | Description |
name |
std::string const &
The name of the operation resource to be deleted. |
opts |
Options
Optional. Override the class-level options, such as retry and backoff policies. |
Returns | |
---|---|
Type | Description |
Status |
a |
DeleteOperation(google::longrunning::DeleteOperationRequest const &, Options)
Deletes a long-running operation.
This method indicates that the client is no longer interested in the operation result. It does not cancel the operation. If the server doesn't support this method, it returns google.rpc.Code.UNIMPLEMENTED
.
Parameters | |
---|---|
Name | Description |
request |
google::longrunning::DeleteOperationRequest const &
Unary RPCs, such as the one wrapped by this function, receive a single |
opts |
Options
Optional. Override the class-level options, such as retry and backoff policies. |
Returns | |
---|---|
Type | Description |
Status |
a |
CancelOperation(std::string const &, Options)
Starts asynchronous cancellation on a long-running operation.
The server makes a best effort to cancel the operation, but success is not guaranteed. If the server doesn't support this method, it returns google.rpc.Code.UNIMPLEMENTED
. Clients can use Operations.GetOperation or other methods to check whether the cancellation succeeded or whether the operation completed despite cancellation. On successful cancellation, the operation is not deleted; instead, it becomes an operation with an Operation.error value with a google.rpc.Status.code of 1
, corresponding to Code.CANCELLED
.
Parameters | |
---|---|
Name | Description |
name |
std::string const &
The name of the operation resource to be cancelled. |
opts |
Options
Optional. Override the class-level options, such as retry and backoff policies. |
Returns | |
---|---|
Type | Description |
Status |
a |
CancelOperation(google::longrunning::CancelOperationRequest const &, Options)
Starts asynchronous cancellation on a long-running operation.
The server makes a best effort to cancel the operation, but success is not guaranteed. If the server doesn't support this method, it returns google.rpc.Code.UNIMPLEMENTED
. Clients can use Operations.GetOperation or other methods to check whether the cancellation succeeded or whether the operation completed despite cancellation. On successful cancellation, the operation is not deleted; instead, it becomes an operation with an Operation.error value with a google.rpc.Status.code of 1
, corresponding to Code.CANCELLED
.
Parameters | |
---|---|
Name | Description |
request |
google::longrunning::CancelOperationRequest const &
Unary RPCs, such as the one wrapped by this function, receive a single |
opts |
Options
Optional. Override the class-level options, such as retry and backoff policies. |
Returns | |
---|---|
Type | Description |
Status |
a |