{"id":39698719,"url":"https://github.com/databricks-solutions/lakebase-poc-accelerator","last_synced_at":"2026-01-18T10:20:41.068Z","repository":{"id":317901738,"uuid":"1053017267","full_name":"databricks-solutions/lakebase-poc-accelerator","owner":"databricks-solutions","description":null,"archived":false,"fork":false,"pushed_at":"2025-10-23T19:23:19.000Z","size":2647,"stargazers_count":1,"open_issues_count":1,"forks_count":1,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-10-23T21:22:56.994Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/databricks-solutions.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-09-08T21:49:14.000Z","updated_at":"2025-10-06T23:10:42.000Z","dependencies_parsed_at":"2025-10-03T20:18:33.403Z","dependency_job_id":"83c5fbce-92e4-42b0-abe0-da6007448ac4","html_url":"https://github.com/databricks-solutions/lakebase-poc-accelerator","commit_stats":null,"previous_names":["databricks-solutions/lakebase-poc-accelerator"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/databricks-solutions/lakebase-poc-accelerator","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/databricks-solutions%2Flakebase-poc-accelerator","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/databricks-solutions%2Flakebase-poc-accelerator/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/databricks-solutions%2Flakebase-poc-accelerator/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/databricks-solutions%2Flakebase-poc-accelerator/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/databricks-solutions","download_url":"https://codeload.github.com/databricks-solutions/lakebase-poc-accelerator/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/databricks-solutions%2Flakebase-poc-accelerator/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28534334,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-18T10:13:46.436Z","status":"ssl_error","status_checked_at":"2026-01-18T10:13:11.045Z","response_time":98,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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":[],"created_at":"2026-01-18T10:20:38.059Z","updated_at":"2026-01-18T10:20:41.046Z","avatar_url":"https://github.com/databricks-solutions.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# DATABRICKS LAKEBASE ACCELERATOR\n\nThis project is designed to streamline the testing and deployment of customer OLTP workloads to Lakebase, Databricks' managed Postgres solution. It is particularly focused on supporting reverse ETL use cases. The accelerator provides an easy way for users to evaluate Lakebase and quickly get started with their POC and testing needs.\n\n## Prerequesites\n\n- Python3.11\n- Databricks Workspace Requirements:\n   - Unity Catalog enabled: CREATE CATALOG, USE CATALOG, CREATE SCHEMA permission\n   - Lakebase Service: CREATE DATABASE INSTANCE, USE DATABASE INSTANCE permission\n   - Delta Tables: For source data synchronization\n   - Databricks SQL Warehouse: For table size calculations (optional but recommended)\n   - Databricks SDK: For programmatic workspace access\n\n## Environments Setup\n\n1. Setup Python virtual environment\n\n```\n# Install uv (if not already installed)\npip install uv\n# or\ncurl -LsSf https://astral.sh/uv/install.sh | sh\n```\nSet up Python environment and install required packages\n```\nuv venv\nsource .venv/bin/activate\nuv pip install -r requirements.txt\n```\n\n2. Install the Databricks CLI from \u003chttps://docs.databricks.com/dev-tools/cli/databricks-cli.html\u003e\n\n```bash\n$ brew tap databricks/tap\n$ brew install databricks\n$ databricks --version\n```\n\nDatabricks CLI v0.267+ is required, if you have older version, upgrade the CLI version\n\n```bash\n$ brew update \u0026\u0026 brew upgrade databricks \u0026\u0026 databricks --version | cat\n```\n\n3. Authenticate to your Databricks workspace using OAuth Authentication (recommended), if you have not done so already:\n\n   #### Configure OAuth:\n\n   ```bash\n   databricks auth login --host https://your-workspace.cloud.databricks.com --profile DEFAULT\n   ```\n\n   This will:\n\n   - Open your browser for authentication\n   - Create a profile in `~/.databrickscfg`\n   - Store OAuth credentials securely\n\n   #### Verify Databricks Auth\n\n   ```bash\n   $ databricks auth profiles\n   ```\n\n## Application Features\n\nThe project includes a full-stack web application for interactive workload configuration, cost estimation, and deployment automation using the Databricks Python SDK.\n\n- **🧮 Lakebase Calculator**: Interactive cost estimation with real table size calculation\n- **🚀 Automatic Deployment**: Direct deployment using Databricks Python SDK\n- **📁 Manual Deployment**: Generate and download Databricks Asset Bundle files\n- **🧪 Concurrency Testing**: Upload and execute SQL queries for performance testing\n\n### Option 1: Starting the Web Application on Databricks Apps (RECOMMENDED for production)\n\nFollow instruction on [DEPLOY_WITH_DAB.md](./DEPLOY_WITH_DAB.md) for more details on how deploy Databricks Apps with Databricks Asset Bundle, or follow Quick Deploy below\n\n#### Quick Deploy (All Steps)\n\n```bash\n# 1. Build frontend\n./npm-build.sh\n\n# 2. Deploy\ndatabricks bundle validate\ndatabricks bundle deploy\ndatabricks bundle run lakebase_accelerator_app\n\n# 3. Get URL\ndatabricks apps get \u003cyour-app-name\u003e\n```\n\n\n### Option 2: Starting the Web Application - self-hosted on local machine (For development)\n\nEnsure you have completed the [Environment Setup](#environments-setup) and authenticated with Databricks CLI.\n\nThen on project root directory, run\n```\n# build frontend\n./npm-build.sh\n\n# Start the app\npython app.py\n```\n\nThe app will run on host: http://0.0.0.0:8000\n\n### Authentication\n\nIf self-host on local machine, authentication is handled via your Databricks CLI profiles, as set up in the [Environment Setup](#environments-setup) section. The backend uses these CLI profiles to authenticate with the Databricks Python SDK (WorkspaceClient) using provided user credential.\n\nWhen running the app on Databricks, the service principal assigned to the app will perform all the actions, hence it might need following permissions: Database Instance Management (see [Database instance ACLs](https://docs.databricks.com/aws/en/security/auth/access-control/#database-instance-acls)), Unity Catalog privileges including CREATE CATALOG, USE CATALOG, and CREATE SCHEMA on the target catalog, SELECT on any source Delta tables to be synced, USE SCHEMA and CREATE TABLE on the storage catalog and schema for Lakeflow-synced Delta pipelines, databricks-superuser permission to query tables, and \"Allow unrestricted cluster creation\" enabled.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdatabricks-solutions%2Flakebase-poc-accelerator","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdatabricks-solutions%2Flakebase-poc-accelerator","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdatabricks-solutions%2Flakebase-poc-accelerator/lists"}