datajunction-server


Namedatajunction-server JSON
Version 0.0.1a87 PyPI version JSON
download
home_pageNone
SummaryDataJunction server library for running to a DataJunction server
upload_time2025-02-19 07:03:04
maintainerNone
docs_urlNone
authorNone
requires_python<4.0,>=3.10
licenseMIT
keywords metrics semanticlayer
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage
            # 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](docs/static/datajunction-illustration.png)

## Getting Started

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

```sh
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.

```sh
docker compose --profile demo up
```

DJUI: [http://localhost:3000/](http://localhost:3000/)
DJ Swagger Docs: [http://localhost:8000/docs](http://localhost:8000/docs)
DJQS Swagger Docs: [http://localhost:8001/docs](http://localhost:8001/docs)
Jaeger UI: [http://localhost:16686/search](http://localhost:16686/search)
Jupyter Lab: [http://localhost:8888](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.

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "datajunction-server",
    "maintainer": null,
    "docs_url": null,
    "requires_python": "<4.0,>=3.10",
    "maintainer_email": null,
    "keywords": "metrics, semanticlayer",
    "author": null,
    "author_email": null,
    "download_url": "https://files.pythonhosted.org/packages/97/c9/61df78e87e55628ab2f196d1e4c45f47968dc8313e82a300cafe29552fb3/datajunction_server-0.0.1a87.tar.gz",
    "platform": null,
    "description": "# DataJunction\n\n## Introduction\n\nDataJunction (DJ) is an open source **metrics platform** that allows users to define\nmetrics and the data models behind them using **SQL**, serving as a **semantic layer**\non top of a physical data warehouse. By leveraging this metadata, DJ can enable efficient\nretrieval of metrics data across different dimensions and filters.\n\n![DataJunction](docs/static/datajunction-illustration.png)\n\n## Getting Started\n\nTo launch the DataJunction UI with a minimal DataJunction backend, start the default docker compose environment.\n\n```sh\ndocker compose up\n```\n\nIf you'd like to launch the full suite of services, including open-source implementations of the DataJunction query service and\nDataJunction reflection service specifications, use the `demo` profile.\n\n```sh\ndocker compose --profile demo up\n```\n\nDJUI: [http://localhost:3000/](http://localhost:3000/)\nDJ Swagger Docs: [http://localhost:8000/docs](http://localhost:8000/docs)\nDJQS Swagger Docs: [http://localhost:8001/docs](http://localhost:8001/docs)\nJaeger UI: [http://localhost:16686/search](http://localhost:16686/search)\nJupyter Lab: [http://localhost:8888](http://localhost:8888)\n\n## How does this work?\n\nAt its core, DJ stores metrics and their upstream abstractions as interconnected nodes.\nThese nodes can represent a variety of elements, such as tables in a data warehouse\n(**source nodes**), SQL transformation logic (**transform nodes**), dimensions logic,\nmetrics logic, and even selections of metrics, dimensions, and filters (**cube nodes**).\n\nBy parsing each node's SQL into an AST and through dimensional links between columns,\nDJ can infer a graph of dependencies between nodes, which allows it to find the\nappropriate join paths between nodes to generate queries for metrics.\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "DataJunction server library for running to a DataJunction server",
    "version": "0.0.1a87",
    "project_urls": {
        "Homepage": "https://datajunction.io",
        "Repository": "https://github.com/DataJunction/dj"
    },
    "split_keywords": [
        "metrics",
        " semanticlayer"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "7ed3fddb14c5426cf78e1ac3a62ca6b26b0065bc11f2827d7de02fc7f19202f0",
                "md5": "7b3550d06630ec725a665b78365ad33d",
                "sha256": "b2e08cc6192ad62b8bd00e9dc41e7d7b3f5cfc45e18c23d424f98d7794343eb2"
            },
            "downloads": -1,
            "filename": "datajunction_server-0.0.1a87-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "7b3550d06630ec725a665b78365ad33d",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": "<4.0,>=3.10",
            "size": 554844,
            "upload_time": "2025-02-19T07:03:06",
            "upload_time_iso_8601": "2025-02-19T07:03:06.902432Z",
            "url": "https://files.pythonhosted.org/packages/7e/d3/fddb14c5426cf78e1ac3a62ca6b26b0065bc11f2827d7de02fc7f19202f0/datajunction_server-0.0.1a87-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "97c961df78e87e55628ab2f196d1e4c45f47968dc8313e82a300cafe29552fb3",
                "md5": "869e41aeebdc31129d243d662be3e7f0",
                "sha256": "7830c70d041c2864c7809392975e83e6f93981576dbeeab0b1c0bbfb7cd32575"
            },
            "downloads": -1,
            "filename": "datajunction_server-0.0.1a87.tar.gz",
            "has_sig": false,
            "md5_digest": "869e41aeebdc31129d243d662be3e7f0",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": "<4.0,>=3.10",
            "size": 799753,
            "upload_time": "2025-02-19T07:03:04",
            "upload_time_iso_8601": "2025-02-19T07:03:04.330272Z",
            "url": "https://files.pythonhosted.org/packages/97/c9/61df78e87e55628ab2f196d1e4c45f47968dc8313e82a300cafe29552fb3/datajunction_server-0.0.1a87.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-02-19 07:03:04",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "DataJunction",
    "github_project": "dj",
    "travis_ci": false,
    "coveralls": true,
    "github_actions": true,
    "tox": true,
    "lcname": "datajunction-server"
}
        
Elapsed time: 0.63527s