МОДИФИКАЦИЯ ДЕРЕВЬЕВ РАЗБОРА ДЛЯ ПАРАЛЛЕЛЬНОГО ИСПОЛНЕНИЯ ЗАПРОСА В СУБД > Полезные советы
Тысяча полезных мелочей    

МОДИФИКАЦИЯ ДЕРЕВЬЕВ РАЗБОРА ДЛЯ ПАРАЛЛЕЛЬНОГО ИСПОЛНЕНИЯ ЗАПРОСА В СУБД

МОДИФИКАЦИЯ ДЕРЕВЬЕВ РАЗБОРА ДЛЯ ПАРАЛЛЕЛЬНОГО ИСПОЛНЕНИЯ ЗАПРОСА В СУБД

Локшин М.В. Статья в формате PDF 115 KB

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

Рассмотрим систему, обеспечивающую работу распределенной СУБД и состоящей из N серверов. Предположим, что пользователь может отправить запрос на языке SQL к любому из N серверов и получить один и тот же ответ от всех серверов (на момент начала исполнения запроса). Такую работу системы можно организовать, к примеру, с использованием одного из методов репликации данных (всей базы, или только части таблиц). В этих условиях возможно создание системы обеспечивающей параллельную обработку SQL запросов, принцип работы которой описан в [1].

Из [2] известно, что схема начальной стадии компиляции запроса состоит из четырех этапов: запрос (текстовое представление) - синтаксический анализатор - препроцессор - генератор логического плана запроса - переписчик логического плана запроса. Дополним эту схему двумя этапами - синтаксический анализатор параллельного запроса и препроцессор параллельного запроса, которые будут предшествовать четырем классическим этапам компиляции. Препроцессор параллельного запроса, в отличие от классической схемы (где он предназначен для замены обозначений деревьями разбора и семантического контроля), в предлагаемой новой схеме модифицирует дерево запроса с целью выделения поддеревьев запроса пригодных для параллельного исполнения. В результате его работы формируется набор новых запросов, обработка которых, в дальнейшем, строится по классической схеме. Преобразования деревьев разбора запроса проводятся препроцессором с использованием заранее известного набора правил, с целью получения эквивалентного запроса. В некоторых случаях после проведения преобразований могут потребоваться дополнительные операции над наборами отношений, возвращаемых запросами.

Под эквивалентностью двух запросов здесь и далее мы будем понимать такие запросы, в результате исполнения которых формируются одинаковые во всех атрибутах кортежей отношения с точностью до порядка следования кортежей, если не задана инструкция сортировки, и с учетом порядка следования в противном случае.

Очевидно, что некоррелированные запросы допускают параллельное исполнение, поэтому все получившиеся подзапросы в дереве разбора запроса могут быть вычислены независимо. Следует заметить, что в общем случае дальнейшее вычисление запроса согласно дереву разбора можно проводить только при получении результатов всех нижестоящих подзапросов и выражений.

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

1. Правило преобразования должно из исходного формировать новый запрос, содержащий заранее заданное число некоррелированных подзапросов.

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

3. На верхних уровнях дерева разбора запроса преобразование должно оставлять наиболее «дешевые» операции. Под термином «дешевые» здесь подразумеваются операции, для реализации которых не требуется обработки большого количества записей, так как, к примеру, при их вычислении уже будет невозможно воспользоваться информацией содержащейся в индексах.

4. Преобразование, по возможности, не должно увеличивать объем отношений, получающихся при вычислении подзапросов, для того, чтобы исключить передачу больших объемов данных между узлами системы. Большие объемы таких передач могут серьезно замедлить исполнение запроса и уменьшить выигрыш от параллельного исполнения запроса.

СПИСОК ЛИТЕРАТУРЫ

  1. М. В. Локшин, О.Я. Кравец. Построение систем для параллельной обработки запросов к СУБД. // Телематика´2004: Труды XI Всероссийской научно-методической конференции (7-10 июня 2004). -СПб:ИТМО. 2004. С. 94-95.
  2.  Гарсиа-Молина Г., Ульман Д., Уидом Д. Системы баз данных. Полный курс. -М. «Вильямс», 2003. - 1088 С.


ЦИФРОВОЙ МОДЕМ ДЛЯ СЕТИ ISDN

ЦИФРОВОЙ МОДЕМ ДЛЯ СЕТИ ISDN Статья в формате PDF 297 KB...

01 02 2025 6:45:41

ИЗМЕНИЯ ИНДЕКСОВ, ХАРАКТЕРИЗУЮЩИХ РЕЗИСТЕНТНОСТЬ ОРГАНИЗМА, У БОЛЬНЫХ, ОПЕРИРОВАННЫХ НА ПОВРЕЖДЕННОЙ СЕЛЕЗЕНКЕ, В БЛИЖАЙШЕМ ПОСЛЕОПЕРАЦИОННОМ ПЕРИОДЕ

ИЗМЕНИЯ ИНДЕКСОВ, ХАРАКТЕРИЗУЮЩИХ РЕЗИСТЕНТНОСТЬ ОРГАНИЗМА, У БОЛЬНЫХ, ОПЕРИРОВАННЫХ НА ПОВРЕЖДЕННОЙ СЕЛЕЗЕНКЕ, В БЛИЖАЙШЕМ ПОСЛЕОПЕРАЦИОННОМ ПЕРИОДЕ Проведено ретроспективное изучение историй болезней 71 пациента, оперированных по поводу закрытой травмы селезенки.Из общего количества оперированных пациентов спленэктомия была выполнена 25 пациентам, 26 – спленэктомия была дополнена аутолиентрaнcплантаций путем пересадки кусочков селезенки размером 1,5 см3 в ткань большого сальника, а 20 больным были выполнены органосохраняющие операции с использованием лазерной техники. Изучение исследуемых показателей проводили в момент поступления больных, на первые, третьи, пятые, седьмые и десятые послеоперационные сутки. Группу сравнения составили 46 относительно здоровых добровольцев того же возраста и пола. Лейкоцитарный индекс интоксикации рассчитывали по формуле предложенной В.К. Островским и Ю.М. Свитич. Кроме того определялись лейкоцитарный индекс интоксикации по индексу Я.Я. Кальф-Калифа, а так же индекс резистентности организма и индекс сдвига лейкоцитов крови. В результате проведенного исследования установлено, чтоизменения индексов хаpaктеризующих резистентность организма, у пациентов оперированных на поврежденной селезенке, в ближайшем послеоперационном периоде зависят не от хаpaктера выполненной операции, а от послеоперационных суток. В тоже время в отдаленном послеоперационном природе прослеживается взаимосвязь между хаpaктером выполненной операции и изменениями индексов хаpaктеризующих резистентность организма. ...

27 01 2025 1:32:10

ОПЕРЕЖАЮЩЕЕ АНТИКРИЗИСНОЕ УПРАВЛЕНИЕ ПРЕДПРИЯТИЕМ

ОПЕРЕЖАЮЩЕЕ АНТИКРИЗИСНОЕ УПРАВЛЕНИЕ ПРЕДПРИЯТИЕМ В статье исследованы некоторые проблемы опережающего антикризисного управления предприятием. ...

25 01 2025 13:50:18

ХИМИЧЕСКИЙ СОСТАВ МЫШЕЧНОЙ ТКАНИ ВЕСЛОНОСА

ХИМИЧЕСКИЙ СОСТАВ МЫШЕЧНОЙ ТКАНИ ВЕСЛОНОСА Статья в формате PDF 271 KB...

24 01 2025 16:26:26

ЗНАЧИМОСТЬ СОЦИАЛЬНО ГЕНЕТИЧЕСКИХ ФАКТОРОВ В ФОРМИРОВАНИИ ЗДОРОВЬЯ СЕЛЬСКОГО НАСЕЛЕНИЯ РЕСПУБЛИКИ БАШКОРТОСТАН

ЗНАЧИМОСТЬ СОЦИАЛЬНО ГЕНЕТИЧЕСКИХ ФАКТОРОВ В ФОРМИРОВАНИИ ЗДОРОВЬЯ СЕЛЬСКОГО НАСЕЛЕНИЯ РЕСПУБЛИКИ БАШКОРТОСТАН Артериальная гипертония является одним из главных факторов риска атеросклероза и ишемической болезни сердца (ИБС). Путем сплошного скрининга двух сельских районов проведен анализ распределения показателей артериального давления (АД) в популяции. Исследован хаpaктер питания как фактор риска развития атеросклероза. Был проведен поиск генетических маркеров указанных заболеваний. Показано, что факторами пониженного риска ИБС является носительство аллелей гена АроВ30 и АроВ34, а носительство аллеля е4 АроЕ, аллеля Д и генотипа ДД - факторы повышенного риска данной патологии. ...

17 01 2025 9:47:25

ОБЩИЙ КЛИНИЧЕСКИЙ АНАЛИЗ КРОВИ КАК МЕТОД ОПРЕДЕЛЕНИЯ ПОСТСТРЕССОРНОЙ РЕАБИЛИТАЦИИ

ОБЩИЙ КЛИНИЧЕСКИЙ АНАЛИЗ КРОВИ КАК МЕТОД ОПРЕДЕЛЕНИЯ ПОСТСТРЕССОРНОЙ РЕАБИЛИТАЦИИ В предложенной работе экспериментально доказано, что при хроническом стрессе, при нарушенном равновесии симпатического и парасимпатического отделов нервной системы, количество клеток периферической крови, изменяясь, не выходит за пределы нормы. Вегетативный баланс хаpaктеризуется средним арифметическим границ нормальных показателей. Общий клинический анализ крови является показателем функционального состояния и может быть предложен как метод, определяющий эффективность проводимого лечения в постстрессорной реабилитации. ...

11 01 2025 7:12:42

Использование углубленных интеграционных методов исследования в изучении роли энергии геннообусловленных патологий

Использование углубленных интеграционных методов исследования в изучении роли энергии геннообусловленных патологий Статья посвящена использованию углубленных интеграционных методов исследования в изучении роли энергии геннообусловленных патологий, влиянию изменения структуры в цепи ДНК на ее энерговоспринимаемость, энергопроводимость, энергоотдаваемость, энергонакопляемость по цепи ДНК и на развитие геннообусловленных патологий, прежде всего, на развитие злокачественных опухолей. ...

02 01 2025 1:44:15

ОПТИМИЗАЦИЯ UTRA АЛГОРИТМА МЯГКОГО ХЭНДОВЕРА СЕТИ WCDMA

Статья в формате PDF 221 KB...

30 12 2024 22:32:13

Коммуникация молодежи в повседневной жизни

Коммуникация молодежи в повседневной жизни Статья в формате PDF 250 KB...

29 12 2024 5:21:36

Еще:
Поддержать себя -1 :: Поддержать себя -2 :: Поддержать себя -3 :: Поддержать себя -4 :: Поддержать себя -5 :: Поддержать себя -6 :: Поддержать себя -7 :: Поддержать себя -8 :: Поддержать себя -9 :: Поддержать себя -10 :: Поддержать себя -11 :: Поддержать себя -12 :: Поддержать себя -13 :: Поддержать себя -14 :: Поддержать себя -15 :: Поддержать себя -16 :: Поддержать себя -17 :: Поддержать себя -18 :: Поддержать себя -19 :: Поддержать себя -20 :: Поддержать себя -21 :: Поддержать себя -22 :: Поддержать себя -23 :: Поддержать себя -24 :: Поддержать себя -25 :: Поддержать себя -26 :: Поддержать себя -27 :: Поддержать себя -28 :: Поддержать себя -29 :: Поддержать себя -30 :: Поддержать себя -31 :: Поддержать себя -32 :: Поддержать себя -33 :: Поддержать себя -34 :: Поддержать себя -35 :: Поддержать себя -36 :: Поддержать себя -37 :: Поддержать себя -38 ::