A data science package for data movement and transformation
Project description
This script requires some initial setup to be completed before using it:
- Export your Platform API credentials to your localhost's environment variables as SCH_CRED_ID (credential id) and SCH_AUTH_TOKEN (authentication token).
- Export your Snowflake Password (the password used to log into your Snowflake organization) to your localhost's environment variables as SF_P. You will supply the username as an argument to the snowflake_conn method.
- Export your MySQL password (the password used to authenticate with your MySQL instance) to your localhost's environment variables as MYSQL_P. You will supply the username as an argument to the mysql_conn method.
- Spin up a Transformer deployment with a 'docker' install type, and run the resulting install/startup command
on the same host where the script is being run. Note: you may need to add
-p 19630:19630
to expose the Transformer instance inside the docker container on your localhost's 19630 port. - Use
docker cp
to copy your target CSV file into your Transformer docker container, and use the path of the copied file in thefrom_csv
method.
The current script usage is as follows:
import essx
sx = essx.Sx()
mysql_conn = sx.mysql_conn(host='url.of.mysql:port', username='username')
snowflake_conn = sx.snowflake_conn(account='snowflake-account', role='SNOWFLAKE_ROLE',
warehouse='SNOWFLAKE_WAREHOUSE', database='DATABASE', schema='SCHEMA',
username='USERNAME')
pt1_df = sx.from_mysql(connection=mysql_conn, schema='SCHEMA', tables=['TABLE_NAME'])
pt2_df = sx.from_csv('/path/to/file.csv')
final_df = sx.merge(pt1_df, pt2_df, how='JOIN_TYPE', on='COLUMN_NAME')
final_df = sx.drop(columns=['COLUMN_ONE', 'COLUMN_TWO', 'COLUMN_THREE', 'COLUMN_FOUR'])
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
essx-0.0.0a0.tar.gz
(6.8 kB
view details)
Built Distribution
File details
Details for the file essx-0.0.0a0.tar.gz
.
File metadata
- Download URL: essx-0.0.0a0.tar.gz
- Upload date:
- Size: 6.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.10.9
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 62e179e627ba2f7258c428bd245be78c983a8eabeb8a4dd780863145a9c886b7 |
|
MD5 | 39942a91d0e8d7615ec8b151813e639b |
|
BLAKE2b-256 | dbd0802b980542bc6ed822ff16db78b25a072b6961dbb8e4cf551c05b65b10d3 |
File details
Details for the file essx-0.0.0a0-py3-none-any.whl
.
File metadata
- Download URL: essx-0.0.0a0-py3-none-any.whl
- Upload date:
- Size: 8.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.10.9
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | aefd0639e6ff22a80cda203beb42aa4876584f34f042bff3141755af7d58f915 |
|
MD5 | 6eb7d8f1f74471c2f715e27d12ae6540 |
|
BLAKE2b-256 | 05518b27be6c602be332fea4dad3b4aa5c47fe2a3c868e2025a93b1f4ca44607 |