queryArtifactLineageSubgraph method
Retrieves lineage of an Artifact represented through Artifacts and Executions connected by Event edges and returned as a LineageSubgraph.
Request parameters:
artifact
- Required. The resource name of the Artifact whose Lineage
needs to be retrieved as a LineageSubgraph. Format:
projects/{project}/locations/{location}/metadataStores/{metadatastore}/artifacts/{artifact}
The request may error with FAILED_PRECONDITION if the number of Artifacts,
the number of Executions, or the number of Events that would be returned
for the Context exceeds 1000.
Value must have pattern
^projects/\[^/\]+/locations/\[^/\]+/metadataStores/\[^/\]+/artifacts/\[^/\]+$
.
filter
- Filter specifying the boolean condition for the Artifacts to
satisfy in order to be part of the Lineage Subgraph. The syntax to define
filter query is based on https://google.aip.dev/160. The supported set of
filters include the following: * Attribute filtering: For example:
display_name = "test"
Supported fields include: name
, display_name
,
uri
, state
, schema_title
, create_time
, and update_time
. Time
fields, such as create_time
and update_time
, require values specified
in RFC-3339 format. For example: create_time = "2020-11-19T11:30:00-04:00"
* Metadata field: To filter on metadata
fields use traversal operation as follows: metadata..
. For example:
metadata.field_1.number_value = 10.0
In case the field name contains
special characters (such as colon), one can embed it inside double quote.
For example: metadata."field:1".number_value = 10.0
Each of the above
supported filter types can be combined together using logical operators
(AND
& OR
). Maximum nested expression depth allowed is 5. For example:
display_name = "test" AND metadata.field1.bool_value = true
.
maxHops
- Specifies the size of the lineage graph in terms of number of
hops from the specified artifact. Negative Value: INVALID_ARGUMENT error
is returned 0: Only input artifact is returned. No value: Transitive
closure is performed to return the complete graph.
$fields
- Selector specifying which fields to include in a partial
response.
Completes with a GoogleCloudAiplatformV1LineageSubgraph.
Completes with a commons.ApiRequestError if the API endpoint returned an error.
If the used http.Client
completes with an error when making a REST call,
this method will complete with the same error.
Implementation
async.Future<GoogleCloudAiplatformV1LineageSubgraph>
queryArtifactLineageSubgraph(
core.String artifact, {
core.String? filter,
core.int? maxHops,
core.String? $fields,
}) async {
final queryParams_ = <core.String, core.List<core.String>>{
if (filter != null) 'filter': [filter],
if (maxHops != null) 'maxHops': ['${maxHops}'],
if ($fields != null) 'fields': [$fields],
};
final url_ = 'v1/' +
core.Uri.encodeFull('$artifact') +
':queryArtifactLineageSubgraph';
final response_ = await _requester.request(
url_,
'GET',
queryParams: queryParams_,
);
return GoogleCloudAiplatformV1LineageSubgraph.fromJson(
response_ as core.Map<core.String, core.dynamic>);
}