SNOWPRO-CORE practice question 19 of 35

True or False: Loading data into Snowflake requires that source data files be no larger than 16MB.

Full set: 628 questions

Domain Performance Management

Answer options
A: True
B: False
Correct Answer:
[FALSE]
Explanation

The statement is false. Snowflake does not have a requirement that source data files be no larger than 16MB. In fact, for optimal data loading performance using parallel operations, Snowflake's official best practice is to use larger files. The recommended size for compressed data files is between 100 MB and 250 MB. The 16MB value is often a point of confusion as it relates to the default threshold parameter for the PUT command in clients like SnowSQL. This parameter dictates the file size at which the client will begin to upload a file in parallel chunks, but it is not a maximum file size limit for loading data into Snowflake.

Why Incorrect

The "True" option is incorrect because it misinterprets a client-side default setting for parallel uploads (PUT command's threshold) as a mandatory system-wide file size limitation. Files significantly larger than 16MB can be loaded, and for bulk loading, larger files are explicitly recommended to leverage Snowflake's massively parallel processing (MPP) architecture effectively.

References

1. Snowflake Documentation: Data Loading Considerations > File Sizing Best Practices and Limitations. This official guide states, "To optimize the number of parallel operations for a load, we recommend aiming for compressed file sizes between 100 MB and 250 MB. Splitting large files into a greater number of smaller files distributes the load among the servers in an active warehouse." This directly contradicts the idea of a 16MB maximum.

2. Snowflake Documentation: SQL Reference > Commands > PUT. The documentation for the PUT command describes the AUTOCOMPRESS and PARALLEL parameters. It also details the threshold option for clients, specifying its default value: "Specifies the file size threshold (in bytes) for uploading files in parallel... Default: 16777216 (i.e. 16 MB)." This confirms that 16MB is a threshold for a specific command's behavior, not a system-wide requirement for all data loading.

Scroll to Top