{"library":"soda-core-redshift","title":"Soda Core Redshift","type":"library","description":"Soda Core Redshift is a plugin for Soda Core that enables data quality checks against Amazon Redshift data warehouses. It provides the necessary connector to allow Soda Core to interact with Redshift, fetch metadata, and execute SQL queries for data quality monitoring. The current version is 3.5.6, and it typically follows the release cycle of the main `soda-core` library, with frequent updates.","language":"python","status":"active","last_verified":"Fri Apr 17","install":{"commands":["pip install soda-core-redshift"],"cli":{"name":"soda","version":"soda-core, version 3.5.6"}},"imports":["from soda.scan import Scan"],"auth":{"required":false,"env_vars":[]},"links":{"homepage":"https://www.soda.io","github":null,"docs":null,"changelog":null,"pypi":"https://pypi.org/project/soda-core-redshift/","npm":null,"openapi_spec":null,"status_page":null,"smithery":null},"quickstart":{"code":"import os\nfrom soda.scan import Scan\n\n# Configure Redshift connection details using environment variables for security\nredshift_host = os.environ.get('REDSHIFT_HOST', 'your_redshift_host.com')\nredshift_port = os.environ.get('REDSHIFT_PORT', '5439')\nredshift_database = os.environ.get('REDSHIFT_DATABASE', 'your_db_name')\nredshift_username = os.environ.get('REDSHIFT_USERNAME', 'your_username')\nredshift_password = os.environ.get('REDSHIFT_PASSWORD', 'your_password')\n\n# Define the Soda Core configuration as a string\nconfiguration_yaml = f'''\ndata_source redshift:\n  type: redshift\n  host: {redshift_host}\n  port: {redshift_port}\n  database: {redshift_database}\n  username: {redshift_username}\n  password: {redshift_password}\n'''\n\n# Define data quality checks as a string\nchecks_yaml = '''\nchecks for dim_users:\n  - row_count > 0\n  - duplicate_count(user_id) = 0\n  - missing_count(email) = 0\n'''\n\n# Initialize and execute the Soda Scan\nscan = Scan()\nscan.set_data_source_name('redshift')\nscan.add_configuration_yaml_str(configuration_yaml)\nscan.add_checks_yaml_str(checks_yaml)\n\nprint(\"Running Soda Scan...\")\nscan.execute()\n\nif scan.has_failures():\n    print(\"Scan finished with failures.\")\n    exit(1)\nelif scan.has_warnings():\n    print(\"Scan finished with warnings.\")\nelif scan.has_errors():\n    print(\"Scan finished with errors.\")\n    exit(1)\nelse:\n    print(\"Scan finished successfully.\")\n","lang":"python","description":"This quickstart demonstrates how to run a Soda Core scan against a Redshift data source using Python. It configures the Redshift connection details, defines a simple check for a 'dim_users' table, and executes the scan. Connection details are pulled from environment variables for secure credential management.","tag":null,"tag_description":null,"last_tested":null,"results":[]},"compatibility":null}