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.dev0.tar.gz (771.8 kB view details)

Uploaded Source

Built Distribution

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

Uploaded Python 3

File details

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

File metadata

File hashes

Hashes for datajunction_server-0.0.1a71.dev0.tar.gz
Algorithm Hash digest
SHA256 229c7371a53d7b33eab0729062ba195cb8e8ba07140d17cea87d3fc965e43c18
MD5 c3ede484236c4e819a5ee1ac156fa035
BLAKE2b-256 f54055298ce43440406172b7e94a132b2de2bd1496f1ed8e538801408595f661

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for datajunction_server-0.0.1a71.dev0-py3-none-any.whl
Algorithm Hash digest
SHA256 39d23c603533668e0c3cddd4f04e5cd3e4ba455933efea7f3a22997b71a97677
MD5 8aeb6542c25f2f5e87ee0fc2cbcbffae
BLAKE2b-256 3a6f04a613d192fcee8d7e5d237eb65b90d371f338e4fd541ceba03c7409afcf

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