{"id":26238592,"url":"https://github.com/dde-labs/zrch-data-pipeline","last_synced_at":"2026-05-20T07:07:14.406Z","repository":{"id":247076315,"uuid":"824505021","full_name":"dde-labs/zrch-data-pipeline","owner":"dde-labs","description":":ballot_box: ZRCH Assignment for create Data Pipeline","archived":false,"fork":false,"pushed_at":"2024-07-08T14:01:12.000Z","size":21,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-03-13T06:17:22.156Z","etag":null,"topics":["airflow","assignment-problem","duckdb","py39"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/dde-labs.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-07-05T09:20:19.000Z","updated_at":"2025-02-02T12:57:10.000Z","dependencies_parsed_at":"2024-07-06T13:24:48.832Z","dependency_job_id":"939331ce-6e0c-4666-94a2-a120fa0ca417","html_url":"https://github.com/dde-labs/zrch-data-pipeline","commit_stats":null,"previous_names":["dde-labs/zrch-data-pipeline"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/dde-labs/zrch-data-pipeline","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dde-labs%2Fzrch-data-pipeline","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dde-labs%2Fzrch-data-pipeline/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dde-labs%2Fzrch-data-pipeline/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dde-labs%2Fzrch-data-pipeline/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dde-labs","download_url":"https://codeload.github.com/dde-labs/zrch-data-pipeline/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dde-labs%2Fzrch-data-pipeline/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":269560825,"owners_count":24438193,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-09T02:00:10.424Z","response_time":111,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["airflow","assignment-problem","duckdb","py39"],"created_at":"2025-03-13T06:17:31.159Z","updated_at":"2026-05-20T07:07:09.382Z","avatar_url":"https://github.com/dde-labs.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# ZRCH: Data Pipeline\n\n**ZRCH** Assignment for create Data Pipeline.\n\n\u003e You are tasked with designing a data pipeline for a fictional e-commerce company,\n\u003e \"ShopSmart\". The company wants to analyze customer behavior, sales performance,\n\u003e and inventory management. You need to create a solution that ingests, processes,\n\u003e and stores data from various sources.\n\u003e \n\u003e **Questions**:\n\u003e - What are the top 2 best-selling products?\n\u003e - What is the average order value per customer?\n\u003e - What is the total revenue generated per product category?\n\n\u003e [!WARNING]\n\u003e This project does not implement testcases because I do not have time to learn.\n\n## Architecture\n\n```text\nLocalFile --\u003e MySQL --\u003e Log\n```\n\n\u003e [!NOTE]\n\u003e This it the first assignment that want to create end-to-end data pipeline from\n\u003e source to serve analytic reports. So, I will try to orchestrate with **Airflow**\n\u003e in this assignment.\n\n## Getting Started\n\nFirst, you should start with create your Python venv and install `uv`.\n\n```shell\npython -m venv venv\n./venv/Scripts/activate\n(venv) python -m pip install -U pip\n(venv) pip install uv\n```\n\nThen, setup the connection file on `./secrets/connections.yaml`\n\n```yaml\nfile_local:\n  conn_type: file\n  description: Local Data on Docker\n  extra_dejson:\n    path: \"/opt/airflow/data\"\n\nwarehouse:\n  conn_type: mysql\n  description: Local MySQL on Docker\n  host: mysql\n  schema: ...\n  login: ...\n  password: ...\n  port: 3306\n```\n\nNext, start provisioning all services by Docker Compose;\n\n```shell\ndocker compose -f ./.container/docker-compose.warehouse.yml --env-file .env up -d\ndocker compose -f ./.container/docker-compose.yml --env-file .env up -d\n```\n\n\u003e [!NOTE]\n\u003e Down Docker Compose;\n\u003e ```shell\n\u003e docker compose -f ./.container/docker-compose.yml --env-file .env down -v\n\u003e docker compose -f ./.container/docker-compose.warehouse.yml --env-file .env down\n\u003e ```\n\nLogin to Airflow `localhost:8080` with root user and start observe the dags.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdde-labs%2Fzrch-data-pipeline","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdde-labs%2Fzrch-data-pipeline","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdde-labs%2Fzrch-data-pipeline/lists"}