dbt (data build tool) adapter for SAS
Project description
SAS DBT adapter
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
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
dbt-sas-1.3.0a15.tar.gz
(25.9 kB
view details)
Built Distribution
File details
Details for the file dbt-sas-1.3.0a15.tar.gz
.
File metadata
- Download URL: dbt-sas-1.3.0a15.tar.gz
- Upload date:
- Size: 25.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.10.9
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1a537aa1534cb9e815227be6dd100629bda9eaf375060263e9e60ac55c84bfa8 |
|
MD5 | 6c80af03f4e2fb004d7b48a9766ecf25 |
|
BLAKE2b-256 | e4505c4cff7a2a49e6c07a0d3f8533b3f754af498424d8017773a467c50b2634 |
File details
Details for the file dbt_sas-1.3.0a15-py2.py3-none-any.whl
.
File metadata
- Download URL: dbt_sas-1.3.0a15-py2.py3-none-any.whl
- Upload date:
- Size: 40.1 kB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.10.9
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 36cc5140740dfb37c0527b1ea38f29100a69794d4456bd2894c9295495580560 |
|
MD5 | d42f341a61d88e6b06764b42a170037d |
|
BLAKE2b-256 | b04be1ae9fcd25e22e538fba5121b2881dacee8ad793852d2f1859d90697a2c4 |