Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Пример обработки распределенного запроса




Рассмотрим упрощенный вариант реляционной схемы приложения DreamНоmе,

включающий следующих три отношения:

Property (Pno, City) 10 000 записей, хранимых в Лондоне

Renter (Rno, Max_Price) 100 000 записей, хранимых в Глазго

Viewing (Pno, Rno) 1 000 000 записей, хранимых в Лондоне

 

Текст запроса: Получить список объектов недвижимости в Абердине, которые были осмот­рены потенциальными покупателями, согласными приобрести объекты недвижи­мости дороже 200 000 фунтов стерлингов.

SQL-запрос:

FROM property p INNER JOIN

(renter r INNER JOIN viewing v ON r.rno= v.rno)

ON p.pno = v.pno

WHERE p.city = ‘Aberden’ AND r.max_ rent >200000;

 

Для простоты предположим, что каждый кортеж в отношениях имеет длину, равную 100 символам, что существует только 10 покупателей, согласных приобрести недвижимость по цене больше 200 000 фунтов стерлингов, и что в городе Абердин было проведено 100 000 осмотров объектов недвижимости, Примем также, что время выполнения вычислений несущественно по сравнению с временем передачи данных, а скорость передачи данных по каналам связи составляет 10 000 символов в секунду, причем на каждое отправляемое между двумя сообщениями приходится задержка доступа, равная 1 секунде. Для определения времени передачи данных применялся следующий алгоритм:

Время передачи данных= С0 + количество бит сообщения/скорость передачи,

где С0 - задержка доступа. Это затраты времени на инициацию сообщения.

Стратегия 1. Переслать отношение renter в Лондон и выполнить там обработку запроса:

Время = 14(100 000 * 100/10 000) = 16,7 мин.

Стратегия 2. Переслать отношения Ргорегy и Vieving в Глазго и выполнить там обработку запроса:

Время = 2+[(1 000 000 + 10 000) * 100/10 000] = 28 час.

Стратегия 3. Соединить отношения Ргорегy и Vieving в Лондоне, выбрать кор­тежи для объектов недвижимости, расположенных в Абердине, а затем для каждого из отобранных кортежей проверить в Глазго, установил ли данный клиент значение потолка допустимой стои­мости недвижимости Мах_rent >200 000 фунтов стерлингов. Про­верка каждого кортежа предполагает отправку двух сообщений: запроса и ответа.

Время = 100 000 * (1-100/10 000) + 100 000 * 1 = 2.3 дня.

Стратегия 4. Выбрать в Глазго кортежи клиентов, установивших значение Мах_rent > 200 000 фунтов стерлингов, после чего для каждого из них проверить в Лондоне, осматривал ли этот клиент объекты не­движимости в Абердине. И в этом случае каждая проверка вклю­чает отправку двух сообщений.

Время = 10*(1-100/10 000) - 10* 1 = 20 сек.

Стратегия 5. Соединить отношения Ргорегtу и Vieving в Лондоне, выбрать сведе­ния об осмотрах объектов в Абердине, выполнить проекцию ре­зультирующей таблицы по атрибутам Pno и Rno, после чего пере­слать полученный результат в Глазго для отбора кортежей по ус­ловию Мaх_rent > 200 000 фунтов стерлингов. Для упрощения предположим, что длина кортежа после операции проекции также равна 100 символам.

Время = 1 + (100 000 * 100/10 000)= 16.7 мин.

Стратегия 6. Выбрать клиентов со значением атрибута Мах_rent > 200 000 фун­тов стерлингов в Глазго и переслать результирующую таблицу в Лондон для отбора сведений об осмотрах объектов недвижимости в

г. Абердин:

Время - 1 + (10 * 100/10 000) = 1 сек.

 

Как можно видеть, время ответа системы изменяется в диапазоне от 1 секунды до 2.3 дней, хотя каждая из предложенных стратегий является вполне кор­ректной и позволяет получить ответ на данный запрос! Вполне очевидно, что, если для выполнения запроса будет выбрана неподходящая стратегия, это может оказать крайне негативное влияние на уровень производительности системы.

 




Поделиться с друзьями:


Дата добавления: 2014-01-20; Просмотров: 388; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.01 сек.