PUT command in Snowflake — How to load the data into the snowflake named internal stage?

External Stage:

Data files are stored in a location outside of Snowflake. Currently, the following cloud storage services are supported:

  • Amazon S3 buckets
  • Google Cloud Storage buckets
  • Microsoft Azure containers

Internal Stage:

Stores data files internally within Snowflake. Internal stages can be either permanent or temporary.

  • User — User stages are referenced using @~
  • Table — Table stages are reference using @%
  • Named (also called “Internal Named”)

SnowSQL

It is a command-line client that is used to connect Snowflake. Instead of Snowflake Web Interface, we can use the SnowSQL tool to perform/execute SQL query, DDL, DML commands, including loading and unloading data. To install SnowSQL, please download the executable from the snowflake Help menu. PFB the screenshot,

File Format

It is a pattern of format which we create for the type of File. It can be CSV, Json, XML, Avro, etc. It will help us while loading the different format data into the Snowflake table.

  • Uploading CSV file from local system to Snowflake Stage
  • Load data from stage to Snowflake table

Conclusion

Uploading files to a Snowflake stage can be done by any Snowflake connector client. We can post the file into the stage from the local system and then the data can be loaded from the stage to the Snowflake table. If you have an S3 bucket where you are posting/uploading the data files or if you have Azure blob where you are posting/uploading data files, then you can simply create a stage referencing the keys of AWS S3 bucket or Azure blob and start loading the data into the table.

--

--

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store