Поскольку данные базы данных организованы в виде 8-килобайтных страниц в B-дереве, а также для информации о PK, должна быть возможность для каждой таблицы в базе данных вычислить высоту B-дерева. Таким образом, выявляется, сколько прыжков требуется для достижения определенных данных.
Поскольку и размер строки, и размер PK имеют большое значение, его трудно вычислить, поскольку, например, varchar(250)
не обязательно должен занимать 250 байт.
1) Есть ли способ получить информацию из SQL Server? 2) если нет, то можно ли дать приблизительную оценку, используя какой-нибудь код, анализирующий таблицы БД?
O(log n)
независимо? - person Yuck   schedule 24.01.2012