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:19630to expose the Transformer instance inside the docker container on your localhost's 19630 port. - Use
docker cpto copy your target CSV file into your Transformer docker container, and use the path of the copied file in thefrom_csvmethod.
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
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
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
|