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.1a70.dev1.tar.gz (774.0 kB view details)

Uploaded Source

Built Distribution

datajunction_server-0.0.1a70.dev1-py3-none-any.whl (510.1 kB view details)

Uploaded Python 3

File details

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

File metadata

File hashes

Hashes for datajunction_server-0.0.1a70.dev1.tar.gz
Algorithm Hash digest
SHA256 420892dc53c48a2b1cbf67119217fe3e017cabcd840044d35fb0c395ed086556
MD5 cbbff7217addd7c18b44f4b03a9b8ed0
BLAKE2b-256 d465ed2650252ac8419d0a6b50bfc0da1701b772dbb7be5bac3fc83ee72c1312

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for datajunction_server-0.0.1a70.dev1-py3-none-any.whl
Algorithm Hash digest
SHA256 f2de2120fea8c3d3844e544011fcdde73a8de8f936df7d2c7572e4bdcff39634
MD5 10938b05338054014040ca16507042a1
BLAKE2b-256 198fc1905d4db88ff2580350d5a6d9871a1ede65cfdaa409f117385198765ac4

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