Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

DataHub SDK and CLI

DataHub's ingestion framework and CLI — pull metadata from 50+ data sources into your catalog, or push it programmatically from your own pipelines and applications.

Pull-based integrations crawl your data systems on a schedule: Snowflake, BigQuery, dbt, Looker, Airflow, and many more.

Push-based integrations let you emit metadata directly from code as it happens: Python SDK, Java SDK, Spark, Great Expectations, and others.

What you can do

  • Pull metadata from databases, warehouses, BI tools, and orchestrators using 50+ ready-made connectors
  • Push metadata programmatically using the Python or Java SDK
  • Transform and filter metadata in transit using built-in transformers
  • Schedule and manage ingestion pipelines via CLI or the DataHub UI
  • Automate lineage, ownership, tags, and documentation across your data assets

Supported sources

Snowflake · BigQuery · Redshift · dbt · Databricks · Looker · Tableau · Power BI · Airflow · Spark · Kafka · PostgreSQL · MySQL · Hive · Glue · S3 · Iceberg · Unity Catalog · Sigma · Mode · Superset · Metabase · and many more

Installation

pip install acryl-datahub
datahub version

Quickstart

Pull metadata from a source (recipe)

# snowflake_recipe.yml
source:
  type: snowflake
  config:
    account_id: my_account
    username: my_user
    password: my_password
    role: DATAHUB_ROLE
    warehouse: COMPUTE_WH

sink:
  type: datahub-rest
  config:
    server: http://localhost:8080
datahub ingest -c snowflake_recipe.yml

Emit metadata from code (SDK)

from datahub.sdk import DataHubClient, Dataset

client = DataHubClient.from_env()

dataset = Dataset(platform="snowflake", name="mydb.schema.table")
dataset.set_description("My table description")
dataset.set_owners(["urn:li:corpuser:jane"])

client.entities.upsert(dataset)

Ingest via the DataHub UI

No CLI required — configure and run ingestion directly from the DataHub UI under Ingestion → Create new source.

Ingestion methods

Method Best for
CLI + YAML recipe Scheduled batch ingestion, CI/CD pipelines
Python SDK Programmatic or event-driven metadata emission
Java SDK JVM-based integrations (Spark, Flink, etc.)
UI Ingestion One-click setup, no code required

Key CLI commands

datahub init                          # Connect to a DataHub instance (interactive)
datahub init --username datahub --password datahub  # Quickstart with local defaults
datahub ingest -c recipe.yml          # Run an ingestion pipeline
datahub search "my table"             # Search for entities by keyword
datahub search "*" --filter platform=snowflake --filter entity_type=dataset
datahub graphql --list-operations     # Explore all available GraphQL operations
datahub graphql --query "{ me { corpUser { urn } } }"  # Run a GraphQL query
datahub get --urn <urn>               # Fetch metadata for an entity
datahub delete --urn <urn>            # Delete a metadata entity
datahub timeline --urn <urn>          # View metadata change history

Links

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

acryl_datahub-1.7.0.2rc1.tar.gz (4.2 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

acryl_datahub-1.7.0.2rc1-py3-none-any.whl (5.0 MB view details)

Uploaded Python 3

File details

Details for the file acryl_datahub-1.7.0.2rc1.tar.gz.

File metadata

  • Download URL: acryl_datahub-1.7.0.2rc1.tar.gz
  • Upload date:
  • Size: 4.2 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.10.20

File hashes

Hashes for acryl_datahub-1.7.0.2rc1.tar.gz
Algorithm Hash digest
SHA256 fbdb1589da568c41d7710d252e81b3a9909696466045d0309c66fe53c8b4bd70
MD5 6453fa8a1b032f68924119e4dbe2bd07
BLAKE2b-256 efad5431dbeb893d6623752adafcd1fabec43e7efad26e7a83b2d2a015b96953

See more details on using hashes here.

File details

Details for the file acryl_datahub-1.7.0.2rc1-py3-none-any.whl.

File metadata

File hashes

Hashes for acryl_datahub-1.7.0.2rc1-py3-none-any.whl
Algorithm Hash digest
SHA256 8ed1fbf1d464f286e25a2c53b281e41b48729d5890cacb65e6f8f4583cf99f13
MD5 91892a1969580af13c959e31db3c439f
BLAKE2b-256 7d9de96921a9a7db54e0d9e2f80ca4118f73d9f1129d74cfb6d67317d61e63c5

See more details on using hashes here.

Release history Release notifications | RSS feed

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page