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.0rc2.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.0rc2-py3-none-any.whl (5.0 MB view details)

Uploaded Python 3

File details

Details for the file acryl_datahub-1.7.0rc2.tar.gz.

File metadata

  • Download URL: acryl_datahub-1.7.0rc2.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.0rc2.tar.gz
Algorithm Hash digest
SHA256 b8b7ad7996be65841484e1cf7bb71be849805daaa6360f375906a282577e5626
MD5 01f0e32405f81d10206eec4d02f7553c
BLAKE2b-256 ba976241751b2cbd7eab0eb0000f11d97bd8e49b41e05e76f69f9a6db27acfa5

See more details on using hashes here.

File details

Details for the file acryl_datahub-1.7.0rc2-py3-none-any.whl.

File metadata

File hashes

Hashes for acryl_datahub-1.7.0rc2-py3-none-any.whl
Algorithm Hash digest
SHA256 65783da073c69d7e823f7acc6e1f267acf2a6aec3fa7661c7ccd3293dcb3bc56
MD5 2d54c5872f60ddd5c145ef288eefc18b
BLAKE2b-256 a1de945df9dd61329287ee4cacf0474157f27b2616cee87cfb7706b9175270a5

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