ВУЗ:
Составители:
Рубрика:
30
Лекция 3. Проблемы распределенных систем
Ниже более подробно описываются некоторые уже упомянутые проблемы. Основная
проблема информационных сетей, по крайней мере глобальных, заключается в том, что
они достаточно медленны. В типичной глобальной сети интенсивность обмена данными
равна приблизительно 5 или 10 тыс. байт в секунду, а для обычного жесткого диска
интенсивность обмена данными - около 5 или 10.млн байт в секунду. (С другой стороны, в
локальных вычислительных сетях уже может поддерживаться скорость обмена данными,
сравнимая с интенсивностью обмена на жестких дисках.) Вследствие этого основным
требованием к распределенным системам является минимизация использования сети, т.е.
сокращение до минимума количества и объема пересылаемых в сети сообщений.
Стремление к достижению-этой цели приводит, в свою очередь, к необходимости
решения перечисленных ниже проблем (хотя перечень всех проблем не исчерпывается
этим списком).
• Обработка запросов.
• Управление каталогом.
• Распространение обновления.
• Управление восстановлением.
• Управление параллелизмом.
Обработка запросов
При минимизации использования сети предполагается, что сама по себе
оптимизация запроса, как и его исполнение, должна быть распределенной. Иначе говоря,
общий процесс оптимизации обычно состоит из этапа глобальной оптимизации, который
сопровождается несколькими этапами локальной оптимизации. Например, допустим, что
запрос Q задан на узле X и включает объединение отношения R
у
, содержащего сто
кортежей на узле Y, и отношения R
z
, содержащего миллион кортежей на узле Z .
Оптимизатор на узле X выберет глобальную стратегию для выполнения запроса Q, при
этом, очевидно, лучше переместить отношение R
y
на узел Z, а не отношение R
z
на узел Y
(и конечно же, не следует перемещать оба отношения R
y
и R
z
на узел X. Тогда сразу после
перемещения отношения R
y
на узел Z стратегия выполнения объединения на узле Z будет
выбрана локальным оптимизатором на узле Z.
Проиллюстрируем изложенные идеи. Рассмотрим базу данных поставщиков и
деталей (упрощенный вариант):
S { S#, CITY } 10 000 хранимых кортежей на узле A
Р { P#, COLOR } 100 000 хранимых кортежей на узле В
SР { S#, P# } 1 000 000 хранимых кортежей на узле А
Предполагается, что каждый хранимый кортеж имеет размер 25 байт (200 бит).
Запрос "Получить сведения о находящихся в Лондоне (London) поставщиках
красных (Red) деталей:
S.S# WHERE EXISTS SP EXISTS Р ( S.CITY = 'London' AND
S.S# = SP.S# AND
SP.P# = P.P# AND
P.COLOR = 'Red' )
Оценочные границы промежуточных результатов:
Число красных деталей = 10
Число поставок, выполняемых поставщиками из Лондона = 100 000
Лекция 3. Проблемы распределенных систем
Ниже более подробно описываются некоторые уже упомянутые проблемы. Основная
проблема информационных сетей, по крайней мере глобальных, заключается в том, что
они достаточно медленны. В типичной глобальной сети интенсивность обмена данными
равна приблизительно 5 или 10 тыс. байт в секунду, а для обычного жесткого диска
интенсивность обмена данными - около 5 или 10.млн байт в секунду. (С другой стороны, в
локальных вычислительных сетях уже может поддерживаться скорость обмена данными,
сравнимая с интенсивностью обмена на жестких дисках.) Вследствие этого основным
требованием к распределенным системам является минимизация использования сети, т.е.
сокращение до минимума количества и объема пересылаемых в сети сообщений.
Стремление к достижению-этой цели приводит, в свою очередь, к необходимости
решения перечисленных ниже проблем (хотя перечень всех проблем не исчерпывается
этим списком).
• Обработка запросов.
• Управление каталогом.
• Распространение обновления.
• Управление восстановлением.
• Управление параллелизмом.
Обработка запросов
При минимизации использования сети предполагается, что сама по себе
оптимизация запроса, как и его исполнение, должна быть распределенной. Иначе говоря,
общий процесс оптимизации обычно состоит из этапа глобальной оптимизации, который
сопровождается несколькими этапами локальной оптимизации. Например, допустим, что
запрос Q задан на узле X и включает объединение отношения Rу, содержащего сто
кортежей на узле Y, и отношения Rz, содержащего миллион кортежей на узле Z .
Оптимизатор на узле X выберет глобальную стратегию для выполнения запроса Q, при
этом, очевидно, лучше переместить отношение Ry на узел Z, а не отношение Rz на узел Y
(и конечно же, не следует перемещать оба отношения Ry и Rz на узел X. Тогда сразу после
перемещения отношения Ry на узел Z стратегия выполнения объединения на узле Z будет
выбрана локальным оптимизатором на узле Z.
Проиллюстрируем изложенные идеи. Рассмотрим базу данных поставщиков и
деталей (упрощенный вариант):
S { S#, CITY } 10 000 хранимых кортежей на узле A
Р { P#, COLOR } 100 000 хранимых кортежей на узле В
SР { S#, P# } 1 000 000 хранимых кортежей на узле А
Предполагается, что каждый хранимый кортеж имеет размер 25 байт (200 бит).
Запрос "Получить сведения о находящихся в Лондоне (London) поставщиках
красных (Red) деталей:
S.S# WHERE EXISTS SP EXISTS Р ( S.CITY = 'London' AND
S.S# = SP.S# AND
SP.P# = P.P# AND
P.COLOR = 'Red' )
Оценочные границы промежуточных результатов:
Число красных деталей = 10
Число поставок, выполняемых поставщиками из Лондона = 100 000
30
Страницы
- « первая
- ‹ предыдущая
- …
- 28
- 29
- 30
- 31
- 32
- …
- следующая ›
- последняя »
