Columnar Data, from the inside out Compare the layers →

Apply what you learned

Explain a new case.

These small constructed cases use different values from the guides. Predict the answer, explain why, then check the reasoning. They test a mechanism rather than your memory of a diagram. Answers remain in this page’s memory and are cleared on reload.

1. Bounds are not membership

A flat integer column has two row groups. A has trusted min=10 and max=40. B has trusted min=60 and max=90. You need x=25. What can the bounds establish?

Choose the best answer
Read the answer key

Read A to check; skip B. 25 lies inside A’s bounds, but A could contain only 10 and 40. B cannot contain 25. Bounds can exclude work; overlapping bounds do not prove a matching row exists.

Read the related chapter

2. Values are not rows

A list column has three records: [4, 7], null, and []. How many logical records should a projected record view return?

Choose the best answer
Read the answer key

Three, preserving the null and empty list. The two numbers belong to one record. Definition and repetition levels distinguish the null list, the empty list, and boundaries between records. A flattened leaf-value index is not a record index.

Read the related chapter

3. The directory is not the table

A committed table version references files A and C. File B is an older replacement, and D is a staged file whose commit failed. All four exist on disk. Which files belong to this version?

Choose the best answer
Read the answer key

A and C. The committed version determines membership. Directory presence alone includes historical and unpublished files. Reading the active files can still require applicable row-delete metadata.

Read the related chapter

4. History can outlive data

The transaction history still identifies version 3, but a required data file was physically removed by cleanup. What does having the log establish?

Choose the best answer
Read the answer key

Its membership may be known, but a full read can fail. Metadata reconstruction and physical readability are separate. Knowing a historical file’s identity does not restore its bytes. A newer version can remain valid if it no longer needs that file.

Read the related chapter

5. A filter can change an outer join

A LEFT JOIN keeps unmatched left rows with NULL right values. A WHERE right.score > 10 filter is applied after the join. Does this preserve the unmatched left rows?

Choose the best answer
Read the answer key

No, the WHERE predicate does not evaluate to true for their NULL score. The join initially preserves unmatched left rows. The later WHERE discards rows for which the condition is false or unknown. Moving this predicate into ON can therefore change the result.

Read the related chapter

6. A correct top-k within the wrong candidates

Exact top-3 IDs are {2, 5, 9}. A partition-pruned search returns {2, 9, 12}, correctly sorted by distance among the candidates it visited. What is recall@3 for this query?

Choose the best answer
Read the answer key

2/3, because two exact neighbors were recovered. The intersection is {2, 9}, so recall is 2/3. Correct candidate scoring does not recover ID 5 if its partition was never searched. This says nothing about recall on other queries.

Read the related chapter

Use the reasoning to explain your answer before trying another case. Find another concept →