Разделянето е по-скоро общ термин за разделяне на данни между таблици или бази данни. Разделянето е един специфичен тип разделяне, част от това, което се нарича хоризонтално разделяне.
Тук репликирате схемата в (обикновено) множество екземпляри или сървъри, като използвате някаква логика или идентификатор, за да знаете кой екземпляр или сървър да търси данните. Идентификатор от този вид често се нарича "Shard Key".
Често срещана логика без ключ е използването на азбуката за разделяне на данните. A-D е екземпляр 1, E-G е екземпляр 2 и т.н. Клиентските данни са много подходящи за това, но ще бъдат донякъде погрешно представени по размер в различните случаи, ако разделянето не вземе предвид, че някои букви са по-често срещани от други.
Друга често срещана техника е използването на система или логика за синхронизиране на ключове, които осигуряват уникални ключове във всички екземпляри.
Добре известен пример, който можете да проучите, е как Instagram реши тяхното разделяне в първите дни (вижте връзката по-долу). Те започнаха разделени на много малко сървъри, използвайки Postgres за разделяне на данните от самото начало. Вярвам, че бяха няколко хиляди логически фрагмента на тези няколко физически фрагмента. Прочетете страхотната им статия от 2012 г. тук:Instagram Engineering - Sharding &IDs
Вижте и тук:http://www.quora. com/Каква е разликата между разделяне и разделяне