Skip to main content

Upload educational sample data to PostgreSQL database

Project description

Scooters Data Uploader

PyPI - Version

Logo

Простой инструмент для загрузки данных о скутерах в базу данных PostgreSQL на основе DuckDB в рамках симулятора Data Warehouse Analytics Engineer на базе dbt для инженеров и аналитиков данных от школы ИнженеркаТех.

Несмотря на то, что телеграм-бот dbt Data Bot позволяет проще загрузить данные в базу данных через интернет, данный проект работает с локальными и приватными базами.

Подготовка

Проще всего работать с приложением через пакетный менеджер uv. Его нужно установить.

Один из вариантов установки:

pip install uv

После установки убедитесь, что uv доступен и работает с приложением:

uvx scooters-data-uploader

Использование uvx позволяет избежать клонирования репозитория и установки зависимостей, делая процесс простым и чистым.

Подготовка адреса базы данных

Нужно подготовить адрес базы данных в формате Database URI:

postgresql://<user>:<password>@<host>:<port>/<database>

Пример (стандартный адрес для локального PostgreSQL):

postgresql://postgres:postgres@localhost:5432/postgres

Загрузка данных

Для загрузки данных из удаленного репозитория в базу данных выполните команду upload, передав адрес базы данных в качестве аргумента:

uvx scooters-data-uploader upload <database_uri>

Пример:

uvx scooters-data-uploader upload postgresql://postgres:postgres@localhost:5432/postgres

Проверка свежести данных

Для проверки свежести данных в базе выполните команду version, передав адрес базы данных в качестве аргумента:

uvx scooters-data-uploader version <database_uri>

Пример:

uvx scooters-data-uploader version postgresql://postgres:postgres@localhost:5432/postgres

Другие команды

Открыть Telegram-бота для загрузки данных через интернет:

uvx scooters-data-uploader bot

Скачать SQL-файл со всеми данными для загрузки через psql:

uvx scooters-data-uploader sql

Помощь

Для получения справки по использованию утилиты выполните команды:

uvx scooters-data-uploader --help
uvx scooters-data-uploader upload --help
uvx scooters-data-uploader version --help

Альтернативные способы получения данных

Импорт из SQL-файла

Если приложение по какой-то причине не работает, можно воспользоваться штатными средствами PosgtreSQL (psql, pg_restore), чтобы создать схему со всеми таблицами из файла scooters_raw.sql.

Пример команды для загрузки данных из файла:

psql  -U postgres -d postgres < scooters_raw.sql

Загрузка через бота

Телеграм-бот dbt Data Bot позволяет загрузить данные в базу данных, доступную через интернет.

Источник данных

Данные созданы в симуляторе поездок scooters_data_generator. Там же можно найти ссылки на опубликованные parquet-файлы с данными, которые использует данное приложение для загрузки в базу.

Другие ссылки

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

scooters_data_uploader-1.2.1.tar.gz (5.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

scooters_data_uploader-1.2.1-py3-none-any.whl (6.2 kB view details)

Uploaded Python 3

File details

Details for the file scooters_data_uploader-1.2.1.tar.gz.

File metadata

  • Download URL: scooters_data_uploader-1.2.1.tar.gz
  • Upload date:
  • Size: 5.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for scooters_data_uploader-1.2.1.tar.gz
Algorithm Hash digest
SHA256 c8df72f2f6f968641a1b1f650779ec645255eebcabefdd690d7c5cdbba21d8a9
MD5 8f32f9b7f5d62aead11d4126a08dff5d
BLAKE2b-256 e7ddc1e77e9c7a545b09d271c89c19fdfd6bea50c457c29fb19d5b31b0764430

See more details on using hashes here.

Provenance

The following attestation bundles were made for scooters_data_uploader-1.2.1.tar.gz:

Publisher: build_and_release.yml on Inzhenerka/scooters_data_uploader

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file scooters_data_uploader-1.2.1-py3-none-any.whl.

File metadata

File hashes

Hashes for scooters_data_uploader-1.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 aaff91ec4cd49116124215f0b7625318661448e387eaaefe334103d2ddd61dbe
MD5 fb7f158e3ced4cf3e41a078cd9b2082d
BLAKE2b-256 d24e3372d65b38e5cb971961978e727423280a6b2b72361604150e9a554c304f

See more details on using hashes here.

Provenance

The following attestation bundles were made for scooters_data_uploader-1.2.1-py3-none-any.whl:

Publisher: build_and_release.yml on Inzhenerka/scooters_data_uploader

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page