2016-12-21 9 views
-3

Для получения следующего соотношения:Как рассчитать размер файла?

покупки (purchaseID строки (20), идентификатор пользователя струны (20), softwareID струн (30), имя_пользователь струн (30), sofware_title строки (100), purchase_details строки (100))

Каждый символ в строке длиной 1 байт (т.е. buyID равен 20 байтам).

Предположим, что существует 80 000 записей в отношении покупки, а размер блока - 3000 байт.

мне нужна следующая информация:

а) Вычислить размер файла в количестве блоков, предполагающих структуру фиксированной длиной записи используются для файла.

Для вопросов б и в, предположим, что следующий запрос дается:

«выберите * от покупки, где purchaseID = 1923».

1.b. Если файл является orderd by software_title, сколько блоков в среднем нужно искать для данного запроса?

1.c. Если файл упорядочен по идентификатору purchaseID, сколько блоков нужно искать для данного запроса в худшем случае?

+2

Добро пожаловать в StackOverflow! Мы не работаем с домашним заданием. Пожалуйста, прочитайте [ask]. Простое копирование и вставка домашнего задания здесь не даст вам ответов, которые вы ищете. Поработайте над своим заданием в меру своих возможностей, и когда вы столкнетесь с * конкретной * проблемой, не стесняйтесь спрашивать. –

ответ

0

Основываясь на вашей схеме таблиц, одна запись в вашем Purchase table займет 300 байт, предположим, что вы используете varchar. и всего 80000 записей возьмут 80000*300 = 24000000 B, затем разделите его на 3000, что даст вам 8000 блоков. Я предполагаю, что он имеет то же значение, что и pages?

Для вопроса B это зависит от наличия у вас индексов или нет. И действительно сложно сказать, сколько фактических страниц заработал двигатель.

То же самое касается вашего вопроса C

+0

[кодовая страница] (https://en.wikipedia.org/wiki/Code_page) - это нечто совершенно другое. –

+0

Извините, я имел в виду 'page', испортил его с« кодовой страницей », пока я работаю над ssis xD – LONG

Смежные вопросы