Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

SAS DBT adapter

Build Status PyPI version PyPI License Code style: black

The dbt-sas package allows dbt to connect to SAS.

Installation

pip install dbt-sas

Configurations

Basic profile.yml for connecting to SAS:

sas-test:
  outputs:
    dev:
      type: sas
      host: SAS host
      port: 8591
      database: sas (keep 'sas', don't change)
      schema: default libray name
      user: SAS username
      password: SAS password
      autoexec: optional local path of autoexec.sas file
      lib_base_path: optional path (on the SAS server) for new libraries
      threads: 1
      fail_on_warnings: False
      lib_name_strict_mode: False
  target: dev
Key Required Description
type Yes The specific adapter to use (sas)
host Yes SAS server hostname
port Yes SAS server port
database Yes sas, don't change
schema Yes Default SAS libname
username Yes The username to use to connect to the server
password Yes The password to use for authenticating to the server
handler Yes SAS handler ws (default) or saspy
autoexec No Local path of autoexec.sas file
lib_base_path No Base path on the SAS server for new libraries
fail_on_warnings No Raise and error if it encounters a warning
lib_name_strict_mode No Enable strict libname/identifier check

Features

Key Supported Description
Tests Yes Run dbt tests on SAS
Load seed files Yes Load seeds from CSV files to SAS
View Materialization Yes Materialize dbt models as views in SAS
Table Materialization Yes Materialize dbt models as tables in SAS
Ephemeral Materialization Partial Materialize dbt ephemeral tables as temporary views in SAS
Incremental Materialization No
Snapshots No
Grants No SQL grants are not supported by SAS

Limitations

  • Schemas (lib names) are limited to 8 characters.
  • Table names, column names, and aliases are limited to 32 characters.

Usage

  • Create dbt project, choose sas database and set up connection
$ dbt init <project_name>

Query Logging

Enable additional logging by setting the DBT_SAS_LOG environment variable to the log filename, e.g.:

export DBT_SAS_LOG='file.log'

Select the log families, e.g.:

export DBT_SAS_FAMILY='sas,sql'

Log families are:

  • sas
  • sql
  • original_sql

Adapter Testing

  • Install dev requirements
$ pip install -r dev_requirements.txt
  • Run pytest
$ python -m pytest tests/

Licence

Apache License, Version 2.0

Links

Metadata

Release files for dbt-sas 1.3.0a17

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for dbt-sas 1.3.0a17
File Size Uploaded
dbt-sas-1.3.0a17.tar.gz 26.0 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for dbt-sas 1.3.0a17
File Interpreter ABI Platform
dbt_sas-1.3.0a17-py2.py3-none-any.whl Python 2, Python 3 none any Details

Total release size: 66.3 kB

Release files / dbt-sas-1.3.0a17.tar.gz

Download URL dbt-sas-1.3.0a17.tar.gz
Size 26.0 kB
Tags Source
SHA-256 checksum
How to use checksums
4692d52162e2f8f7a5a22c22519cbaabeb2a4205511e1f8543aad98d8fe96584
BLAKE2b-256 checksum
How to use checksums
740398d16f106a418cc61461791acb5eb2e8fd83a5689cc57145319761f45984
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.10.9

Release files / dbt_sas-1.3.0a17-py2.py3-none-any.whl

Download URL dbt_sas-1.3.0a17-py2.py3-none-any.whl
Size 40.2 kB
Tags Python 2 Python 3
SHA-256 checksum
How to use checksums
8347e13f85280cb778c361429363b35b8fd157a5c328459092bcf33d17ca7629
BLAKE2b-256 checksum
How to use checksums
82bdb20bdb0b9c0c5ee3caee15067e1b6513f1988b6dcbd23c94abd2b77ed337
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.10.9
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page