Enqurious logo
Back to blog
Guides & Tutorials

The Snowflake Feature That Defies Common Sense

The Snowflake Feature That Defies Common Sense blog cover image
snowflake
Data Engineering
data-warehousing
Mandar Sawant

Recently, I mentored a group of engineering graduates who were learning Snowflake and preparing for the SnowPro Core Certification. During a review of sample certification questions, we came across this statement :
"To optimize data loading, Snowflake recommends file sizes to be between 100-250 MB."

One of the mentees immediately asked, “Why does Snowflake recommend files of 100–250 MB? What is significant about that range?”

I explained that instead of loading a single large file, it is more efficient to split the data into multiple smaller files. This approach often results in faster load times.

The room fell silent for a moment.

Then came a thoughtful follow-up question:
“Doesn’t that create extra work? We would be loading several files instead of just one. How can that be faster?”

It’s a logical question. Mathematically, it makes perfect sense to question this approach.

But is that how Snowflake actually operates?

When I first began working with Snowflake, I had the same doubts. Over time, I learned how Snowflake’s architecture and parallel processing capabilities make this recommendation both practical and efficient.

Still not sure what I mean?

Let’s walk through a simple experiment to see it in action.

Setting Up the Workspace

  1. Create Database and Schema

      CREATE DATABASE IF NOT EXISTS DATA_LOADING;
      CREATE SCHEMA IF NOT EXISTS TEST;
    
      USE SCHEMA DATA_LOADING.TEST;
  2. Setup the Warehouse

    For this experiment, we will use the default warehouse COMPUTE_WH provided by Snowflake
    Snowflake virtual warehouse configuration parameters displaying compute resources and performance settings for data loading

  3. Create a File Format

    CREATE OR REPLACE file format csv_format
    TYPE = 'CSV'
    FIELD_DELIMITER = ','
    SKIP_HEADER = 1;
  4. Create an External Stage

    All the required data is stored in an Azure storage container.

    Create an external stage to reference these files

    CREATE OR REPLACE STAGE adls_ext_stage
    STORAGE_INTEGRATION = adls_to_sf_integration
    URL = 'azure://sfcoredata.blob.core.windows.net/sfadvdata'
    FILE_FORMAT = csv_format;
  5. Verify files in the Stage

    -- List all files in the stage
    LIST @adls_ext_stage;

    Snowflake stage file listing displaying uploaded CSV files for parallel processing experiment in Snowsight interfaceRed Box: Single large file

    Green Box: Same dataset divided into eight smaller files

  6. Count Total Rows

    SELECT COUNT(*) as total_rows_in_file
    FROM @adls_ext_stage/loans.csv

    Snowflake stage query results displaying total row count from CSV file before data loading for performance comparisonMake a note of this number; we will use it later to verify our loading accuracy.

Approach 1: Loading the Single Large File

  1. Create a Target Table

    CREATE OR REPLACE TABLE loans_single_file(
        customer_id STRING,
        current_loan_amount INTEGER,
        term STRING, 
        years_in_current_job STRING,
        home_ownership STRING,
        purpose STRING,
        monthly_debt DECIMAL(8,2),
        loan_id STRING 
    );
  2. Load Data from the External Stage

    COPY INTO loans_single_file
    FROM @adls_ext_stage
    FILES = ('loans.csv')

Results:Snowflake COPY INTO command execution results showing 45-seconds load time for single large file processingTotal rows loaded: 25,000,000 (25 Million) 
Total time taken: 45 seconds

Approach 2 : Loading Multiple Files

  1. Create a Target Table

    CREATE OR REPLACE TABLE loans_multiple_file(
        customer_id STRING,
        current_loan_amount INTEGER,
        term STRING, 
        years_in_current_job STRING,
        home_ownership STRING,
        purpose STRING,
        monthly_debt DECIMAL(8,2),
        loan_id STRING 
    );
  2. Load Data from the External Stage

    COPY INTO loans_multiple_file
    FROM @adls_ext_stage
    PATTERN = '.*loans_.*.csv';

Execution details:Snowflake COPY INTO command execution results showing 15-second load time for multiple small files with parallel processingAll eight files were loaded without errors.
Time taken: 15 seconds

3. Verify Row Count

SELECT COUNT(*) as total_rows_loaded_multiple_files
FROM loans_multiple_file;

Snowflake query results showing total row count verification for multiple file loading approach in data warehouse performance testingTotal rows loaded: 25,000,000 (25 Million)

Performance Comparison

Approach

Total Files

Rows Loaded

Execution Time

Single File

1

25 Million

45 secs

Multiple Files

8

25 Million

15 secs

The results speak for themselves: loading smaller, parallel files is significantly faster.

Why Does This Happen?

An X-Small Snowflake virtual warehouse has eight cores, and each core can process one file at a time.

  • Single large file: Only one core is engaged, leaving the remaining seven idle.

  • Eight smaller files: All eight cores work simultaneously, completing the load far more quickly.

This parallelism is the reason Snowflake recommends splitting data into 100–250 MB files for efficient loading.

How Does Snowflake Know How Many Files to Process in Parallel?

Snowflake manages this behavior with the MAX_CONCURRENCY_LEVEL parameter. This setting determines how many files a warehouse can process in parallel during a COPY operation.

You can view the current setting for your warehouse with:

SHOW PARAMETERS IN WAREHOUSE COMPUTE_WH;

Snowflake MAX_CONCURRENCY_LEVEL parameter settings showing parallel file processing capabilities for different warehouse sizesIn our experiment, the eight-file approach aligned perfectly with the maximum concurrency level of the X-Small warehouse, allowing all cores to work at full capacity.

Efficient data loading in Snowflake is not just about file size; it’s about leveraging the architecture for parallel processing. By breaking large datasets into optimally sized chunks, you can:

  • Reduce load times dramatically

  • Maximize warehouse resources

  • Follow Snowflake’s best practices for scalable performance

The next time someone asks why Snowflake insists on those 100–250 MB files, you’ll have both the data and the explanation ready just as my mentees do now.

Want to go beyond this experiment and master Snowflake inside-out?

Check out the SnowPro Core Certification Skill Path on Enqurious Academy and start your certification journey.

Ready to Experience the Future of Data?

Discover how Enqurious helps deliver an end-to-end learning experience
Curious how we're reshaping the future of data? Watch our story unfold

You Might Also Like

Building Bronze Layer: Using COPY INTO in Databricks blog cover image
Guides & Tutorials
September 12, 2025
Building Bronze Layer: Using COPY INTO in Databricks

Master the bronze layer foundation of medallion architecture with COPY INTO - the command that handles incremental ingestion and schema evolution automatically. No more duplicate data, no more broken pipelines when new columns arrive. Your complete guide to production-ready raw data ingestion

Sayli Enqurious
Mastering Git & GitHub: A Complete Beginner-to-Advanced Guide blog cover image
Guides & Tutorials
September 11, 2025
Mastering Git & GitHub: A Complete Beginner-to-Advanced Guide

Learn Git and GitHub step by step with this complete guide. From Git basics to branching, merging, push, pull, and resolving merge conflicts—this tutorial helps beginners and developers collaborate like pros.

Sunil Enqurious
How Data, Governance & Security Work Like a Food Delivery App blog cover image
Guides & Tutorials
August 29, 2025
How Data, Governance & Security Work Like a Food Delivery App

Discover how data management, governance, and security work together—just like your favorite food delivery app. Learn why these three pillars turn raw data into trusted insights, ensuring trust, compliance, and business growth.

Divyanshi Enqurious
My Journey Building the Automated Feedback Forms System blog cover image
Guides & Tutorials
August 25, 2025
My Journey Building the Automated Feedback Forms System

A simple request to automate Google feedback forms turned into a technical adventure. From API roadblocks to a smart Google Apps Script pivot, discover how we built a seamless system that cut form creation time from 20 minutes to just 2.

Chethan
Mastering AKS Monitoring: Practical Journey with Azure Kubernetes Service blog cover image
Guides & Tutorials
August 21, 2025
Mastering AKS Monitoring: Practical Journey with Azure Kubernetes Service

Step-by-step journey of setting up end-to-end AKS monitoring with dashboards, alerts, workbooks, and real-world validations on Azure Kubernetes Service.

Yaseen Enqurious
Journey of an App | From Browser to Database and back blog cover image
Guides & Tutorials
August 9, 2025
Journey of an App | From Browser to Database and back

My learning experience tracing how an app works when browser is refreshed

Amit Enqurious
The Schema Evolution Challenge in Modern Data Pipelines (Part 1/5) blog cover image
Guides & Tutorials
May 10, 2025
The Schema Evolution Challenge in Modern Data Pipelines (Part 1/5)

This is the first in a five-part series detailing my experience implementing advanced data engineering solutions with Databricks on Google Cloud Platform. The series covers schema evolution, incremental loading, and orchestration of a robust ELT pipeline.

Amit Enqurious
7 Major Stages of the Data Engineering Lifecycle blog cover image
Guides & Tutorials
April 8, 2025
7 Major Stages of the Data Engineering Lifecycle

Discover the 7 major stages of the data engineering lifecycle, from data collection to storage and analysis. Learn the key processes, tools, and best practices that ensure a seamless and efficient data flow, supporting scalable and reliable data systems.

Ayushi Enqurious
Troubleshooting Pip Installation Issues on Dataproc with Internal IP Only blog cover image
Guides & Tutorials
April 3, 2025
Troubleshooting Pip Installation Issues on Dataproc with Internal IP Only

This blog is troubleshooting adventure which navigates networking quirks, uncovers why cluster couldn’t reach PyPI, and find the real fix—without starting from scratch.

Ayushi Enqurious
Optimizing Query Performance in BigQuery blog cover image
Guides & Tutorials
January 24, 2025
Optimizing Query Performance in BigQuery

Explore query scanning can be optimized from 9.78 MB down to just 3.95 MB using table partitioning. And how to use partitioning, how to decide the right strategy, and the impact it can have on performance and costs.

Ayushi Enqurious
When Partitioning and Clustering Go Wrong: Lessons from Optimizing Queries blog cover image
Guides & Tutorials
January 24, 2025
When Partitioning and Clustering Go Wrong: Lessons from Optimizing Queries

Dive deeper into query design, optimization techniques, and practical takeaways for BigQuery users.

Ayushi Enqurious
Stored Procedures vs. Functions: Choosing the Right Tool for the Job blog cover image
Guides & Tutorials
January 6, 2025
Stored Procedures vs. Functions: Choosing the Right Tool for the Job

Wondering when to use a stored procedure vs. a function in SQL? This blog simplifies the differences and helps you choose the right tool for efficient database management and optimized queries.

Divyanshi Enqurious
Understanding the Power Law Distribution blog cover image
Guides & Tutorials
January 3, 2025
Understanding the Power Law Distribution

This blog talks about the Power Law statistical distribution and how it explains content virality

Amit Enqurious
Breaking Down Data Silos with BigQuery Omni and BigLake blog cover image
Guides & Tutorials
December 23, 2024
Breaking Down Data Silos with BigQuery Omni and BigLake

Discover how BigQuery Omni and BigLake break down data silos, enabling seamless multi-cloud analytics and cost-efficient insights without data movement.

Ayushi Enqurious
Solving a Computer Vision task with AI assistance blog cover image
Guides & Tutorials
December 18, 2024
Solving a Computer Vision task with AI assistance

In this article we'll build a motivation towards learning computer vision by solving a real world problem by hand along with assistance with chatGPT

Amit Enqurious
How Apache Airflow Helps Manage Tasks, Just Like an Orchestra blog cover image
Guides & Tutorials
September 16, 2024
How Apache Airflow Helps Manage Tasks, Just Like an Orchestra

This blog explains how Apache Airflow orchestrates tasks like a conductor leading an orchestra, ensuring smooth and efficient workflow management. Using a fun Romeo and Juliet analogy, it shows how Airflow handles timing, dependencies, and errors.

Burhanuddin Enqurious
Snapshots and Point-in-Time Restore: The E-Commerce Lifesaver blog cover image
Guides & Tutorials
January 13, 2024
Snapshots and Point-in-Time Restore: The E-Commerce Lifesaver

The blog underscores how snapshots and Point-in-Time Restore (PITR) are essential for data protection, offering a universal, cost-effective solution with applications in disaster recovery, testing, and compliance.

Ayushi Enqurious
Basics of Langchain blog cover image
Guides & Tutorials
December 16, 2023
Basics of Langchain

The blog contains the journey of ChatGPT, and what are the limitations of ChatGPT, due to which Langchain came into the picture to overcome the limitations and help us to create applications that can solve our real-time queries

Burhanuddin Enqurious
Understanding Data Lakes and Data Warehouses: A Simple Guide blog cover image
Guides & Tutorials
December 8, 2023
Understanding Data Lakes and Data Warehouses: A Simple Guide

This blog simplifies the complex world of data management by exploring two pivotal concepts: Data Lakes and Data Warehouses.

Ayushi Enqurious
An L&D Strategy to achieve 100% Certification clearance blog cover image
Guides & Tutorials
December 6, 2023
An L&D Strategy to achieve 100% Certification clearance

An account of experience gained by Enqurious team as a result of guiding our key clients in achieving a 100% success rate at certifications

Amit Enqurious
Serving Up Cloud Concepts: A Pizza Lover's Guide to Understanding Tech blog cover image
Guides & Tutorials
November 2, 2023
Serving Up Cloud Concepts: A Pizza Lover's Guide to Understanding Tech

demystifying the concepts of IaaS, PaaS, and SaaS with Microsoft Azure examples

Ayushi Enqurious
Azure Data Factory: The Ultimate Prep Cook for Your Data Kitchen blog cover image
Guides & Tutorials
October 31, 2023
Azure Data Factory: The Ultimate Prep Cook for Your Data Kitchen

Discover how Azure Data Factory serves as the ultimate tool for data professionals, simplifying and automating data processes

Ayushi Enqurious
Harnessing Azure Cosmos DB APIs: Transforming E-Commerce blog cover image
Guides & Tutorials
October 26, 2023
Harnessing Azure Cosmos DB APIs: Transforming E-Commerce

Revolutionizing e-commerce with Azure Cosmos DB, enhancing data management, personalizing recommendations, real-time responsiveness, and gaining valuable insights.

Ayushi Enqurious
Unleashing the Power of NoSQL: Beyond Traditional Databases blog cover image
Guides & Tutorials
October 26, 2023
Unleashing the Power of NoSQL: Beyond Traditional Databases

Highlights the benefits and applications of various NoSQL database types, illustrating how they have revolutionized data management for modern businesses.

Ayushi Enqurious
Calendar Events Automation: Streamline Your Life with App Script Automation blog cover image
Guides & Tutorials
October 10, 2023
Calendar Events Automation: Streamline Your Life with App Script Automation

This blog delves into the capabilities of Calendar Events Automation using App Script.

Burhanuddin Enqurious
A Journey Through Extraction, Transformation, and Loading blog cover image
Guides & Tutorials
September 7, 2023
A Journey Through Extraction, Transformation, and Loading

Dive into the fundamental concepts and phases of ETL, learning how to extract valuable data, transform it into actionable insights, and load it seamlessly into your systems.

Burhanuddin Enqurious
A Simple Guide to Data Literacy blog cover image
Guides & Tutorials
June 23, 2023
A Simple Guide to Data Literacy

An easy to follow guide prepared based on our experience with upskilling thousands of learners in Data Literacy

Amit Enqurious
The Bakery Brain: Simplifying neural networks blog cover image
Guides & Tutorials
June 23, 2023
The Bakery Brain: Simplifying neural networks

Teaching a Robot to Recognize Pastries with Neural Networks and artificial intelligence (AI)

Shuchismita Enqurious
Demystifying Namespace Structures blog cover image
Guides & Tutorials
June 23, 2023
Demystifying Namespace Structures

Streamlining Storage Management for E-commerce Business by exploring Flat vs. Hierarchical Systems

Ayushi Enqurious
The Ownership Dilemma blog cover image
Guides & Tutorials
January 26, 2023
The Ownership Dilemma

Figuring out how Cloud help reduce the Total Cost of Ownership of the IT infrastructure

Amit Enqurious
Making sense of Cloud as an IT Professional blog cover image
Guides & Tutorials
January 26, 2023
Making sense of Cloud as an IT Professional

Understand the circumstances which force organizations to start thinking about migration their business to cloud

Amit Enqurious