Bird
Raised Fist0
GCPcloud~5 mins

Firestore document model in GCP - Cheat Sheet & Quick Revision

Choose your learning style10 modes available
Recall & Review
beginner
What is a Firestore document?
A Firestore document is a single record in a Firestore database. It stores data as key-value pairs and is similar to a row in a table but more flexible.
Click to reveal answer
beginner
How are Firestore documents organized?
Documents are organized into collections. Each collection contains multiple documents, and documents can contain subcollections, creating a tree-like structure.
Click to reveal answer
intermediate
Can Firestore documents contain nested data?
Yes, documents can contain nested objects and arrays as values, allowing complex data structures inside a single document.
Click to reveal answer
intermediate
What is the maximum size of a Firestore document?
A Firestore document can be up to 1 MiB (1,048,576 bytes) in size, including all fields and nested data.
Click to reveal answer
beginner
How does Firestore handle document IDs?
Each document has a unique ID within its collection. IDs can be auto-generated by Firestore or set manually by the user.
Click to reveal answer
What is the basic unit of data storage in Firestore?
ATable
BDocument
CRow
DBucket
How are documents grouped in Firestore?
AIn collections
BIn tables
CIn buckets
DIn rows
What is the maximum size allowed for a Firestore document?
A5 MiB
B10 MiB
C1 MiB
D100 KiB
Can Firestore documents contain arrays and nested objects?
AYes
BNo
COnly arrays
DOnly nested objects
How are document IDs assigned in Firestore?
ABy collection name
BOnly manually
COnly auto-generated
DManually or auto-generated
Explain how Firestore organizes data using documents and collections.
Think of folders (collections) containing files (documents).
You got /4 concepts.
    Describe the types of data Firestore documents can hold and any size limits.
    Consider what fits inside a single document.
    You got /3 concepts.

      Practice

      (1/5)
      1. What is the basic unit of data storage in Firestore?
      easy
      A. A table
      B. A document
      C. A bucket
      D. A file

      Solution

      1. Step 1: Understand Firestore data structure

        Firestore organizes data into collections and documents, not tables or files.
      2. Step 2: Identify the smallest data unit

        The smallest unit is a document, which holds fields and values.
      3. Final Answer:

        A document -> Option B
      4. Quick Check:

        Firestore stores data as documents [OK]
      Hint: Remember: Firestore uses documents, not tables or files [OK]
      Common Mistakes:
      • Confusing documents with tables from SQL databases
      • Thinking Firestore stores files like Cloud Storage
      • Assuming buckets are data units in Firestore
      2. Which of the following is the correct way to represent a Firestore document field in JSON-like syntax?
      easy
      A. "name": "Alice"
      B. "name" = "Alice"
      C. name: Alice
      D. 'name' -> 'Alice'

      Solution

      1. Step 1: Recall JSON field syntax

        JSON uses double quotes for keys and string values, separated by a colon.
      2. Step 2: Match Firestore document field style

        Firestore documents resemble JSON, so the correct syntax is "key": "value".
      3. Final Answer:

        "name": "Alice" -> Option A
      4. Quick Check:

        Firestore fields use JSON syntax [OK]
      Hint: Use colon and double quotes for Firestore fields [OK]
      Common Mistakes:
      • Using equals sign instead of colon
      • Omitting quotes around keys or values
      • Using arrow notation which is invalid
      3. Given a Firestore collection 'users' with documents having fields {"age": 30, "active": true}, what will the query return if you filter for documents where active == false?
      medium
      A. All documents with active false
      B. All documents regardless of active field
      C. Error due to invalid filter
      D. No documents

      Solution

      1. Step 1: Understand the data and filter condition

        Documents have "active": true, but the query filters for active == false.
      2. Step 2: Evaluate query result

        No documents match active == false, so the query returns no results.
      3. Final Answer:

        No documents -> Option D
      4. Quick Check:

        Filter matches no documents [OK]
      Hint: Filter matches only exact values; no match means empty result [OK]
      Common Mistakes:
      • Assuming query returns all documents
      • Expecting an error for valid filter
      • Confusing true and false values
      4. You try to add a document with this data: {name: "Bob", age: "twenty"}. What is the likely issue?
      medium
      A. Firestore requires age to be a number, not a string
      B. No issue, document will be added
      C. Field names must be in quotes
      D. Document ID is missing

      Solution

      1. Step 1: Check field name syntax

        Firestore expects field names as strings in JSON, so keys must be quoted.
      2. Step 2: Analyze the given data

        Keys are unquoted (name, age), which is invalid JSON syntax for Firestore.
      3. Final Answer:

        Field names must be in quotes -> Option C
      4. Quick Check:

        Field names need quotes in Firestore JSON [OK]
      Hint: Always quote field names in Firestore documents [OK]
      Common Mistakes:
      • Thinking Firestore auto-corrects missing quotes
      • Assuming string values for numbers cause errors
      • Believing document ID is mandatory in data
      5. You want to model a blog app in Firestore. Each blog post has multiple comments. Which is the best Firestore document model to organize this data?
      hard
      A. Create a 'posts' collection with documents for each post, and a subcollection 'comments' inside each post document
      B. Store all comments as an array field inside each blog post document
      C. Create a single collection 'comments' with a field referencing the post ID
      D. Store all posts and comments in one flat collection

      Solution

      1. Step 1: Consider Firestore best practices for related data

        Large or growing lists like comments should be in subcollections, not arrays, for scalability.
      2. Step 2: Evaluate options for organizing posts and comments

        Using a 'posts' collection with 'comments' subcollections keeps data organized and efficient.
      3. Final Answer:

        Create a 'posts' collection with documents for each post, and a subcollection 'comments' inside each post document -> Option A
      4. Quick Check:

        Use subcollections for related many items [OK]
      Hint: Use subcollections for many related items, not arrays [OK]
      Common Mistakes:
      • Putting all comments in one array causing size limits
      • Using a flat collection losing post-comment grouping
      • Referencing post ID without subcollections complicates queries
      Recommended

      Ready to prove it?

      Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

      10 questions~5 mineasy hard