A client to Data Lineage API
The interfaces provided are listed below, along with usage samples.
LineageClient
Service Description: 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.
Sample for LineageClient:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (LineageClient lineageClient = LineageClient.create()) {
LocationName parent = LocationName.of("[PROJECT]", "[LOCATION]");
Process process = Process.newBuilder().build();
Process response = lineageClient.createProcess(parent, process);
}
Classes
BatchSearchLinkProcessesRequest
Request message for BatchSearchLinkProcesses.
Protobuf type google.cloud.datacatalog.lineage.v1.BatchSearchLinkProcessesRequest
BatchSearchLinkProcessesRequest.Builder
Request message for BatchSearchLinkProcesses.
Protobuf type google.cloud.datacatalog.lineage.v1.BatchSearchLinkProcessesRequest
BatchSearchLinkProcessesResponse
Response message for BatchSearchLinkProcesses.
Protobuf type google.cloud.datacatalog.lineage.v1.BatchSearchLinkProcessesResponse
BatchSearchLinkProcessesResponse.Builder
Response message for BatchSearchLinkProcesses.
Protobuf type google.cloud.datacatalog.lineage.v1.BatchSearchLinkProcessesResponse
CreateLineageEventRequest
Request message for CreateLineageEvent.
Protobuf type google.cloud.datacatalog.lineage.v1.CreateLineageEventRequest
CreateLineageEventRequest.Builder
Request message for CreateLineageEvent.
Protobuf type google.cloud.datacatalog.lineage.v1.CreateLineageEventRequest
CreateProcessRequest
Request message for CreateProcess.
Protobuf type google.cloud.datacatalog.lineage.v1.CreateProcessRequest
CreateProcessRequest.Builder
Request message for CreateProcess.
Protobuf type google.cloud.datacatalog.lineage.v1.CreateProcessRequest
CreateRunRequest
Request message for CreateRun.
Protobuf type google.cloud.datacatalog.lineage.v1.CreateRunRequest
CreateRunRequest.Builder
Request message for CreateRun.
Protobuf type google.cloud.datacatalog.lineage.v1.CreateRunRequest
DeleteLineageEventRequest
Request message for DeleteLineageEvent.
Protobuf type google.cloud.datacatalog.lineage.v1.DeleteLineageEventRequest
DeleteLineageEventRequest.Builder
Request message for DeleteLineageEvent.
Protobuf type google.cloud.datacatalog.lineage.v1.DeleteLineageEventRequest
DeleteProcessRequest
Request message for DeleteProcess.
Protobuf type google.cloud.datacatalog.lineage.v1.DeleteProcessRequest
DeleteProcessRequest.Builder
Request message for DeleteProcess.
Protobuf type google.cloud.datacatalog.lineage.v1.DeleteProcessRequest
DeleteRunRequest
Request message for DeleteRun.
Protobuf type google.cloud.datacatalog.lineage.v1.DeleteRunRequest
DeleteRunRequest.Builder
Request message for DeleteRun.
Protobuf type google.cloud.datacatalog.lineage.v1.DeleteRunRequest
EntityReference
The soft reference to everything you can attach a lineage event to.
Protobuf type google.cloud.datacatalog.lineage.v1.EntityReference
EntityReference.Builder
The soft reference to everything you can attach a lineage event to.
Protobuf type google.cloud.datacatalog.lineage.v1.EntityReference
EventLink
A lineage between source and target entities.
Protobuf type google.cloud.datacatalog.lineage.v1.EventLink
EventLink.Builder
A lineage between source and target entities.
Protobuf type google.cloud.datacatalog.lineage.v1.EventLink
GetLineageEventRequest
Request message for GetLineageEvent.
Protobuf type google.cloud.datacatalog.lineage.v1.GetLineageEventRequest
GetLineageEventRequest.Builder
Request message for GetLineageEvent.
Protobuf type google.cloud.datacatalog.lineage.v1.GetLineageEventRequest
GetProcessRequest
Request message for GetProcess.
Protobuf type google.cloud.datacatalog.lineage.v1.GetProcessRequest
GetProcessRequest.Builder
Request message for GetProcess.
Protobuf type google.cloud.datacatalog.lineage.v1.GetProcessRequest
GetRunRequest
Request message for GetRun.
Protobuf type google.cloud.datacatalog.lineage.v1.GetRunRequest
GetRunRequest.Builder
Request message for GetRun.
Protobuf type google.cloud.datacatalog.lineage.v1.GetRunRequest
LineageClient
Service Description: 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.
This class provides the ability to make remote calls to the backing service through method calls that map to API methods. Sample code to get started:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (LineageClient lineageClient = LineageClient.create()) {
LocationName parent = LocationName.of("[PROJECT]", "[LOCATION]");
Process process = Process.newBuilder().build();
Process response = lineageClient.createProcess(parent, process);
}
Note: close() needs to be called on the LineageClient object to clean up resources such as threads. In the example above, try-with-resources is used, which automatically calls close().
The surface of this class includes several types of Java methods for each of the API's methods:
- A "flattened" method. With this type of method, the fields of the request type have been converted into function parameters. It may be the case that not all fields are available as parameters, and not every API method will have a flattened method entry point.
- A "request object" method. This type of method only takes one parameter, a request object, which must be constructed before the call. Not every API method will have a request object method.
- A "callable" method. This type of method takes no parameters and returns an immutable API callable object, which can be used to initiate calls to the service.
See the individual methods for example code.
Many parameters require resource names to be formatted in a particular way. To assist with these names, this class includes a format method for each type of name, and additionally a parse method to extract the individual identifiers contained within names that are returned.
This class can be customized by passing in a custom instance of LineageSettings to create(). For example:
To customize credentials:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
LineageSettings lineageSettings =
LineageSettings.newBuilder()
.setCredentialsProvider(FixedCredentialsProvider.create(myCredentials))
.build();
LineageClient lineageClient = LineageClient.create(lineageSettings);
To customize the endpoint:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
LineageSettings lineageSettings = LineageSettings.newBuilder().setEndpoint(myEndpoint).build();
LineageClient lineageClient = LineageClient.create(lineageSettings);
To use REST (HTTP1.1/JSON) transport (instead of gRPC) for sending and receiving requests over the wire:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
LineageSettings lineageSettings = LineageSettings.newHttpJsonBuilder().build();
LineageClient lineageClient = LineageClient.create(lineageSettings);
Please refer to the GitHub repository's samples for more quickstart code snippets.
LineageClient.BatchSearchLinkProcessesFixedSizeCollection
LineageClient.BatchSearchLinkProcessesPage
LineageClient.BatchSearchLinkProcessesPagedResponse
LineageClient.ListLineageEventsFixedSizeCollection
LineageClient.ListLineageEventsPage
LineageClient.ListLineageEventsPagedResponse
LineageClient.ListProcessesFixedSizeCollection
LineageClient.ListProcessesPage
LineageClient.ListProcessesPagedResponse
LineageClient.ListRunsFixedSizeCollection
LineageClient.ListRunsPage
LineageClient.ListRunsPagedResponse
LineageClient.SearchLinksFixedSizeCollection
LineageClient.SearchLinksPage
LineageClient.SearchLinksPagedResponse
LineageEvent
A lineage event represents an operation on assets. Within the operation, the data flows from the source to the target defined in the links field.
Protobuf type google.cloud.datacatalog.lineage.v1.LineageEvent
LineageEvent.Builder
A lineage event represents an operation on assets. Within the operation, the data flows from the source to the target defined in the links field.
Protobuf type google.cloud.datacatalog.lineage.v1.LineageEvent
LineageEventName
LineageEventName.Builder
Builder for projects/{project}/locations/{location}/processes/{process}/runs/{run}/lineageEvents/{lineage_event}.
LineageGrpc
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.
LineageGrpc.LineageBlockingStub
A stub to allow clients to do 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.
LineageGrpc.LineageFutureStub
A stub to allow clients to do ListenableFuture-style 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.
LineageGrpc.LineageImplBase
Base class for the server implementation of the 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.
LineageGrpc.LineageStub
A stub to allow clients to do asynchronous 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.
LineageProto
LineageSettings
Settings class to configure an instance of LineageClient.
The default instance has everything set to sensible defaults:
- The default service address (datalineage.googleapis.com) and default port (443) are used.
- Credentials are acquired automatically through Application Default Credentials.
- Retries are configured for idempotent methods but not for non-idempotent methods.
The builder of this class is recursive, so contained classes are themselves builders. When build() is called, the tree of builders is called to create the complete settings object.
For example, to set the total timeout of createProcess to 30 seconds:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
LineageSettings.Builder lineageSettingsBuilder = LineageSettings.newBuilder();
lineageSettingsBuilder
.createProcessSettings()
.setRetrySettings(
lineageSettingsBuilder
.createProcessSettings()
.getRetrySettings()
.toBuilder()
.setTotalTimeout(Duration.ofSeconds(30))
.build());
LineageSettings lineageSettings = lineageSettingsBuilder.build();
LineageSettings.Builder
Builder for LineageSettings.
Link
Links represent the data flow between source (upstream) and target (downstream) assets in transformation pipelines.
Links are created when LineageEvents record data transformation between related assets.
Protobuf type google.cloud.datacatalog.lineage.v1.Link
Link.Builder
Links represent the data flow between source (upstream) and target (downstream) assets in transformation pipelines.
Links are created when LineageEvents record data transformation between related assets.
Protobuf type google.cloud.datacatalog.lineage.v1.Link
ListLineageEventsRequest
Request message for ListLineageEvents.
Protobuf type google.cloud.datacatalog.lineage.v1.ListLineageEventsRequest
ListLineageEventsRequest.Builder
Request message for ListLineageEvents.
Protobuf type google.cloud.datacatalog.lineage.v1.ListLineageEventsRequest
ListLineageEventsResponse
Response message for ListLineageEvents.
Protobuf type google.cloud.datacatalog.lineage.v1.ListLineageEventsResponse
ListLineageEventsResponse.Builder
Response message for ListLineageEvents.
Protobuf type google.cloud.datacatalog.lineage.v1.ListLineageEventsResponse
ListProcessesRequest
Request message for ListProcesses.
Protobuf type google.cloud.datacatalog.lineage.v1.ListProcessesRequest
ListProcessesRequest.Builder
Request message for ListProcesses.
Protobuf type google.cloud.datacatalog.lineage.v1.ListProcessesRequest
ListProcessesResponse
Response message for ListProcesses.
Protobuf type google.cloud.datacatalog.lineage.v1.ListProcessesResponse
ListProcessesResponse.Builder
Response message for ListProcesses.
Protobuf type google.cloud.datacatalog.lineage.v1.ListProcessesResponse
ListRunsRequest
Request message for ListRuns.
Protobuf type google.cloud.datacatalog.lineage.v1.ListRunsRequest
ListRunsRequest.Builder
Request message for ListRuns.
Protobuf type google.cloud.datacatalog.lineage.v1.ListRunsRequest
ListRunsResponse
Response message for ListRuns.
Protobuf type google.cloud.datacatalog.lineage.v1.ListRunsResponse
ListRunsResponse.Builder
Response message for ListRuns.
Protobuf type google.cloud.datacatalog.lineage.v1.ListRunsResponse
LocationName
LocationName.Builder
Builder for projects/{project}/locations/{location}.
OperationMetadata
Metadata describing the operation.
Protobuf type google.cloud.datacatalog.lineage.v1.OperationMetadata
OperationMetadata.Builder
Metadata describing the operation.
Protobuf type google.cloud.datacatalog.lineage.v1.OperationMetadata
Origin
Origin of a process.
Protobuf type google.cloud.datacatalog.lineage.v1.Origin
Origin.Builder
Origin of a process.
Protobuf type google.cloud.datacatalog.lineage.v1.Origin
Process
A process is the definition of a data transformation operation.
Protobuf type google.cloud.datacatalog.lineage.v1.Process
Process.Builder
A process is the definition of a data transformation operation.
Protobuf type google.cloud.datacatalog.lineage.v1.Process
ProcessLinkInfo
Link details.
Protobuf type google.cloud.datacatalog.lineage.v1.ProcessLinkInfo
ProcessLinkInfo.Builder
Link details.
Protobuf type google.cloud.datacatalog.lineage.v1.ProcessLinkInfo
ProcessLinks
Links associated with a specific process.
Protobuf type google.cloud.datacatalog.lineage.v1.ProcessLinks
ProcessLinks.Builder
Links associated with a specific process.
Protobuf type google.cloud.datacatalog.lineage.v1.ProcessLinks
ProcessName
ProcessName.Builder
Builder for projects/{project}/locations/{location}/processes/{process}.
Run
A lineage run represents an execution of a process that creates lineage events.
Protobuf type google.cloud.datacatalog.lineage.v1.Run
Run.Builder
A lineage run represents an execution of a process that creates lineage events.
Protobuf type google.cloud.datacatalog.lineage.v1.Run
RunName
RunName.Builder
Builder for projects/{project}/locations/{location}/processes/{process}/runs/{run}.
SearchLinksRequest
Request message for SearchLinks.
Protobuf type google.cloud.datacatalog.lineage.v1.SearchLinksRequest
SearchLinksRequest.Builder
Request message for SearchLinks.
Protobuf type google.cloud.datacatalog.lineage.v1.SearchLinksRequest
SearchLinksResponse
Response message for SearchLinks.
Protobuf type google.cloud.datacatalog.lineage.v1.SearchLinksResponse
SearchLinksResponse.Builder
Response message for SearchLinks.
Protobuf type google.cloud.datacatalog.lineage.v1.SearchLinksResponse
UpdateProcessRequest
Request message for UpdateProcess.
Protobuf type google.cloud.datacatalog.lineage.v1.UpdateProcessRequest
UpdateProcessRequest.Builder
Request message for UpdateProcess.
Protobuf type google.cloud.datacatalog.lineage.v1.UpdateProcessRequest
UpdateRunRequest
Request message for UpdateRun.
Protobuf type google.cloud.datacatalog.lineage.v1.UpdateRunRequest
UpdateRunRequest.Builder
Request message for UpdateRun.
Protobuf type google.cloud.datacatalog.lineage.v1.UpdateRunRequest
Interfaces
BatchSearchLinkProcessesRequestOrBuilder
BatchSearchLinkProcessesResponseOrBuilder
CreateLineageEventRequestOrBuilder
CreateProcessRequestOrBuilder
CreateRunRequestOrBuilder
DeleteLineageEventRequestOrBuilder
DeleteProcessRequestOrBuilder
DeleteRunRequestOrBuilder
EntityReferenceOrBuilder
EventLinkOrBuilder
GetLineageEventRequestOrBuilder
GetProcessRequestOrBuilder
GetRunRequestOrBuilder
LineageEventOrBuilder
LineageGrpc.AsyncService
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.
LinkOrBuilder
ListLineageEventsRequestOrBuilder
ListLineageEventsResponseOrBuilder
ListProcessesRequestOrBuilder
ListProcessesResponseOrBuilder
ListRunsRequestOrBuilder
ListRunsResponseOrBuilder
OperationMetadataOrBuilder
OriginOrBuilder
ProcessLinkInfoOrBuilder
ProcessLinksOrBuilder
ProcessOrBuilder
RunOrBuilder
SearchLinksRequestOrBuilder
SearchLinksResponseOrBuilder
UpdateProcessRequestOrBuilder
UpdateRunRequestOrBuilder
Enums
OperationMetadata.State
An enum with the state of the operation.
Protobuf enum google.cloud.datacatalog.lineage.v1.OperationMetadata.State
OperationMetadata.Type
Type of the long running operation.
Protobuf enum google.cloud.datacatalog.lineage.v1.OperationMetadata.Type
Origin.SourceType
Type of the source of a process.
Protobuf enum google.cloud.datacatalog.lineage.v1.Origin.SourceType
Run.State
The current state of the run.
Protobuf enum google.cloud.datacatalog.lineage.v1.Run.State