Horizontal Partitioning

  • Definition: Splits a table by rows into partitions within one database server (the same split across multiple servers is called sharding)
  • Characteristics:
    • Same schema across all partitions
    • Different rows in different partitions
    • Each partition contains a complete subset of data
  • Examples: Partitioning customer data by region, time-series data by date ranges

Vertical Partitioning

  • Definition: Splits a table by columns, storing different column sets separately
  • Characteristics:
    • Different schemas across partitions
    • Same row identifiers across partitions
    • Often used to separate frequently accessed columns from rarely accessed ones
  • Examples: Storing customer basic info separately from detailed profile data