Class LineageGrpc.LineageBlockingStub (0.85.0)

public static final class LineageGrpc.LineageBlockingStub extends AbstractBlockingStub<LineageGrpc.LineageBlockingStub>

A stub to allow clients to do limited synchronous rpc calls to service Lineage.

Lineage is used to track data flows between assets over time. You can create LineageEvents to record lineage between multiple sources and a single target, for example, when table data is based on data from multiple tables.

Inheritance

java.lang.Object > io.grpc.stub.AbstractStub > io.grpc.stub.AbstractBlockingStub > LineageGrpc.LineageBlockingStub

Methods

batchSearchLinkProcesses(BatchSearchLinkProcessesRequest request)

public BatchSearchLinkProcessesResponse batchSearchLinkProcesses(BatchSearchLinkProcessesRequest request)

Retrieve information about LineageProcesses associated with specific links. LineageProcesses are transformation pipelines that result in data flowing from source to target assets. Links between assets represent this operation. If you have specific link names, you can use this method to verify which LineageProcesses contribute to creating those links. See the SearchLinks method for more information on how to retrieve link name. You can retrieve the LineageProcess information in every project where you have the datalineage.events.get permission. The project provided in the URL is used for Billing and Quota.

Parameter
Name Description
request BatchSearchLinkProcessesRequest
Returns
Type Description
BatchSearchLinkProcessesResponse

build(Channel channel, CallOptions callOptions)

protected LineageGrpc.LineageBlockingStub build(Channel channel, CallOptions callOptions)
Parameters
Name Description
channel io.grpc.Channel
callOptions io.grpc.CallOptions
Returns
Type Description
LineageGrpc.LineageBlockingStub
Overrides
io.grpc.stub.AbstractStub.build(io.grpc.Channel,io.grpc.CallOptions)

createLineageEvent(CreateLineageEventRequest request)

public LineageEvent createLineageEvent(CreateLineageEventRequest request)

Creates a new lineage event.

Parameter
Name Description
request CreateLineageEventRequest
Returns
Type Description
LineageEvent

createProcess(CreateProcessRequest request)

public Process createProcess(CreateProcessRequest request)

Creates a new process.

Parameter
Name Description
request CreateProcessRequest
Returns
Type Description
Process

createRun(CreateRunRequest request)

public Run createRun(CreateRunRequest request)

Creates a new run.

Parameter
Name Description
request CreateRunRequest
Returns
Type Description
Run

deleteLineageEvent(DeleteLineageEventRequest request)

public Empty deleteLineageEvent(DeleteLineageEventRequest request)

Deletes the lineage event with the specified name.

Parameter
Name Description
request DeleteLineageEventRequest
Returns
Type Description
Empty

deleteProcess(DeleteProcessRequest request)

public Operation deleteProcess(DeleteProcessRequest request)

Deletes the process with the specified name.

Parameter
Name Description
request DeleteProcessRequest
Returns
Type Description
Operation

deleteRun(DeleteRunRequest request)

public Operation deleteRun(DeleteRunRequest request)

Deletes the run with the specified name.

Parameter
Name Description
request DeleteRunRequest
Returns
Type Description
Operation

getLineageEvent(GetLineageEventRequest request)

public LineageEvent getLineageEvent(GetLineageEventRequest request)

Gets details of a specified lineage event.

Parameter
Name Description
request GetLineageEventRequest
Returns
Type Description
LineageEvent

getProcess(GetProcessRequest request)

public Process getProcess(GetProcessRequest request)

Gets the details of the specified process.

Parameter
Name Description
request GetProcessRequest
Returns
Type Description
Process

getRun(GetRunRequest request)

public Run getRun(GetRunRequest request)

Gets the details of the specified run.

Parameter
Name Description
request GetRunRequest
Returns
Type Description
Run

listLineageEvents(ListLineageEventsRequest request)

public ListLineageEventsResponse listLineageEvents(ListLineageEventsRequest request)

Lists lineage events in the given project and location. The list order is not defined.

Parameter
Name Description
request ListLineageEventsRequest
Returns
Type Description
ListLineageEventsResponse

listProcesses(ListProcessesRequest request)

public ListProcessesResponse listProcesses(ListProcessesRequest request)

List processes in the given project and location. List order is descending by insertion time.

Parameter
Name Description
request ListProcessesRequest
Returns
Type Description
ListProcessesResponse

listRuns(ListRunsRequest request)

public ListRunsResponse listRuns(ListRunsRequest request)

Lists runs in the given project and location. List order is descending by start_time.

Parameter
Name Description
request ListRunsRequest
Returns
Type Description
ListRunsResponse

processOpenLineageRunEvent(ProcessOpenLineageRunEventRequest request)

public ProcessOpenLineageRunEventResponse processOpenLineageRunEvent(ProcessOpenLineageRunEventRequest request)

Creates new lineage events together with their parents: process and run. Updates the process and run if they already exist. Mapped from Open Lineage specification: https://github.com/OpenLineage/OpenLineage/blob/main/spec/OpenLineage.json.

Parameter
Name Description
request ProcessOpenLineageRunEventRequest
Returns
Type Description
ProcessOpenLineageRunEventResponse

searchLineageStreaming(SearchLineageStreamingRequest request)

public Iterator<SearchLineageStreamingResponse> searchLineageStreaming(SearchLineageStreamingRequest request)

Retrieves a streaming response of lineage links connected to the requested assets by performing a breadth-first search in the given direction. Links represent the data flow between source (upstream) and target (downstream) assets in transformation pipelines. Links are stored in the same project as the Lineage Events that create them. This method retrieves links from all valid locations provided in the request. This method supports Column-Level Lineage (CLL) along with wildcard support to retrieve all CLL for an Entity FQN. Following permissions are required to retrieve links:

  • datalineage.events.get permission for the project where the link is stored for entity-level lineage.
  • datalineage.events.getFields permission for the project where the link is stored for column-level lineage. This method also returns processes that created the links if explicitly requested by setting max_process_per_link is non-zero and full process details are requested via links.processes.process in the FieldMask. Permission required to retrieve processes:
  • datalineage.processes.get permission for the project where the process is stored.
Parameter
Name Description
request SearchLineageStreamingRequest
Returns
Type Description
Iterator<SearchLineageStreamingResponse>
public SearchLinksResponse searchLinks(SearchLinksRequest request)

Retrieve a list of links connected to a specific asset. Links represent the data flow between source (upstream) and target (downstream) assets in transformation pipelines. Links are stored in the same project as the Lineage Events that create them. You can retrieve links in every project where you have the datalineage.events.get permission. The project provided in the URL is used for Billing and Quota.

Parameter
Name Description
request SearchLinksRequest
Returns
Type Description
SearchLinksResponse

updateProcess(UpdateProcessRequest request)

public Process updateProcess(UpdateProcessRequest request)

Updates a process.

Parameter
Name Description
request UpdateProcessRequest
Returns
Type Description
Process

updateRun(UpdateRunRequest request)

public Run updateRun(UpdateRunRequest request)

Updates a run.

Parameter
Name Description
request UpdateRunRequest
Returns
Type Description
Run