What is horizontal partitioning in database design?
Horizontal partitioning means splitting a table into multiple tables where each table holds a subset of rows. Think of it like dividing a guest list by last name ranges.
Click to reveal answer
beginner
What is vertical partitioning in database design?
Vertical partitioning means splitting a table into multiple tables where each table holds a subset of columns. Imagine separating a contact list into one table for names and another for phone numbers.
Click to reveal answer
intermediate
Which partitioning method improves query performance by reducing the number of columns scanned?
Vertical partitioning improves query performance by limiting the columns scanned, making queries faster when only some columns are needed.
Click to reveal answer
intermediate
How does horizontal partitioning help with scaling databases?
Horizontal partitioning helps scaling by distributing rows across multiple servers or disks, allowing parallel processing and reducing load on any single server.
Click to reveal answer
beginner
Give a real-life example to explain horizontal partitioning.
Imagine a library splitting its books by genre into different shelves. Each shelf holds a subset of books (rows), which is like horizontal partitioning.
Click to reveal answer
What does horizontal partitioning split in a database?
AIndexes
BColumns
CRows
DDatabases
✗ Incorrect
Horizontal partitioning splits the table by rows, dividing data into subsets of records.
Vertical partitioning is best used when:
AYou want to split data by columns
BYou want to archive old data
CYou want to replicate data
DYou want to split data by rows
✗ Incorrect
Vertical partitioning splits data by columns, separating attributes into different tables.
Which partitioning method can improve query speed by reducing data scanned?
AHorizontal partitioning
BVertical partitioning
CBoth equally
DNeither
✗ Incorrect
Vertical partitioning reduces the number of columns scanned, speeding up queries that need fewer columns.
Horizontal partitioning helps with:
AReducing columns in a table
BNormalizing data
CEncrypting data
DDistributing rows across servers
✗ Incorrect
Horizontal partitioning distributes rows across servers or disks to improve scalability.
Which is an example of vertical partitioning?
ASplitting customer data into personal info and purchase history tables
BSplitting customer data by region
CBacking up data to another server
DSharding data by user ID
✗ Incorrect
Vertical partitioning splits data by columns, such as separating personal info and purchase history.
Explain the difference between horizontal and vertical partitioning with simple examples.
Think about dividing a spreadsheet by rows vs columns.
You got /4 concepts.
Describe how horizontal and vertical partitioning can help improve database performance and scalability.
Consider what happens when you only need some data or want to share load.
You got /4 concepts.
Practice
(1/5)
1. Which of the following best describes horizontal partitioning in system design?
easy
A. Combining multiple tables into one large table
B. Splitting a database table into multiple tables by columns
C. Splitting a database table into multiple tables by rows
D. Duplicating the entire database for backup
Solution
Step 1: Understand horizontal partitioning
Horizontal partitioning means dividing data by rows, so each partition holds a subset of rows.
Step 2: Compare with other options
Vertical partitioning splits by columns, combining tables merges data, and duplication is for backup, not partitioning.
Final Answer:
Splitting a database table into multiple tables by rows -> Option C
2. Which syntax correctly describes vertical partitioning?
easy
A. Splitting data by rows into multiple tables
B. Splitting data by columns into multiple tables
C. Merging rows from different tables
D. Backing up the entire database
Solution
Step 1: Define vertical partitioning
Vertical partitioning splits a table by columns, separating attributes into different tables.
Step 2: Eliminate incorrect options
Options about rows, merging, or backup do not describe vertical partitioning.
Final Answer:
Splitting data by columns into multiple tables -> Option B
Quick Check:
Vertical partitioning = splitting by columns [OK]
Hint: Columns split = vertical partitioning [OK]
Common Mistakes:
Confusing vertical with horizontal partitioning
Assuming partitioning means merging tables
Mixing partitioning with backup processes
3. Consider a user database table with columns: id, name, email, password, address. If we apply vertical partitioning by splitting sensitive data into a separate table, which of the following is a valid partition?
medium
A. Table 1: id, password; Table 2: name, email, address
B. Table 1: id, name; Table 2: email, password, address
C. Table 1: id, name, password; Table 2: email, address
5. You design a large e-commerce database with millions of orders. You want to improve performance by splitting data. Which approach is best and why?
hard
A. Use horizontal partitioning by customer ID and vertical partitioning by payment info for balanced load
B. Use vertical partitioning by splitting order details and customer info into separate tables to reduce row size
C. Use no partitioning and rely on caching for performance
D. Use horizontal partitioning by order date to distribute rows across servers, improving query speed on recent orders
Solution
Step 1: Understand data and query patterns
Orders have many rows and columns; splitting by customer ID (horizontal) balances load; splitting payment info (vertical) reduces row size.
Step 2: Evaluate options
Use horizontal partitioning by customer ID and vertical partitioning by payment info for balanced load combines horizontal and vertical partitioning for scalability and performance, better than single approach or no partitioning.
Final Answer:
Use horizontal partitioning by customer ID and vertical partitioning by payment info for balanced load -> Option A
Quick Check:
Combine horizontal and vertical partitioning for large data [OK]
Hint: Combine horizontal and vertical for big, complex data [OK]
Common Mistakes:
Using only one partitioning type for complex data
Ignoring query patterns and data distribution
Relying solely on caching without partitioning
Recommended
Ready to prove it?
Pass the test and this pattern moves unknownstrongwhile earning +1 Grip toward your certificate.