Интернет предоставляет пользователю более быстрый способ поиска информации в сравнении с традиционными. Поиск информации в 1Щегпе1 может быть произведен по нескольким методам, значительно различающимся как по эффективности и качеству поиска, так и по типу извлекаемой информации. В зависимости от целей и задач ищущего методы поиска информации в 1Щегпе1 используются по отдельности или в комбинации друг с другом.

1. Непосредственное обращение по 1ЖЬ. Простейший метод поиска, который подразумевает наличие адреса и сводится к обращению клиента к серверу определенного типа, т. е. отправки запроса с использованием определенного протокола.

Обычно этот процесс начинается после ввода адреса в соответствующей строке программы браузера или выборе описания адреса в окне просмотра.

При непосредственном обращении по адресу можно использовать сокращенную запись стандарта 1ЖЬ - опускать элементы по умолчанию. Например, опускать название протокола (выбирается протокол по домену нижнего уровня или берется сервис по умолчанию); опускать имя файла по умолчанию (зависит от конфигурации сервера) и последнего символа «/»; опускать имя сервера и использовать относительную адресацию имен каталогов.

Заметим, что этот метод является основой работы более сложных технологий, так как в результате сложных процессов все сводится к непосредственному обращению по адресу 1ЖЬ.

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

Следует заметить, что администраторы сети не ставят себе целью поместить полный набор ссылок по основной тематике своего сервера и постоянно следить за их правильностью, поэтому такой метод поиска не дает полноты и не гарантирует достоверности получения информации. Хотя этот полностью ручной метод поиска выглядит полным анахронизмом в сети, содержащей более 60 млн узлов, «ручной» просмотр УеЬ-страниц часто оказывается единственно возможным на заключительных этапах информационного поиска, когда механическое «копание» уступает место более глубокому анализу. Использование каталогов, классифицированных и тематических списков и всевозможных небольших справочников также относится к этому виду поиска.

3. Использование специализированных поисковых механизмов: поисковых машин, каталогов ресурсов, метапоиск, поиск людей, адресов телеконференции, поиск в файловых архивах и др.

Основная идея поисковых машин (серверов) - создание базы данных из слов, встречающихся в документах МегпеГ в которой при каждом слове будет храниться список документов, содержащих это слово. Поиск осуществляется в содержание документов. Документы, попадающие в ШетеГ регистрируются в поисковых машинах с помощью специальных программ и не требуют участия человека. Исходя из этого, мы получаем полную, но отнюдь не достоверную информацию.

Несмотря на обилие слов и словоформ в естественных языках, большинство из них употребляется нечасто, что было замечено ученым-лингвистом Ципфом еще в конце 40-х гг. XX в. К тому же наиболее употребительные слова - это союзы, предлоги и артикли, т. е слова, совершенно бесполезные при поиске информации. В результате словарь самой крупной поисковой машины 11й:епе1 АЙаУ^а имеет объем всего лишь несколько Гбайт. Поскольку все морфологические единицы в словаре упорядочены, поиск нужного слова может выполняться без последовательного просмотра. Наличие списков документов, в которых встречается искомое слово, позволяет поисковой машине выполнять операции с этими списками: их слияние, пересечение или вычитание.

Запрос поисковой машине может быть двух видов: простой и сложный.

При простом запросе указывается слово или набор слов не отделенных никакими знаками. При сложном запросе слова могут быть отделены друг от друга логическими операторами и их комбинациями. Эти операторы имеют приоритет.

От того, как сформулирован запрос, простой он или сложный, зависит правильность и количество выданных поисковой машиной документов.

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

К числу самых известных поисковых серверов можно отнести следущие: американские (AltaVista, Hot Bot, Lycos, Open Text, Mckinley, Excite, Cuiwww); русские (Yandex, Search, Aport, Tela, Rambler).

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

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

Существуют приемы, облегчающие поиск информации с помощью каталогов. Эти приемы носят название отсылка и ссылка и оба они применяются создателями каталогов в Internet. Вышеназванные приемы используются в ситуации, когда документ может быть отнесен к одному из нескольких разделов классификатора, а лицо, осуществляющее поиск, может не знать, к какому именно разделу.

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

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

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

Распространены следующие классификационные каталоги: европейские (Yellow Web, Euroseek); американские (Yahoo!, Magellan, Infoseek и др.); русские (WWW, Stars, Weblist, Rocit, Au).

Преимущество метапоиска перед поисковыми серверами и каталогами в том, что он представляет единый интерфейс или точку доступа к индексам Internet.

Выделяют два вида инструментов множественного доступа:

  • 1) службы множественного доступа из своих «начальных страниц» предоставляют меню с выбором поисковых средств. Популярность этих служб объясняется тем, что так много поисковых механизмов представлены в виде меню. Они допускают легкий переход от одного поискового средства к другому, не нужно ни запоминать URL-адреса, ни вводить их с клавиатуры в программу просмотра. Самые популярные службы множественного доступа All-in-One (http://www.allonesearch.com); С/Net (http://www.search, com); Internet Sleuth (http://isleuth.com);
  • 2) мета-индексы, часто называемые мульти- или интегрированными поисковыми службами, обеспечивают единую поисковую форму, в которой пользователь вводит поисковый запрос, посы-лаемыи в несколько поисковых механизмов одновременно, и отдельные результаты представляются единым списком. Этот тип службы представляет ценность, в случае если нужна максимальная выборка документов по какому-либо определенному предмету и когда документ уникален.

Еще одним достоинством мета-индекса является то, что результаты поиска каждого поискового механизма достаточно уникальны, т. е мета-индекс не выдает дважды повторяющиеся ссылки.

Главный недостаток этого поискового механизма в том, что он не позволяет использовать индивидуальные свойства различных механизмов поиска.

Самые популярные мета-индексы Beaucoup (http://www.bea coup.com); Следопыт (http://www.medialingua.ru/www/wwwsearc.htm).

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

До сих пор был рассмотрен поиск в основном гипертекстовых материалов. Однако с тем же успехом можно искать и другие ресурсы Internet. Для этого существуют как специализированные поисковые механизмы (осуществляющие поиск только однотипных ресурсов), так и «обыкновенные» поисковые механизмы, предлагающие дополнительные возможности поиска не гипертекстовых документов.

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

В результате использования поисковый механизм должен выдать URL-адрес электронной почты (e-mail) нужного человека.

Основные персональные каталоги: Кто Где (http://www. whowhere.com); Народ Яху (http://yahoo.com/search/people); Four 11 (http://www.four 1 l.com).

Специализированных поисковых механизмов, осуществляющих поиск URL-адресов конференций, не так уж и много, в частности, это DejaNews (http://www.dejanews.com -самая изощренная система поиска в телеконференциях (Usenet). Она характеризуется обилием возможностей расширенного поиска, имеет полезные фильтры для «очистки» результата, формально-логический синтаксис запросов и возможность поиска файлов.

Многие поисковые механизмы предоставляют возможность поиска конференций как дополнительную услугу (Yahoo!, Alta Vista, Anzwers, Galaxy, Info Seek и др.). В режим поиска конференций можно войти с помощью кнопки Usenet.

Поиск в файловых архивах. Internet содержит огромное количество ресурсов. Немалую их часть составляют файловые архивы на FTP-серверах. Для их поиска применяются специализированные поисковые механизмы. Регистрация файлов происходит с помощью специальных программ, причем индексируются имена файлов.

Некоторые неспециализированные поисковые механизмы также предоставляют возможность поиска в файловых архивах. Например, введя в AltaVista запрос search.ftp, мы получим ссылки на сервера, специализирующиеся на поиске файлов на FTP-архи-вах. В результате использования поисковый механизм должен выдать U RL-адрес файла.

Основные поисковые механизмы в файловых архивах: Archie (http://archie.de); Filez (http://www.filez.com); FFP-Search (http:// ftpsearch.city.ru).

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

Изучите 10 основных принципов поисковой оптимизации сайтов

Монитор, за которым вы находитесь

Вы не будете знать, насколько продвижение сайта эффективно, если вы не контролируете позиции поиска. MarketingVox предлагает вам прослеживание за своим PR (Page Rank) с такими инструментами как Alexa и панель инструментов Google.
Также важно проверять, откуда пользователи приходят на ваш сайт, какие поисковые фразы используют. С этой задачей отлично справляется Яндекс Метрика.

Ключевые слова, ключевые слова, ключевые слова!

Вы должны осознано подбирать соответствующие ключевые слова для каждого аспекта Вашего сайта: title (заголовок), статья, URL и подпись к картинкам. Размышляйте при подборе ключевых словах следующим образом - будет ли полезна информация с моего сайта пользователю?
Тег title и заголовок страницы - два самых важных места, куда нужно вставить ключевые слова.
ПРЕДОСТЕРЕЖЕНИЕ: При использовании большого количества ключевых слов поисковые системы могут пометить вас как спамера и применить против вашего сайта санкции, вплоть до его исключения из поисковой системы. Придерживайтесь определённой стратегии при подборе ключевых слов.

Создайте карту сайта.

Добавление карты сайта - облегчает для поисковых систем поиск страниц сайта.
"Чем меньше кликов, необходимых для того, чтобы добраться до страницы Вашего веб-сайта, тем лучше", советует MarketingVox.

Благоприятные для поиска URLs адреса.

Сделайте URL более благоприятными для поисковой системы, используя в названии ключевые слова

Описание изображения.

Роботы могут искать только текст, а не текст в изображениях - именно поэтому Вы должны сделать слова связанные с Вашими изображениями максимально информативными.
Начните с названия изображения: добавление тега "ALT" позволяет Вам включать ключевые слова в описание каждого изображения веб-ресурса. Видимый текст вокруг ваших изображений важен для SEO.

Контент.

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

Социальная медиа дистрибуция

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

Внешняя перелинковка

Легкий способ направить больше трафика на на свой web-ресур - развивать отношения с другими сайтами.
PC World предлагает, чтобы Вы лично договорились с веб-мастерами уважаемых сайтов, чтобы они разместили на своём сайте ссылку на нужный ресурс.
Удостоверьтесь, что у Вашего партнера есть хорошая веб-репутация, конечно. Не связываейтесь с сайтом, который обладает плохой репутацией, а то могут ухудшиться результаты поисковой оптимизации вашего сайта.

Привет, Друзья! В этой статье мы разберём основные понятия и принципы SEO влияющие на в поисковых системах Яндекс и Google. Итак поехали!

Основные принципы поисковой оптимизации SEO

Важность гостевого постинга

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

Создание благоприятной атмосферы на веб-ресурсе для пользователей

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

Главный элемент любого веб-ресурса - размещение качественного контента

На этом сегодня всё, всем удачи и до новых встреч!

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

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

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

SEO начинающим: основы оптимизации и продвижения для начинающих

Что такое SEO (search engine optimization)

SEO (англ. Search Engine Optimization ) или просто поисковая оптимизация - это комплекс способов и методов, предназначенных для задействования и усиления всех положительных (как внутренних так и внешних) факторов которые берутся в расчет алгоритмами поисковых систем для определения позиций каждой страницы в результатах поиска по нужным словам (поисковым запросам).

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

Белое и черное SEO

Не все приемы поисковой оптимизации считаются дозволенными и одобряются поисковиками, те из них которые являются запрещенными включает в себя черное SEO.
К этим приемам относятся такие как:

  • Невидимый для посетителей, предназначенный поисковым системам текст и ссылки. Например: белый текст на белом фоне.
  • Клоакинг и яваскрипт редиректы: поисковые боты видят одно содержимое страниц, а пользователи совершенно другое или перенаправляются на другую страницу
  • Дорвеи: страницы напичканные ключевыми словами

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

Что включает в себя понятие SEO

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

  1. Внутреннюю оптимизацию (on-page SEO) сайта или конкретной страницы
  2. и внешнее продвижение (off-page SEO).

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

Внутренняя оптимизация сайта

Внешнее продвижение сайта

Внешнее поисковое продвижение - самый последний этап поисковой оптимизации. Под внешним продвижением обычно подразумевают получение входящих ссылок с других сайтов () на продвигаемые страницы. Как правило, чем больше страниц различных сайтов ссылаются на вашу тем значимей она становится в глазах поисковиков, Самыми важными аспектами внешнего SEO являются:

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

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

  • Размещение статей в (очень мало действительно достойных русскоязычных каталогов)
  • Взаимный обмен ссылками (постовыми) с сайтами схожей тематики (тут главное знать меру и ни в коем случае не участвовать в системах по обмену).
  • Размещение - самый эффективный способ получения прямых тематических ссылок, которые не только повысят позиции, но и будут приводить на ваш сайт посетителей. Количество оных будет прямо пропорционально и полезности вашей статьи.
1

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

оптимизация запросов

методы оптимизации поиска

облачные базы данных

облачные вычисления

1. Никульчев Е.В. Динамическое управление трафиком программно-конфигурируемых сетей в облачной инфраструктуре / Е.В. Никульчев, С.В. Паяин, Е.В. Плужник // Вестник Рязанского радиотехнического университета. – 2003. - № 3. - C.54-57.

2. Никульчев Е.В. Использование групп симметрий для идентификации сложных систем / Е.В. Никульчев // Вычислительные технологии.- 2004.- Т. 9. - № 3.- С. 72-80.

3. Никульчев Е.В. Построение модели загрузки каналов связи в сетях передачи данных на основе геометрического подхода / Е.В. Никульчев, С.В. Паяин // Известия высших учебных заведений. Проблемы полиграфии и издательского дела.- 2008. - № 6.- С. 91–95.

4. Плужник Е.В. Слабоструктурированные базы данных в гибридной облачной инфраструктуре / Е.В. Плужник, Е.В. Никульчев // Современные проблемы науки и образования. 2013.- № 4. URL: www.. Дата обращения: 15.10.2013.

5. Плужник Е.В. Функционирование образовательных систем в гибридной облачной инфраструктуре / Е.В. Плужник, Е.В. Никульчев // Известия вузов. Проблемы полиграфии и издательского дела. 2013. - № 3. - С. 96-105.

6. Fegaras L. An Optimization Framework for Map-Reduce Queries / L. Fegaras, C. Li, U. Gupta // Proc. of the 15th International Conference on Extending Database Technology. – ACM, 2012. – P. 26-37.

7. Jahani E. Automatic optimization for MapReduce programs / E. Jahani, M. J. Cafarella, C. Ré // Proceedings of the VLDB Endowment. – 2011. – V. 4. - N. 6. – P. 385-396.

8. Jurczyk P. Dynamic query processing for p2p data services in the cloud / P. Jurczyk, L. Xiong //Database and Expert Systems Applications. – Springer Berlin Heidelberg, 2009. – P. 396-411.

9. Lemmon M. D. Towards a passivity framework for power control and response time management in cloud computing // In Proc. of 7th Intl. Workshop on Feedback Computing, San Jose, CA.. 2012.

10. Wang X. A Decentralized Virtual Machine Migration Approach of Data Centers for Cloud Computing / X. Wang, X. Liu, L. Fan, X. Jia // Mathematical Problems in Engineering [Электронный журнал]. – 2013. – V. 2013. - Режим доступа: http://www.hindawi.com/journals/mpe/2013/878542/ , свободный. - Дата обращения 15.10.2013.

11. Zhang G. Massive Data Query Optimization on Large Clusters / G. Zhang, Chao LI, Yong Zhang, Chunxiao Xing. // Journal of Computational Information Systems. - 2012. – V. 8. – С. 3191–3198.

Введение

Существует множество определений термина «оптимизация запросов», наиболее часто встречающееся в литературе звучит следующим образом: под оптимизацией запросов понимается функция СУБД, осуществляющая поиск оптимального плана выполнения запросов из всех возможных для заданного запроса, либо процесс изменения запроса и/или структуры баз данных (БД) с целью уменьшения использования вычислительных ресурсов при выполнении запроса.

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

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

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

1. Оптимизация запросов в облачных БД SQL типа

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

Стандартные SQL запросы используют соединения (join), выборку (select), проекции (projections), группировки (group-by).

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

Рис. 1. Архитектура системы, основанной на SQL запросах

Ключевые принципы указанной архитектуры состоят в следующем:

1. Все файлы хранятся в локальной файловой системе (например, файловая система Windows, Linux и т.д.).

2. Облачная БД предназначена для хранения и управления огромными массивами файлов индекса и метаданных. При этом следует отметить, что облачная база данных со всем содержимым развернута поверх распределенной файловой системы.

3. Ввод запросов и получение результатов выполняется посредством пользовательского веб-интерфейса.

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

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

2. Оптимизация запросов в облачных базах данных NoSQL типа

Модель программирования map-reduce (MR) — популярная платформа для облачных вычислений, которая позволяет выполнять анализ больших объемов данных в облаке. MR облегчает параллельное выполнение специальных, длительных задач анализа больших объемов данных в кластере с shared-nothing архитектурой. Основная идея модели MR проста. Каждая задача MR представляется в виде map и reduce задания. Задание map указывает, каким образом будет обрабатываться пары ключ/значение для создания набора промежуточных пар, в то время как задание reduce определяет, как объединить все промежуточные значения, связанные одним промежуточным. Ядро MR для хранения и репликации данных использует распределенную файловую систему (DFS).

В основе подхода, предложенного в , лежит использование алгебры запросов и применение некоторых операторов высшего порядка, которые реализованы в существующих map-reduce системах (например, Hadoop). Отметим, что предлагаемый подход в первую очередь ориентирован на использование с языком MRQL. В отличие от других существующих map-reduce языков, таких как HiveQL и PigLatin, которые позволяют создавать скрипты с использованием недекларативных языков, MRQL достаточно выразителен и позволяет писать собственные скрипты для значительного круга задач в декларативной форме и в то же время поддается оптимизации.

Как и в случае с реляционными базами данных, целью оптимизации MRQL запросов является нахождение оптимального плана исполнения. Алгоритм оценки плана исполнения MRQL запроса состоит из следующих шагов:

1) Упрощение запроса.

2) Построение графа запроса.

3) Представление графа запроса в алгебраической форме.

4) Формирование карты алгебраической формы для оценки и улучшения плана с использованием методом алгебраической оптимизации.

5) Создание функции MR сочетания на основе MR функции reduce.

Достоинством данного подхода является то, что разработанные алгоритмы реализованы в виде фреймворка, исходный код которого находится в свободном доступе. При этом проект на данный момент активно развивается.

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

Manimal состоит из трех основных компонентов, которые позволяют полностью автоматизировать процесс оптимизации map-reduce программ. Анализатор рассматривает представленные пользователем map-reduce программы и отправляет оптимизатору полученный в результате дескриптор оптимизации. Оптимизатор использует дескриптор оптимизации с предварительно вычисляемыми параметрами, хранящимися в определенном каталоге, для того, чтобы выбрать оптимальный план исполнения, результатом является дескриптор исполнения. Этот дескриптор вместе с копией оригинальной программы отправляется фабрике исполнения. Отметим, что фабрика исполнения сохраняет стандартную map-shuffle-reduce последовательность.

Согласно Manimal для оптимизации использует три различных подхода:

1) Оптимизация выборки (selection). Выборки в коде являются результатом выполнения функции map(), которая отрабатывает только при определенных условиях, налагаемых на связанные параметры. Как и в случае с реляционной выборкой, не имеет смысла обрабатывать данные, не удовлетворяющие налагаемым условиям, любой вызов функции map() для таких данных будет бессмысленным. Как в случае реляционной выборки, оптимизация может быть выполнена с помощью B-деревьев. Существенным достижением Manimal является то, что система может автоматически определять выборки, удовлетворяющие условиям, описанным выше.

2) Оптимизация проекции (projection). Оптимизация проекций изменяет файлы данных на диске таким образом, чтобы хранились только байты, которые действительно необходимы для выполнения пользовательского кода. Сжатие исходного файла путем удаления неиспользуемых в работе полей сократит объем файла и позволит его обработать.

3) Оптимизация сжатия данных. Сжатие данных отличается от поддерживаемого в Hadoop сжатия. Hadoop хранит на диске сжатые версии входных данных и их промежуточные образы. Распаковка выполняется непосредственно перед функциями map() и reduce(). При этом Hadoop использует единую методику сжатия данных для всех файлов, в то время как Manimal позволяет использовать две семантически связанные формы сжатия: дельта-сжатие и работу непосредственно со сжатыми данными.

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

3. Архитектурно-зависимые решения

Децентрализованное управление миграцией виртуальных машин в крупномасштабных центрах облачной обработки предложено в . Основной интерес указанного подхода заключается в том, что его целью является балансировка нагрузки на оборудование посредством миграции виртуальных машин в облачном окружении, что опосредованно приводит к повышению качества поиска (очевидно, что скорость, с которой «облако» отвечает на запросы пользователя, является одним из критериев качества поиска).

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

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

Рис. 2. Децентрализованный обмен индексом загруженности.

Индекс загруженности узла представляет собой кортеж следующего вида:

LI = ,

где src - идентификатор узла, откуда был получен индекс, dest - содержит идентификатор узла, который получит индекс, util - использование процессора узлом-источником (src).

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

1. Когда использование ЦПУ превышает определенный уровень (верхний порог). Целью установления верхнего порога является сохранение дополнительных вычислительных мощностей на случай возникновения ситуаций с резким (незапланированным) повышением нагрузки.

2. Когда использование ЦПУ ниже определенного уровня (нижний порог) - узел используется недостаточно. Цель установления нижнего порога состоит в том, чтобы по возможности большее число физических узлов было переведено в «спящий» режим, что позволит снизить энергопотребление.

После того, как принято решение о миграции виртуальной машины, стартует поиск узла назначения . Для этого выполняется обход вектора загруженности текущего узла с целью обнаружения узла с наименьшим потреблением ЦПУ при условии попадания в заданные интервалы. Если такой узел обнаружить не удается, выполняется поиск такого узла, индекс загруженности которого при переносе на него выбранной ВМ не превышает нижней границы загруженности. Если же и в этом случае поиск не дает результатов, один из узлов, находящихся в «спящем» режиме, переводится в активное состояние и выполняется миграция.

Следует отметить, что недостатками рассматриваемого подхода является:

1. Описываемые в алгоритмы (псевдокоды) не гарантируют обязательности выбора ВМ для миграции даже при условии необходимости в этом и наличии свободных физических узлов.

2. Не рассматривается оптимальность выбора ВМ для миграции.

3. Поиск целевого узла осуществляется не на всем наборе узлов (согласно описанию подхода).

4. Не говорится о том, как часто выполняется проверка необходимости миграции.

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

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

В работе рассматривается схема исполнения и оптимизации динамических распределенных запросов в облачных пиринговых сетях (рис. 3), авторами также разработан фреймворк (DObjects) для работы с p2p-сетями.

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

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

Рис. 3. Архитектура облачной пиринговой (p2p) сети.

Исполнение и оптимизация запроса состоит из нескольких основных этапов:

1. В момент получение узлом запроса от пользователя генерируется высокоуровневый план исполнения.

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

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

Заключение

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

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

Рецензенты:

Винокур А.И., д.т.н., профессор, директор института принтмедиа и информационных технология ФГБОУ ПВО Московский государственный университет печати имени Ивана Федорова, г. Москва.

Никульчев Е.В., д.т.н., профессор, проректор по научной работе НОУ ВПО Московский технологический институт «ВТУ», г. Москва.

Библиографическая ссылка

Леонов Д.В. МЕТОДЫ ОПТИМИЗАЦИИ ПОИСКА В ОБЛАЧНЫХ БАЗАХ ДАННЫХ // Современные проблемы науки и образования. – 2013. – № 5.;
URL: http://science-education.ru/ru/article/view?id=10654 (дата обращения: 20.08.2019). Предлагаем вашему вниманию журналы, издающиеся в издательстве «Академия Естествознания»