Skip to main content

aiSSEMBLE™ Foundation Data Lineage Python

PyPI PyPI - Python Version PyPI - Wheel

This module serves as a generic wrapper for data lineage types, objects, and functions. While it is designed to be leveraged through the aiSSEMBLE™ ecosystem, it is not dependent on aiSSEMBLE for execution. It is intentionally designed for portability.

This Readme is intended to provide technical insight into the implementation of this package. For consumption guidance, please refer to the aiSSEMBLE Github Pages

Core Functionality

This module presently provides three main capabilities:

  • Generic types to represent Data Lineage metadata
  • Convenience methods for emitting Data Lineage through various mediums
  • Conversion functions to transform the generic types to and from popular Data Lineage formats.

Through these capabilities, this module fulfills the need for an easy-to-use, implementation-agnostic Data Lineage interface.

Developer Guidance

  • This module should display little to no dependence on any other aiSSEMBLE module. It is intentionally generic.
  • Any changes to method or function signatures must be reflected in any relevant template code within foundation-mda.
  • Any change or addition in functionality must be accompanied by associated automated tests.
    • As we are serving as an interface to third party libraries and services, any input parameters must be exhaustively validated.

Use Custom Microprofile config properties

By default, foundation-data-lineage uses the below microprofile-config.properties for the messaging service configurations

kafka.bootstrap.servers=kafka-cluster:9093
mp.messaging.outgoing.lineage-event-out.cloud-events=false
mp.messaging.outgoing.lineage-event-out.connector=smallrye-kafka
mp.messaging.outgoing.lineage-event-out.topic=lineage-event-out
mp.messaging.outgoing.lineage-event-out.key.serializer=org.apache.kafka.common.serialization.StringSerializer
mp.messaging.outgoing.lineage-event-out.value.serializer=org.apache.kafka.common.serialization.StringSerializer

You can also use your own microprofile-config.properties file. To do that, you must provide your own property path to the code:

  1. Set the path of the microprofile-config.properties on your file system
  # specify the new microprofile-config properties path
  self.emitter.set_messaging_properties_path(string_path_to_the_property_file)
  1. Set the new emitter topic
    add below property to the data-lineage.properties file of the appropriate docker image (e.g. spark-worker)
data.lineage.emission.topic=replace-with-your-topic
  1. (Optional) If you are using the v1 kafka-cluster helm chart, add the new topic to kafka-cluster values.yaml file; e.g.: add replace-with-your-topic:1:1 to the KAFKA_CREATE_TOPICS environment variable in the -deploy/src/main/resources/apps/kafka-cluster/values.yaml

NOTE:

There is a known issue with the confluent-kafka dependency that is brought in by the openlineage-client library that prevents it from installing this requirement on some arm64 environments. The problem is that librdkafka does not provide a wheel for all operating systems in the arm64 architecture, requiring that it be built from source in order for confluent-kafka to be installed. If you run into this problem, you can install it from source using the below commands:

Metadata

Release files for aissemble-foundation-data-lineage-python 2.0.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for aissemble-foundation-data-lineage-python 2.0.0
File Size Uploaded Provenance Actions
aissemble_foundation_data_lineage_python-2.0.0.tar.gz 14.3 kB Without provenance Details for aissemble_foundation_data_lineage_python-2.0.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for aissemble-foundation-data-lineage-python 2.0.0
File Interpreter ABI Platform Actions
aissemble_foundation_data_lineage_python-2.0.0-py3-none-any.whl Python 3 none any Details for aissemble_foundation_data_lineage_python-2.0.0-py3-none-any.whl

Total release size: 36.5 kB

Release files / aissemble_foundation_data_lineage_python-2.0.0.tar.gz

Download URL aissemble_foundation_data_lineage_python-2.0.0.tar.gz
Size 14.3 kB
Tags Source
SHA-256 checksum
How to use checksums
6d3c6ba438e68ed00968dd974ec5b9dabab050e24fbae91f392d30682581c199
BLAKE2b-256 checksum
How to use checksums
66594ba396927209e8ea930ff80a0c495641c3c639e0ad726089208f82a921bf
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/2.1.4 CPython/3.11.4 Linux/6.12.37-61.105.amzn2023.aarch64

Release files / aissemble_foundation_data_lineage_python-2.0.0-py3-none-any.whl

Download URL aissemble_foundation_data_lineage_python-2.0.0-py3-none-any.whl
Size 22.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
f4cb191d36445d96c2496ec8734099422510ba77c7fac1b9b07f859b1ad8dd99
BLAKE2b-256 checksum
How to use checksums
f65910f89f2bc90c1d2714ef43996a6fcf9082774921ea4e156437e64a05c118
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/2.1.4 CPython/3.11.4 Linux/6.12.37-61.105.amzn2023.aarch64

Security for aissemble-foundation-data-lineage-python 2.0.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

2.0.0 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page