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.6.0.16rc8.tar.gz (4.1 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.6.0.16rc8-py3-none-any.whl (4.9 MB view details)

Uploaded Python 3

File details

Details for the file acryl_datahub-1.6.0.16rc8.tar.gz.

File metadata

  • Download URL: acryl_datahub-1.6.0.16rc8.tar.gz
  • Upload date:
  • Size: 4.1 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.20

File hashes

Hashes for acryl_datahub-1.6.0.16rc8.tar.gz
Algorithm Hash digest
SHA256 f769f5a5f057adea729af67fbd0d5a7f33a454c6df8ab61c81ac2818330ca894
MD5 5322050d77c89040cfb8577489112b3b
BLAKE2b-256 32d02a35f285d711d7415e1bd74dd67416cf59e31380ff5e7f8837b190a40cfa

See more details on using hashes here.

File details

Details for the file acryl_datahub-1.6.0.16rc8-py3-none-any.whl.

File metadata

File hashes

Hashes for acryl_datahub-1.6.0.16rc8-py3-none-any.whl
Algorithm Hash digest
SHA256 328096890bb3505d5c492d40b5d27a6105399c7a99629d1c87aa4cf017ae53e0
MD5 8fa549578ed12a083937a7e380f0fd65
BLAKE2b-256 a7d398248fe01548c766dc6af7dc44c1594ace074e16336523985b219866d2a3

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