Serverless Storage: S3, Blob, Firestore Quiz Quiz

Explore key concepts in serverless storage, including object storage, blob storage, and document databases like Firestore. Assess your understanding of scalability, data organization, security, and use cases across these cloud storage paradigms.

  1. Object Storage Structure

    Which of the following best describes how objects are organized in a typical serverless object storage service, such as when saving photos from a mobile app?

    1. Objects are stored inside logical containers called buckets or containers.
    2. Objects are saved in traditional file system folders and subfolders.
    3. Objects are indexed solely by numerical IDs without any hierarchy.
    4. Objects must be uploaded in fixed-size blocks only.

    Explanation: In serverless object storage, items are organized into buckets or containers for logical grouping, which helps manage data access and organization. Unlike traditional file systems, there are no nested folders—folders are simulated with prefixes in object names, not real directories. Indexing solely by numerical IDs is too restrictive, as object storage allows for custom keys. Fixed-size block uploads are not mandatory, since objects can be of variable size.

  2. Blob Storage Use Case

    When would a developer most likely choose blob storage over a document store for storing application data?

    1. To store highly-relational data with many joins.
    2. To enforce a predefined schema on small text records.
    3. To perform complex transactions involving multiple tables.
    4. To save large, unstructured files like videos and backups.

    Explanation: Blob storage is ideal for holding large, unstructured data such as multimedia files and backups, thanks to its scalability and access methods. Document stores are better suited for managing semi-structured data, not binary blobs. Highly-relational data and complex transactions typically require relational databases, not blob or document storage. Blob storage does not enforce schema, so small text records with strict formats are also better in other storage types.

  3. Firestore Data Model

    In a serverless document database like Firestore, how is data most commonly structured to enable efficient querying?

    1. Data is stored as key-value pairs without nested data.
    2. Data is organized into collections containing documents, each with fields and values.
    3. Data must be uploaded as serialized binary objects only.
    4. Data is grouped into fixed tables with strictly typed columns.

    Explanation: Document databases utilize collections of documents, allowing for flexible schemas and nested data that enable fast queries. Fixed tables and strictly typed columns are characteristics of relational databases, not document stores. Pure key-value pairs are too simplistic and do not support nested or complex queries. Serialized binary objects are allowed in object stores or blobs, but are not the core data model for document databases.

  4. Serverless Storage Scalability

    What feature allows serverless storage services to handle sudden increases in traffic, such as during a global product launch?

    1. Pre-allocation of fixed disk partitions.
    2. Monthly scheduled data refreshes.
    3. Manual server capacity upgrades via control panels.
    4. Automatic scaling based on demand without pre-provisioning.

    Explanation: Serverless storage platforms automatically adjust resources as needed, scaling up or down without any manual intervention, which is essential for unpredictable workloads. Manual upgrades and pre-allocating disk partitions require administrative effort and can't respond instantly to demand spikes. Monthly data refreshes are unrelated to real-time scalability needs.

  5. Data Security Controls

    Which of the following is a typical way to control client access to objects or documents stored in serverless storage?

    1. Storing access credentials within the object's metadata.
    2. Permitting unrestricted public access only.
    3. Assigning fine-grained permissions based on user roles or access policies.
    4. Locking all files in a zip archive with a password.

    Explanation: Serverless storage commonly uses access control policies to set user or group permissions at the object or document level, providing robust security. Locking files with passwords in archives is not scalable and can't integrate with identity systems. Embedding credentials in metadata can expose sensitive information. Allowing unrestricted public access is risky and unsuitable for sensitive workloads.