data7


Namedata7 JSON
Version 0.5.0 PyPI version JSON
download
home_pagehttps://jmaupetit.github.io/data7/
SummaryData7 streams CSV/Parquet datasets over HTTP from SQL queries.
upload_time2024-07-08 09:54:41
maintainerNone
docs_urlNone
authorJulien Maupetit
requires_python<4.0,>=3.11
licenseMIT
keywords database dataset sql parquet csv http
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # Data7 ⚡ Open your data in minutes

> Pronounced data·set (**7** like **sept** in French).

![GitHub Actions Workflow Status](https://img.shields.io/github/actions/workflow/status/jmaupetit/data7/quality.yml)
![PyPI - Version](https://img.shields.io/pypi/v/data7)

## The idea 💡

**TL;DR** Data7 is a high performance web server that generates dynamic datasets
(in [CSV](https://en.wikipedia.org/wiki/Comma-separated_values) or
[Parquet](https://en.wikipedia.org/wiki/Apache_Parquet) formats) from existing
databases and streams them over HTTP 🎉

## A quick example

Let say you have a `restaurant` table in your PostgreSQL database, and you want
to make this table an always-up-to-date dataset that can be easily used by the
rest of the world.

All you have to do is to initialize your project:

```sh
data7 init
```

✍️ Edit configuration files:

```yaml
# settings.yaml
production:
  host: "https://data7.wonderful-places.org"
  port: 80

# .secrets.yaml
production:
  DATABASE_URL: "postgresql+asyncpg://user:pass@server:port/wonderful-places"

# data7.yaml
production:
  datasets:
    - basename: restaurants
      query: "SELECT * FROM restaurant"
```

🏎️ Fire up the `data7` server:

```sh
data7 run
```

💥 Your dataset is available at:

- [https://data7.wonderful-places.org/d/restaurants.csv](https://data7.wonderful-places.org/d/restaurants.csv)
  (CSV)
- [https://data7.wonderful-places.org/d/restaurants.parquet](https://data7.wonderful-places.org/d/restaurants.parquet)
  (Parquet)

## Documentation

The complete documentation of the project is avaiable at:
[https://jmaupetit.github.io/data7/](https://jmaupetit.github.io/data7/)

## License

This work is released under the MIT License.


            

Raw data

            {
    "_id": null,
    "home_page": "https://jmaupetit.github.io/data7/",
    "name": "data7",
    "maintainer": null,
    "docs_url": null,
    "requires_python": "<4.0,>=3.11",
    "maintainer_email": null,
    "keywords": "database, dataset, SQL, Parquet, CSV, HTTP",
    "author": "Julien Maupetit",
    "author_email": "julien@maupetit.net",
    "download_url": "https://files.pythonhosted.org/packages/e3/7e/a5a543b0b55a13ee4ee1980bdc570c8ed9199c82e401a346cdd5db670cb2/data7-0.5.0.tar.gz",
    "platform": null,
    "description": "# Data7 \u26a1 Open your data in minutes\n\n> Pronounced data\u00b7set (**7** like **sept** in French).\n\n![GitHub Actions Workflow Status](https://img.shields.io/github/actions/workflow/status/jmaupetit/data7/quality.yml)\n![PyPI - Version](https://img.shields.io/pypi/v/data7)\n\n## The idea \ud83d\udca1\n\n**TL;DR** Data7 is a high performance web server that generates dynamic datasets\n(in [CSV](https://en.wikipedia.org/wiki/Comma-separated_values) or\n[Parquet](https://en.wikipedia.org/wiki/Apache_Parquet) formats) from existing\ndatabases and streams them over HTTP \ud83c\udf89\n\n## A quick example\n\nLet say you have a `restaurant` table in your PostgreSQL database, and you want\nto make this table an always-up-to-date dataset that can be easily used by the\nrest of the world.\n\nAll you have to do is to initialize your project:\n\n```sh\ndata7 init\n```\n\n\u270d\ufe0f Edit configuration files:\n\n```yaml\n# settings.yaml\nproduction:\n  host: \"https://data7.wonderful-places.org\"\n  port: 80\n\n# .secrets.yaml\nproduction:\n  DATABASE_URL: \"postgresql+asyncpg://user:pass@server:port/wonderful-places\"\n\n# data7.yaml\nproduction:\n  datasets:\n    - basename: restaurants\n      query: \"SELECT * FROM restaurant\"\n```\n\n\ud83c\udfce\ufe0f Fire up the `data7` server:\n\n```sh\ndata7 run\n```\n\n\ud83d\udca5 Your dataset is available at:\n\n- [https://data7.wonderful-places.org/d/restaurants.csv](https://data7.wonderful-places.org/d/restaurants.csv)\n  (CSV)\n- [https://data7.wonderful-places.org/d/restaurants.parquet](https://data7.wonderful-places.org/d/restaurants.parquet)\n  (Parquet)\n\n## Documentation\n\nThe complete documentation of the project is avaiable at:\n[https://jmaupetit.github.io/data7/](https://jmaupetit.github.io/data7/)\n\n## License\n\nThis work is released under the MIT License.\n\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "Data7 streams CSV/Parquet datasets over HTTP from SQL queries.",
    "version": "0.5.0",
    "project_urls": {
        "Documentation": "https://jmaupetit.github.io/data7/",
        "Homepage": "https://jmaupetit.github.io/data7/",
        "Repository": "https://github.com/jmaupetit/data7"
    },
    "split_keywords": [
        "database",
        " dataset",
        " sql",
        " parquet",
        " csv",
        " http"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "4287fab2ce9ea704b890941fce5f44b3d84b83452c2676c15ba502bee2e9066f",
                "md5": "688e6f52730ed2f7c7c97366c9d088c6",
                "sha256": "f1c3369dffff4aca90310e91ca05f3b0771245f2030f129e12ef45d9abb0b70b"
            },
            "downloads": -1,
            "filename": "data7-0.5.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "688e6f52730ed2f7c7c97366c9d088c6",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": "<4.0,>=3.11",
            "size": 10512,
            "upload_time": "2024-07-08T09:54:40",
            "upload_time_iso_8601": "2024-07-08T09:54:40.617690Z",
            "url": "https://files.pythonhosted.org/packages/42/87/fab2ce9ea704b890941fce5f44b3d84b83452c2676c15ba502bee2e9066f/data7-0.5.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "e37ea5a543b0b55a13ee4ee1980bdc570c8ed9199c82e401a346cdd5db670cb2",
                "md5": "d56630fe85a9d536c7f2cb41c618265c",
                "sha256": "7fd198e4473c746d371524e4f16f1142c7afdafde86d86d3ecde1a5633d7d11c"
            },
            "downloads": -1,
            "filename": "data7-0.5.0.tar.gz",
            "has_sig": false,
            "md5_digest": "d56630fe85a9d536c7f2cb41c618265c",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": "<4.0,>=3.11",
            "size": 9433,
            "upload_time": "2024-07-08T09:54:41",
            "upload_time_iso_8601": "2024-07-08T09:54:41.744050Z",
            "url": "https://files.pythonhosted.org/packages/e3/7e/a5a543b0b55a13ee4ee1980bdc570c8ed9199c82e401a346cdd5db670cb2/data7-0.5.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-07-08 09:54:41",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "jmaupetit",
    "github_project": "data7",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "data7"
}
        
Elapsed time: 0.30545s