{"library":"pystarburst","title":"PyStarburst","description":"PyStarburst provides a Python DataFrame API for querying and transforming data directly within Starburst Galaxy and Starburst Enterprise Platform (SEP) clusters. It enables data engineers and developers to build complex transformation pipelines and data applications using familiar Python syntax without needing to download data locally. The library is actively maintained, with version 0.11.0 released in February 2026, and a release cadence of approximately every few months.","language":"python","status":"active","last_verified":"Sun May 17","install":{"commands":["pip install pystarburst"],"cli":null},"imports":["from pystarburst import Session","from pystarburst.functions import col","from trino.auth import BasicAuthentication"],"auth":{"required":false,"env_vars":[]},"quickstart":{"code":"import os\nfrom pystarburst import Session\nfrom trino.auth import BasicAuthentication\n\n# Replace with your Starburst cluster details from Partner Connect\nhost = os.environ.get('STARBURST_HOST', 'your-starburst-host.trino.galaxy.starburst.io')\nport = int(os.environ.get('STARBURST_PORT', '443'))\nuser = os.environ.get('STARBURST_USER', 'your-user@example.com')\npassword = os.environ.get('STARBURST_PASSWORD', 'your_password')\ncatalog = os.environ.get('STARBURST_CATALOG', 'sample') # e.g., 'hive', 'iceberg'\nschema = os.environ.get('STARBURST_SCHEMA', 'burstbank') # e.g., 'default'\n\ndb_parameters = {\n    \"host\": host,\n    \"port\": port,\n    \"http_scheme\": \"https\",\n    \"catalog\": catalog,\n    \"schema\": schema,\n    \"auth\": BasicAuthentication(user, password)\n}\n\ntry:\n    session = Session.builder.configs(db_parameters).create()\n    print(\"Successfully connected to Starburst!\")\n\n    # Example: Querying a table\n    df = session.sql(\"SELECT * FROM system.runtime.nodes\").show()\n    print(\"Query executed successfully.\")\n\n    # Example: Creating a DataFrame and applying a simple transformation\n    # df_nation = session.table(\"nation\") # Assuming 'nation' table exists in 'sample.burstbank'\n    # df_filtered = df_nation.filter(df_nation.col(\"regionkey\") == 0)\n    # df_filtered.show()\n\nfinally:\n    if 'session' in locals() and session:\n        session.close()\n        print(\"Session closed.\")","lang":"python","description":"This quickstart demonstrates how to establish a connection to a Starburst cluster using PyStarburst and execute a basic SQL query. It uses environment variables for sensitive connection parameters. You will need to replace placeholder values with your actual Starburst Galaxy or SEP cluster details.","tag":null,"tag_description":null,"last_tested":null,"results":[]},"compatibility":{"tag":null,"tag_description":null,"last_tested":"2026-05-17","installed_version":"0.10.0","pypi_latest":"0.12.0","is_stale":true,"summary":{"python_range":"3.10–3.9","success_rate":50,"avg_install_s":5.3,"avg_import_s":3.01,"wheel_type":"wheel"},"results":[{"runtime":"python:3.10-alpine","python_version":"3.10","os_libc":"alpine (musl)","variant":"pystarburst","exit_code":1,"wheel_type":null,"failure_reason":"build_error","import_side_effects":null,"install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":null},{"runtime":"python:3.10-slim","python_version":"3.10","os_libc":"slim (glibc)","variant":"pystarburst","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":6.4,"import_time_s":null,"mem_mb":null,"disk_size":"65M"},{"runtime":"python:3.11-alpine","python_version":"3.11","os_libc":"alpine (musl)","variant":"pystarburst","exit_code":1,"wheel_type":null,"failure_reason":"build_error","import_side_effects":null,"install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":null},{"runtime":"python:3.11-slim","python_version":"3.11","os_libc":"slim (glibc)","variant":"pystarburst","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":5,"import_time_s":null,"mem_mb":null,"disk_size":"68M"},{"runtime":"python:3.12-alpine","python_version":"3.12","os_libc":"alpine (musl)","variant":"pystarburst","exit_code":1,"wheel_type":null,"failure_reason":"build_error","import_side_effects":null,"install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":null},{"runtime":"python:3.12-slim","python_version":"3.12","os_libc":"slim (glibc)","variant":"pystarburst","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":4.1,"import_time_s":null,"mem_mb":null,"disk_size":"60M"},{"runtime":"python:3.13-alpine","python_version":"3.13","os_libc":"alpine (musl)","variant":"pystarburst","exit_code":1,"wheel_type":null,"failure_reason":"build_error","import_side_effects":null,"install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":null},{"runtime":"python:3.13-slim","python_version":"3.13","os_libc":"slim (glibc)","variant":"pystarburst","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":4.4,"import_time_s":null,"mem_mb":null,"disk_size":"59M"},{"runtime":"python:3.9-alpine","python_version":"3.9","os_libc":"alpine (musl)","variant":"pystarburst","exit_code":1,"wheel_type":null,"failure_reason":"build_error","import_side_effects":null,"install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":null},{"runtime":"python:3.9-slim","python_version":"3.9","os_libc":"slim (glibc)","variant":"pystarburst","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":6.4,"import_time_s":3.01,"mem_mb":28.6,"disk_size":"64M"}]}}