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

Uploaded Source

Built Distribution

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

Uploaded Python 3

File details

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

File metadata

File hashes

Hashes for datajunction_server-0.0.1a71.dev2.tar.gz
Algorithm Hash digest
SHA256 902ba7a40195ebc909e432c0a2404f6ebee2a15a9e7e979116d7a77bd7a1c4af
MD5 3cdc95a3ba9cc8ae4f5693997e4f3cd3
BLAKE2b-256 866aeb4ce8fea0fb9338472398ceb64b871b8b641f3cbc343e125e5cb5ea3e83

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for datajunction_server-0.0.1a71.dev2-py3-none-any.whl
Algorithm Hash digest
SHA256 2713073aa705ca491169c9d4598ed3b572d5270694d956b9396d6c1774c9930a
MD5 0b431d759759de6810321fa5279afc61
BLAKE2b-256 54f7d2af7f780fbd2b7d0d054a74f923efe5c6becd0efaf39deba76fd0c02491

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