КАТЕГОРИИ: Архитектура-(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; Просмотров: 407; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |