Skip to main content

DataJunction server library for running to a DataJunction server

Project description

DataJunction

Introduction

DataJunction (DJ) is an open source metrics platform that allows users to define metrics and the data models behind them using SQL, serving as a semantic layer on top of a physical data warehouse. By leveraging this metadata, DJ can enable efficient retrieval of metrics data across different dimensions and filters.

DataJunction

Getting Started

To launch the DataJunction UI with a minimal DataJunction backend, start the default docker compose environment.

docker compose up

If you'd like to launch the full suite of services, including open-source implementations of the DataJunction query service and DataJunction reflection service specifications, use the demo profile.

docker compose --profile demo up

DJUI: http://localhost:3000/ DJ Swagger Docs: http://localhost:8000/docs DJQS Swagger Docs: http://localhost:8001/docs Jaeger UI: http://localhost:16686/search Jupyter Lab: http://localhost:8888

How does this work?

At its core, DJ stores metrics and their upstream abstractions as interconnected nodes. These nodes can represent a variety of elements, such as tables in a data warehouse (source nodes), SQL transformation logic (transform nodes), dimensions logic, metrics logic, and even selections of metrics, dimensions, and filters (cube nodes).

By parsing each node's SQL into an AST and through dimensional links between columns, DJ can infer a graph of dependencies between nodes, which allows it to find the appropriate join paths between nodes to generate queries for metrics.

Project details


Release history Release notifications | RSS feed

Download files

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

Source Distribution

datajunction_server-0.0.1a71.dev1.tar.gz (774.8 kB view details)

Uploaded Source

Built Distribution

datajunction_server-0.0.1a71.dev1-py3-none-any.whl (510.3 kB view details)

Uploaded Python 3

File details

Details for the file datajunction_server-0.0.1a71.dev1.tar.gz.

File metadata

File hashes

Hashes for datajunction_server-0.0.1a71.dev1.tar.gz
Algorithm Hash digest
SHA256 ae5952847132f2fcb1c3e77e23ff85bbcd34221cc1d2f64d8868fbf921656de3
MD5 8fb405939f0cc4a905be0c2e7dc34df4
BLAKE2b-256 36e04303b8cee7205f9f733c1622efd14d830d19cf05f103efa7aa7857f97c74

See more details on using hashes here.

File details

Details for the file datajunction_server-0.0.1a71.dev1-py3-none-any.whl.

File metadata

File hashes

Hashes for datajunction_server-0.0.1a71.dev1-py3-none-any.whl
Algorithm Hash digest
SHA256 4ba9c4674848db0b6190b91cb2a26032c726854e26f06b3ad63cd767a64386b9
MD5 57d40012c4e0a57012013ad881c54b6b
BLAKE2b-256 5a638d34eb22776d80454f730f9a434324657bb300a45019fce0123427bf7f73

See more details on using hashes here.

Supported by

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