3 ms·
So some people will refer to "vertical partitioning" (ie splitting up by table or column) and "horizontal partitioning" (ie splitting up a table by rows, via so
by Ozzie_osman 2y ago
So some people will refer to "vertical partitioning" (ie splitting up by table or column) and "horizontal partitioning" (ie splitting up a table by rows, via some shard scheme or key).
With this, sharding and horizontal partitioning are essentially the same, and the term partitioning by itself just means splitting up the data in some way (could be horizontal, vertical, or other).
That said, I've also heard people use shard and partition interchangeably in the general form, in which case, you get "horizontal sharding" and "vertical sharding".
I'd start by googling horizontal vs vertical partitioning.
- bigiain 2y agoThanks!
- mnahkies 2y agoI generally think of partitioning being on a single host, and sharding being the same but across multiple machines
- layer8 2y ago> sharding and horizontal partitioning are essentially the same That's not correct: https://en.wikipedia.org/wiki/Shard_(database_architecture)#Compared_to_horizont https://en.wikipedia.org/wiki/Shard_(database_architecture)#... al_partitioning For example, horizontal partitioning is often used within the same schema on the same instance in order to have separate indexes for (say) current vs. historical data. That's not what is meant by sharding, however; shards are separate instances.
- Ozzie_osman 2y agoI think people just use the terms slightly differently. Even the Wikipedia article you linked contradicts itself. > Sharding goes beyond this. It partitions the problematic table(s) in the same way, but it does this across potentially multiple instances of the schema. "Beyond this" but still "potentially across multiple instances". Anyway, with your framing sharding kind of becomes "distributed horizontal partitioning".