Skip to content

Instantly share code, notes, and snippets.

View daanalytics's full-sized avatar
🎯
Focusing

Daan Bakboord daanalytics

🎯
Focusing
View GitHub Profile
@daanalytics
daanalytics / get_dll.sql
Last active October 10, 2019 20:15
Snowflake GET_DLL
SELECT GET_DLL( 'SCHEMA','"<Database Name>"."<Schema"Name>');
@daanalytics
daanalytics / SFextS3Stage.sql
Created October 10, 2019 21:38
Create Snowflake External Stage
CREATE OR REPLACE STAGE <stage name> URL = 's3://<bucket_name>/path/' CREDENTIALS=(AWS_KEY_ID='xxxxxxx'AWS_SECRET_KEY='xxxxxxxxxxxxxx');
@daanalytics
daanalytics / listStageName.sql
Created October 10, 2019 22:32
List Stage Data
LIST @<Stage Name>
;
@daanalytics
daanalytics / SFFileFormat
Created October 10, 2019 22:42
Create Snowflake File Format
CREATE OR REPLACE FILE FORMAT <Database>.<Schema>.<File Format Name>
TYPE = 'CSV'
COMPRESSION = 'AUTO'
FIELD_DELIMITER = '|'
RECORD_DELIMITER = '\n'
SKIP_HEADER = 1
FIELD_OPTIONALLY_ENCLOSED_BY = '\042'
TRIM_SPACE = FALSE
ERROR_ON_COLUMN_COUNT_MISMATCH = TRUE
ESCAPE = 'NONE'
@daanalytics
daanalytics / SFCopyInto.sql
Created October 11, 2019 11:37
Copy into Snowflake from Stage
COPY INTO <Table Name> FROM @<Stage Name>
FILES = ( '<File Name>' )
FILE_FORMAT = ( FORMAT_NAME = <Format Name> )
;
@daanalytics
daanalytics / SFTransDatduringLoad.sql
Created October 11, 2019 11:48
Transforming Data During a Load
COPY INTO <Table Name>
FROM (
SELECT t.$1
, t.$2
, t.$3
, TO_NUMBER(REPLACE(t.$4,',','.'),8,2)
, t.$5
, TO_DATE(t.$6, 'DD-MM-YY')
, t.$7
FROM @<Stage Name>/<File Name> t)
@daanalytics
daanalytics / kaggle.json
Created March 17, 2022 10:53
Kaggle.json structure
{"username":"<user_name>","key":"<API token>"}
@daanalytics
daanalytics / credentials.json
Created March 17, 2022 11:10
Credentials file for Snowflake and Kaggle
{"secrets":
{
"account" : "<account",
"user" : "<user>",
"warehouse" : "<warehouse>",
"role" : "<role>",
"database" : "<database>",
"schema" : "<schema>",
"password" : "<password>"
},
@daanalytics
daanalytics / KaggleAPI_auth.py
Created March 17, 2022 12:55
Standard Kaggle authentication via API
# Setting the environment
import os
from kaggle.api.kaggle_api_extended import KaggleApi
# Setting the variabeles
os.environ['KAGGLE_USERNAME'] = "<kaggle-username>"
os.environ['KAGGLE_KEY'] = "<kaggle-API-token>"
# Connecting to Kaggle
api = KaggleApi()
@daanalytics
daanalytics / SF_KaggleAPI_auth.py
Created March 17, 2022 13:50
Combined Snowflake & Kaggle authentication via API
# Setting up connection to Kaggle and Snowflake
conn_location = '<location Credential file>'
connect = json.loads(open(str(conn_location+'/<Credential file>')).read())
#Kaggle variables referencing kaggle in the Credential file
os.environ['KAGGLE_USERNAME'] = connect['kaggle']['kaggle-username']
os.environ['KAGGLE_KEY'] = connect['kaggle']['kaggle-API-token']
# Connect to Kaggle