Interface ReservationServiceGrpc.AsyncService
-
- All Known Implementing Classes:
ReservationServiceGrpc.ReservationServiceImplBase
- Enclosing class:
- ReservationServiceGrpc
public static interface ReservationServiceGrpc.AsyncService
This API allows users to manage their BigQuery reservations. A reservation provides computational resource guarantees, in the form of [slots](https://cloud.google.com/bigquery/docs/slots), to users. A slot is a unit of computational power in BigQuery, and serves as the basic unit of parallelism. In a scan of a multi-partitioned table, a single slot operates on a single partition of the table. A reservation resource exists as a child resource of the admin project and location, e.g.: `projects/myproject/locations/US/reservations/reservationName`. A capacity commitment is a way to purchase compute capacity for BigQuery jobs (in the form of slots) with some committed period of usage. A capacity commitment resource exists as a child resource of the admin project and location, e.g.: `projects/myproject/locations/US/capacityCommitments/id`.
-
-
Method Summary
All Methods Instance Methods Default Methods Deprecated Methods Modifier and Type Method Description default void
createAssignment(CreateAssignmentRequest request, io.grpc.stub.StreamObserver<Assignment> responseObserver)
Creates an assignment object which allows the given project to submit jobs of a certain type using slots from the specified reservation.default void
createCapacityCommitment(CreateCapacityCommitmentRequest request, io.grpc.stub.StreamObserver<CapacityCommitment> responseObserver)
Creates a new capacity commitment resource.default void
createReservation(CreateReservationRequest request, io.grpc.stub.StreamObserver<Reservation> responseObserver)
Creates a new reservation resource.default void
deleteAssignment(DeleteAssignmentRequest request, io.grpc.stub.StreamObserver<com.google.protobuf.Empty> responseObserver)
Deletes a assignment.default void
deleteCapacityCommitment(DeleteCapacityCommitmentRequest request, io.grpc.stub.StreamObserver<com.google.protobuf.Empty> responseObserver)
Deletes a capacity commitment.default void
deleteReservation(DeleteReservationRequest request, io.grpc.stub.StreamObserver<com.google.protobuf.Empty> responseObserver)
Deletes a reservation.default void
getBiReservation(GetBiReservationRequest request, io.grpc.stub.StreamObserver<BiReservation> responseObserver)
Retrieves a BI reservation.default void
getCapacityCommitment(GetCapacityCommitmentRequest request, io.grpc.stub.StreamObserver<CapacityCommitment> responseObserver)
Returns information about the capacity commitment.default void
getReservation(GetReservationRequest request, io.grpc.stub.StreamObserver<Reservation> responseObserver)
Returns information about the reservation.default void
listAssignments(ListAssignmentsRequest request, io.grpc.stub.StreamObserver<ListAssignmentsResponse> responseObserver)
Lists assignments.default void
listCapacityCommitments(ListCapacityCommitmentsRequest request, io.grpc.stub.StreamObserver<ListCapacityCommitmentsResponse> responseObserver)
Lists all the capacity commitments for the admin project.default void
listReservations(ListReservationsRequest request, io.grpc.stub.StreamObserver<ListReservationsResponse> responseObserver)
Lists all the reservations for the project in the specified location.default void
mergeCapacityCommitments(MergeCapacityCommitmentsRequest request, io.grpc.stub.StreamObserver<CapacityCommitment> responseObserver)
Merges capacity commitments of the same plan into a single commitment.default void
moveAssignment(MoveAssignmentRequest request, io.grpc.stub.StreamObserver<Assignment> responseObserver)
Moves an assignment under a new reservation.default void
searchAllAssignments(SearchAllAssignmentsRequest request, io.grpc.stub.StreamObserver<SearchAllAssignmentsResponse> responseObserver)
Looks up assignments for a specified resource for a particular region.default void
searchAssignments(SearchAssignmentsRequest request, io.grpc.stub.StreamObserver<SearchAssignmentsResponse> responseObserver)
Deprecated.default void
splitCapacityCommitment(SplitCapacityCommitmentRequest request, io.grpc.stub.StreamObserver<SplitCapacityCommitmentResponse> responseObserver)
Splits capacity commitment to two commitments of the same plan and `commitment_end_time`.default void
updateAssignment(UpdateAssignmentRequest request, io.grpc.stub.StreamObserver<Assignment> responseObserver)
Updates an existing assignment.default void
updateBiReservation(UpdateBiReservationRequest request, io.grpc.stub.StreamObserver<BiReservation> responseObserver)
Updates a BI reservation.default void
updateCapacityCommitment(UpdateCapacityCommitmentRequest request, io.grpc.stub.StreamObserver<CapacityCommitment> responseObserver)
Updates an existing capacity commitment.default void
updateReservation(UpdateReservationRequest request, io.grpc.stub.StreamObserver<Reservation> responseObserver)
Updates an existing reservation resource.
-
-
-
Method Detail
-
createReservation
default void createReservation(CreateReservationRequest request, io.grpc.stub.StreamObserver<Reservation> responseObserver)
Creates a new reservation resource.
-
listReservations
default void listReservations(ListReservationsRequest request, io.grpc.stub.StreamObserver<ListReservationsResponse> responseObserver)
Lists all the reservations for the project in the specified location.
-
getReservation
default void getReservation(GetReservationRequest request, io.grpc.stub.StreamObserver<Reservation> responseObserver)
Returns information about the reservation.
-
deleteReservation
default void deleteReservation(DeleteReservationRequest request, io.grpc.stub.StreamObserver<com.google.protobuf.Empty> responseObserver)
Deletes a reservation. Returns `google.rpc.Code.FAILED_PRECONDITION` when reservation has assignments.
-
updateReservation
default void updateReservation(UpdateReservationRequest request, io.grpc.stub.StreamObserver<Reservation> responseObserver)
Updates an existing reservation resource.
-
createCapacityCommitment
default void createCapacityCommitment(CreateCapacityCommitmentRequest request, io.grpc.stub.StreamObserver<CapacityCommitment> responseObserver)
Creates a new capacity commitment resource.
-
listCapacityCommitments
default void listCapacityCommitments(ListCapacityCommitmentsRequest request, io.grpc.stub.StreamObserver<ListCapacityCommitmentsResponse> responseObserver)
Lists all the capacity commitments for the admin project.
-
getCapacityCommitment
default void getCapacityCommitment(GetCapacityCommitmentRequest request, io.grpc.stub.StreamObserver<CapacityCommitment> responseObserver)
Returns information about the capacity commitment.
-
deleteCapacityCommitment
default void deleteCapacityCommitment(DeleteCapacityCommitmentRequest request, io.grpc.stub.StreamObserver<com.google.protobuf.Empty> responseObserver)
Deletes a capacity commitment. Attempting to delete capacity commitment before its commitment_end_time will fail with the error code `google.rpc.Code.FAILED_PRECONDITION`.
-
updateCapacityCommitment
default void updateCapacityCommitment(UpdateCapacityCommitmentRequest request, io.grpc.stub.StreamObserver<CapacityCommitment> responseObserver)
Updates an existing capacity commitment. Only `plan` and `renewal_plan` fields can be updated. Plan can only be changed to a plan of a longer commitment period. Attempting to change to a plan with shorter commitment period will fail with the error code `google.rpc.Code.FAILED_PRECONDITION`.
-
splitCapacityCommitment
default void splitCapacityCommitment(SplitCapacityCommitmentRequest request, io.grpc.stub.StreamObserver<SplitCapacityCommitmentResponse> responseObserver)
Splits capacity commitment to two commitments of the same plan and `commitment_end_time`. A common use case is to enable downgrading commitments. For example, in order to downgrade from 10000 slots to 8000, you might split a 10000 capacity commitment into commitments of 2000 and 8000. Then, you delete the first one after the commitment end time passes.
-
mergeCapacityCommitments
default void mergeCapacityCommitments(MergeCapacityCommitmentsRequest request, io.grpc.stub.StreamObserver<CapacityCommitment> responseObserver)
Merges capacity commitments of the same plan into a single commitment. The resulting capacity commitment has the greater commitment_end_time out of the to-be-merged capacity commitments. Attempting to merge capacity commitments of different plan will fail with the error code `google.rpc.Code.FAILED_PRECONDITION`.
-
createAssignment
default void createAssignment(CreateAssignmentRequest request, io.grpc.stub.StreamObserver<Assignment> responseObserver)
Creates an assignment object which allows the given project to submit jobs of a certain type using slots from the specified reservation. Currently a resource (project, folder, organization) can only have one assignment per each (job_type, location) combination, and that reservation will be used for all jobs of the matching type. Different assignments can be created on different levels of the projects, folders or organization hierarchy. During query execution, the assignment is looked up at the project, folder and organization levels in that order. The first assignment found is applied to the query. When creating assignments, it does not matter if other assignments exist at higher levels. Example: * The organization `organizationA` contains two projects, `project1` and `project2`. * Assignments for all three entities (`organizationA`, `project1`, and `project2`) could all be created and mapped to the same or different reservations. "None" assignments represent an absence of the assignment. Projects assigned to None use on-demand pricing. To create a "None" assignment, use "none" as a reservation_id in the parent. Example parent: `projects/myproject/locations/US/reservations/none`. Returns `google.rpc.Code.PERMISSION_DENIED` if user does not have 'bigquery.admin' permissions on the project using the reservation and the project that owns this reservation. Returns `google.rpc.Code.INVALID_ARGUMENT` when location of the assignment does not match location of the reservation.
-
listAssignments
default void listAssignments(ListAssignmentsRequest request, io.grpc.stub.StreamObserver<ListAssignmentsResponse> responseObserver)
Lists assignments. Only explicitly created assignments will be returned. Example: * Organization `organizationA` contains two projects, `project1` and `project2`. * Reservation `res1` exists and was created previously. * CreateAssignment was used previously to define the following associations between entities and reservations: `<organizationA, res1>` and `<project1, res1>` In this example, ListAssignments will just return the above two assignments for reservation `res1`, and no expansion/merge will happen. The wildcard "-" can be used for reservations in the request. In that case all assignments belongs to the specified project and location will be listed. **Note** "-" cannot be used for projects nor locations.
-
deleteAssignment
default void deleteAssignment(DeleteAssignmentRequest request, io.grpc.stub.StreamObserver<com.google.protobuf.Empty> responseObserver)
Deletes a assignment. No expansion will happen. Example: * Organization `organizationA` contains two projects, `project1` and `project2`. * Reservation `res1` exists and was created previously. * CreateAssignment was used previously to define the following associations between entities and reservations: `<organizationA, res1>` and `<project1, res1>` In this example, deletion of the `<organizationA, res1>` assignment won't affect the other assignment `<project1, res1>`. After said deletion, queries from `project1` will still use `res1` while queries from `project2` will switch to use on-demand mode.
-
searchAssignments
@Deprecated default void searchAssignments(SearchAssignmentsRequest request, io.grpc.stub.StreamObserver<SearchAssignmentsResponse> responseObserver)
Deprecated.Deprecated: Looks up assignments for a specified resource for a particular region. If the request is about a project: 1. Assignments created on the project will be returned if they exist. 2. Otherwise assignments created on the closest ancestor will be returned. 3. Assignments for different JobTypes will all be returned. The same logic applies if the request is about a folder. If the request is about an organization, then assignments created on the organization will be returned (organization doesn't have ancestors). Comparing to ListAssignments, there are some behavior differences: 1. permission on the assignee will be verified in this API. 2. Hierarchy lookup (project->folder->organization) happens in this API. 3. Parent here is `projects/*/locations/*`, instead of `projects/*/locations/*reservations/*`. **Note** "-" cannot be used for projects nor locations.
-
searchAllAssignments
default void searchAllAssignments(SearchAllAssignmentsRequest request, io.grpc.stub.StreamObserver<SearchAllAssignmentsResponse> responseObserver)
Looks up assignments for a specified resource for a particular region. If the request is about a project: 1. Assignments created on the project will be returned if they exist. 2. Otherwise assignments created on the closest ancestor will be returned. 3. Assignments for different JobTypes will all be returned. The same logic applies if the request is about a folder. If the request is about an organization, then assignments created on the organization will be returned (organization doesn't have ancestors). Comparing to ListAssignments, there are some behavior differences: 1. permission on the assignee will be verified in this API. 2. Hierarchy lookup (project->folder->organization) happens in this API. 3. Parent here is `projects/*/locations/*`, instead of `projects/*/locations/*reservations/*`.
-
moveAssignment
default void moveAssignment(MoveAssignmentRequest request, io.grpc.stub.StreamObserver<Assignment> responseObserver)
Moves an assignment under a new reservation. This differs from removing an existing assignment and recreating a new one by providing a transactional change that ensures an assignee always has an associated reservation.
-
updateAssignment
default void updateAssignment(UpdateAssignmentRequest request, io.grpc.stub.StreamObserver<Assignment> responseObserver)
Updates an existing assignment. Only the `priority` field can be updated.
-
getBiReservation
default void getBiReservation(GetBiReservationRequest request, io.grpc.stub.StreamObserver<BiReservation> responseObserver)
Retrieves a BI reservation.
-
updateBiReservation
default void updateBiReservation(UpdateBiReservationRequest request, io.grpc.stub.StreamObserver<BiReservation> responseObserver)
Updates a BI reservation. Only fields specified in the `field_mask` are updated. A singleton BI reservation always exists with default size 0. In order to reserve BI capacity it needs to be updated to an amount greater than 0. In order to release BI capacity reservation size must be set to 0.
-
-