Научная статья на тему 'ИНФОРМАЦИОННЫЕ И КОММУНИКАТИВНЫЕ ТЕХНОЛОГИИ NOSQL: ПРЕИМУЩЕСТВА И НЕДОСТАТКИ'

ИНФОРМАЦИОННЫЕ И КОММУНИКАТИВНЫЕ ТЕХНОЛОГИИ NOSQL: ПРЕИМУЩЕСТВА И НЕДОСТАТКИ Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
38
8
i Надоели баннеры? Вы всегда можете отключить рекламу.

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Косаев К.Е., Кременицкая Е.С.

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

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «ИНФОРМАЦИОННЫЕ И КОММУНИКАТИВНЫЕ ТЕХНОЛОГИИ NOSQL: ПРЕИМУЩЕСТВА И НЕДОСТАТКИ»

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

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

Первым человеком, который в 2013 опубликовал доказательства тайной глобальной слежки США, стал бывший агент ЦРУ и АНБ Эдвард Сноуден. Он разоблачил информацию о секретной программе слежки PRISM, которая позволяет Агентству национальной безопасности США получать доступ к электронной переписке, голосовым и видеопереговорам граждан страны в сети.

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

Кременицкая Е. С. студент 3 курса

кафедра «Информационные системы и технологии»

Косаев К.Е. научный руководитель Лениногорский филиал КНИТУ - КАИ им. Туполева

Россия, г. Лениногорск ИНФОРМАЦИОННЫЕ И КОММУНИКАТИВНЫЕ ТЕХНОЛОГИИ NOSQL: ПРЕИМУЩЕСТВА И НЕДОСТАТКИ

В статье рассматриваются преимущества и недостатки системы управления базы данных NoSQL.

NoSQL — термин, обозначающий ряд подходов, направленных на реализацию хранилищ баз данных, имеющих существенные отличия от моделей, используемых в традиционных реляционных СУБД с доступом к данным средствами языка SQL.

Применение

Применяется к базам данных, в которых делается попытка решить проблемы масштабируемости и доступности за счёт атомарности и

согласованности данных.

Характерные черты NoSQL

Map/Reduce - это подход к обработке больших объемов данных, который состоит из двух фаз: Map - предварительная обработка входных данных и Reduce - обработка тем или иным способом выборки, полученной на стадии Map. Map/Reduce не является свойством исключительно NoSQL-решений. Аналогичным образом можно работать с большими объемами данных и в РСУБД. Но большинство NoSQL-систем (за исключением, может быть, самых простых key-value хранилищ) реализуют Map/Reduce в том или ином виде. Преимущества такого подхода очевидны при соблюдении двух условий. Первое - фаза Map реализована так, что её можно запускать параллельно на нескольких узлах. Второе - Reduce позволяет принимать на вход не только результат выполнения Map, но и применения предыдущего Reduce. В качестве простого примера: допустим, у нас есть большая база данных покупателей, распределенная по нескольким узлам, и перед нами стоит задача посчитать среднюю сумму покупок в зависимости от возраста. Тогда в качестве Map будет функция, возвращающая для каждой записи БД структуру вида «возраст сумма покупки количество записей», где при выполнении первой фазы «количество записей» будет всегда равно единице. В качестве Reduce будет функция, складывающая «суммы покупок» и «количество записей» с группировкой по «возрасту». Таким образом, мы получим возможность запустить Map на нескольких узлах параллельно и получить предварительную выборку. Далее мы запускаем Reduce на нескольких узлах и подводим промежуточные результаты, а по итогам - тот же самый Reduce по финальному набору данных, собранному из промежуточных. Sharding (шардинг) - горизонтальное партиционирование1 - как и Map/Reduce, не является эксклюзивным свойством NoSQL, но большинство таких решений включает простой механизм партиционирования (в том числе автоматического). Например: шардинг данных пользователей по их географическому местоположению (случай, когда мы заранее выбираем ключ партиционирования) или автоматическое партиционирование по синтетическому идентификатору (когда стоит задача равномерно распределить данные по партициям).

Неструктурированный подход

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

Сравнение SQL и NoSQL систем управления базами данных

Стуруктуры данных и их типы - реляционные БД используют строгие

схемы данных, NoSQL БД допускают любой тип данных.

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

Масштабируемость - оба эти типа СУБД довольно легко поддаются вертикальному масштабированию (т.е. увеличение системных ресурсов). Тем не менее, так как NoSQL это более современный продукт, именно такие СУБД предлагают более простые способы горизонтального масштабирования (т.е. создание кластера из нескольких машин).

Надежность - когда дело доходит до сохранности данных и гарантии выполнения транзакций SQL БД по прежнему занимают лидирующие позиции.

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

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

Преимущества

Решения NoSQL отличаются не только проектированием с учётом масштабирования. Другими характерными чертами NoSQL-решений являются:

- Применение различных типов хранилищ.

- Возможность разработки базы данных без задания схемы.

- Использование многопроцессорности.

- Линейная масштабируемость (добавление процессоров увеличивает производительность).

- Инновационность: «не только SQL» открывает много возможностей для хранения и обработки данных.

- Сокращение времени разработки.

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

Недостатки

Но, несмотря на все перечисленные достоинства, архитектура баз данных NoSQL имеют некоторые недостатки. Основным из них является слабая синхронизация данных. Распределение данных по нескольким системам позволяет обрабатывать очень значительные объемы данных и получить более высокую пропускную способность. Тем не менее, эта

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

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

Использованные источники: 1. Ускова О.Ф. Программирование алгоритмов обработки данных Санкт-Петербург: БХВ - Петербург, 2003.

2. Ахаян Р.и др.Эффективная работа с СУБД -Санкт-Петербург.1997.

3. Тиори Т., Фрай Дж. Проектирование структур баз данных: В 2-х кн. Кн. 1. Пер. с англ. - М.: Мир, 1985. - 287с.

4. Чамберлин Д.Д., Астрахан М.М., Эсваран К.П., Грифитс П.П., Лори Р.А., Мел Д.В., Райшер П., Вейд Б.В. SEQUEL 2: унифицированный подход к определению, манипулированию и контролю данных //СУБД. - 1996. - №1. -С.144-159.

5. Чаудхари С. Методы оптимизации запросов в реляционных системах //СУБД. - 1998. - №3. - С.22-36.

6. Чен П. Модель "сущность-связь" - шаг к единому представлению о данных //СУБД. - 1995. - №3. - С.137-158.

Митенев Ю.А., к. пед. н. начальник отдела разработки и сопровождения информационных

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

i Надоели баннеры? Вы всегда можете отключить рекламу.