Я аналитик отчетов и «новичок» для SQL Server. У меня есть вид, соединяющий 2 таблицы со 100 столбцами - 50: NVARCHAR(255) Null
по умолчанию, все остальные - int
или float
.SQL Server 2012 высокая производительность столбцов таблицы
Таблица может достигать 1 миллиона строк, а производительность является ужасной при извлечении данных с использованием SQL Server, занимает час и исчерпала память. Большая часть моего NVARCHAR(255)
фактически ограничена 10 & 50 байт в исходной таблице, поэтому 255 не требуется. Исключая любые проблемы с объединением SQL, есть ли преимущество в производительности для уменьшения размеров столбцов 50 до их истинных пределов?
Я видел различные данные на форуме для этого: некоторые статьи указывают, что я получаю выгоду от производительности по размеру страницы, уменьшая это, поэтому данные «IN-ROW».
С другой стороны, я прочитал, где NVARCHAR(255)
извлекает фактический размер данных 10 или 50, что не может вызывать проблемы с производительностью.
Помогите?
Спасибо всем!
Rebelle
Добро пожаловать в SO! Не связанное, но предложение: это звучит как * много * данных, которые должны содержаться в стольких таблицах, - рассмотрите [нормализацию базы данных] (https://en.wikipedia.org/wiki/Database_normalization), если/когда у вас есть время – Conduit