Skip to main content

LocalStack Extension: Snowflake

Project description

LocalStack Snowflake Extension

This LocalStack extension provides basic emulation of the Snowflake API.

⚠️ Please note that this extension is experimental and still under development.

Prerequisites

  • LocalStack Pro
  • Docker
  • Python

Installation

Before installing the extension, make sure you're logged into LocalStack. If not, log in using the following command:

localstack login

You can then install this extension using the following command:

localstack extensions install localstack-extension-snowflake

Usage

Once the extension is installed, configure your Snowflake client connector to point to the API endpoint https://snowflake.localhost.localstack.cloud. For example, when using the Snowflake Python connector:

client = snowflake.connector.connect(
    user="test",
    password="test",
    account="test",
    host="snowflake.localhost.localstack.cloud",
)
client.cursor().execute("...")

Change Log

  • 0.1.16: Add support for SHOW PROCEDURES and SHOW IMPORTED KEYS; add basic support for session parameters
  • 0.1.15: Fix result type converstion for GET_PATH(..) util function
  • 0.1.14: Enhance parity around SHOW TABLES/OBJECTS/COLUMNS queries; add more array util functions; fix STRING_AGG for different DISTINCT/GROUP combinations
  • 0.1.13: Support some CURRENT_* functions; enhance LISTAGG for distinct values; add test for JS UDFs with exports
  • 0.1.12: Cast params for string_agg/listagg; more parity fixes for upper/lowercase names
  • 0.1.11: Enhance parity for array aggregation functions; enhance parity around subqueries and timestamp timezones; add logic to keep track of case-sensitive db/table identifiers
  • 0.1.10: Add query transforms for CLUSTER BY; add SF_S3_ENDPOINT config; more parity fixes
  • 0.1.9: Add support for Python UDFs; enhance parity around CREATE OR REPLACE FUNCTION queries; add analytics setup
  • 0.1.8: Add SF_LOG config to enable request/response trace logging
  • 0.1.7: Add initial support for Snowflake JavaScript UDFs; enhance parity around responses for DB/table creation; enhancements for Snowflake streaming logic
  • 0.1.6: Introduce session state to retain DB/schema across queries; support async queries and result_scan(..)
  • 0.1.5: Enhance parity around DESCRIBE TABLE results; support MIN_BY/MAX_BY aggregate functions
  • 0.1.4: Add logic to parse and replace DB references in queries
  • 0.1.3: Add DBEngine abstraction, experimental support for duckdb; enhance support for JSON queries
  • 0.1.2: Add logic to ingest a CSV file from a Snowflake stage into a table
  • 0.1.1: Initial support for Kafka connector and snowpipe/streaming APIs
  • 0.1.0: Initial release of the extension

License

(c) 2023 LocalStack

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

localstack-extension-snowflake-0.1.16.tar.gz (27.3 kB view hashes)

Uploaded Source

Supported by

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