База данных, с которой я работаю, в настоящее время превышает 100 ГиБ и обещает значительно увеличиться в течение следующего года или около того. Я пытаюсь разработать схему разбиения, которая будет работать с моим набором данных, но до сих пор с треском провалилась. Моя проблема заключается в том, что запросы к этой базе данных обычно проверяют значения нескольких столбцов в этой одной большой таблице, в результате чего наборы результатов пересекаются непредсказуемым образом.
Все (администраторы баз данных, с которыми я работаю) предостерегают от использования таблиц определенного размера, и я исследовал и оценил решения, с которыми сталкивался, но все они, похоже, полагаются на характеристику данных, которая учитывает логические таблицы секционирования. К сожалению, я не вижу способа достичь этого, учитывая структуру моих таблиц.
Вот структура наших двух основных таблиц, чтобы представить это в перспективе.
Table: Case
Columns:
Year
Type
Status
UniqueIdentifier
PrimaryKey
etc.
Table: Case_Participant
Columns:
Case.PrimaryKey
LastName
FirstName
SSN
DLN
OtherUniqueIdentifiers
Обратите внимание, что любой из приведенных выше столбцов можно использовать в качестве параметров запроса.