Courseiva
Ingest and Transform DatamediumMultiple ChoiceObjective-mapped

DP-700 Ingest and Transform Data Practice Question

You are ingesting thousands of small JSON files into a Fabric Lakehouse. You notice that query performance on the resulting Delta table is very poor. Which ingestion strategy should you implement to resolve the 'small files problem'?

⚠ Common exam trap

Candidates often suggest partitioning or indexing rather than file compaction, ignoring that small files create metadata bloat that requires a Spark OPTIMIZE command.

Answer choices

Why each option matters

Answer the question above first, then reveal the full breakdown to understand why each option is right or wrong.

Correct answer & explanation

Run a Spark Notebook with the OPTIMIZE command on the table.

The 'small files problem' occurs when a large number of tiny files create excessive metadata overhead for the Spark engine. In Fabric, you can resolve this by using the 'Optimize' command or by configuring the Spark engine to compact files during the write process. This combines the small files into larger, more efficient Parquet files.

Answer analysis

Option-by-option breakdown

For each option: why learners choose it and why it is or isn't the right answer here.

  • Use the Copy Activity with the 'Preserve Hierarchy' setting.

    Why it's wrong here

    Preserving the hierarchy maintains the folder structure of the source but does nothing to solve the small files issue. In fact, it might exacerbate the problem by preventing the engine from consolidating data into fewer, larger files. This setting is more about organization than it is about performance optimization.

  • Run a Spark Notebook with the OPTIMIZE command on the table.

    Why this is correct

    The OPTIMIZE command in Delta Lake is specifically designed to handle the small files problem. It compacts small Parquet files into larger ones (typically aiming for 1GB). This reduces metadata overhead and significantly improves the speed of read operations for all engines that access the Delta table in Fabric.

  • Convert the JSON files to Avro format before ingestion.

    Why it's wrong here

    While Avro is a good format for row-based data, it does not solve the file count problem. Analytical queries in Fabric are optimized for Parquet/Delta. Converting to Avro would likely decrease performance and does not address the core issue of having too many small files in the underlying storage layer.

  • Increase the number of partitions in the Spark DataFrame.

    Why it's wrong here

    Increasing the number of partitions actually creates more files, which would make the small files problem even worse. To solve this issue, you should decrease the number of partitions (using coalesce or repartition) or use the OPTIMIZE command to merge existing files into a smaller, more manageable number.

Visual reference

Client Recursive Resolver Root DNS (13 root servers) TLD DNS (.com, .org, …) Authoritative example.com query IP addr answer

About these practice questions

Courseiva writes every DP-700 question from scratch — 152 in total, each with an explanation and a wrong-answer breakdown. None are copied from real exams or dumps. Learn why practice questions differ from exam dumps →

How Courseiva writes practice questions · Editorial policy

JA

Written and reviewed by Johnson Ajibi, MSc IT Security

Senior Network & Security Engineer · founder of Courseiva

Last reviewed September 2026 · checked against the official Microsoft exam blueprint

This DP-700 practice question is part of Courseiva's free Microsoft certification practice question bank. Courseiva provides original exam-style practice questions with explanations, topic-based practice, mock exams, readiness tracking, and study analytics to help learners prepare for the DP-700 exam.