ТОП-10 систем управления базами данных в 2019 году
Умение выбрать СУБД важно при разработке любого ПО. Мы собрали 10 систем управления базами данных и разобрались в их преимуществах.
Популярные системы управления базами данных
Разработчик | Лицензия | Написана на | |
Oracle | Oracle Corporation | Проприетарная | Assembly, C, C++ |
MySQL | Oracle Corporation | GPL v2 или проприетарная | C, C++ |
Microsoft SQL Server | Microsoft Corporation | Проприетарная | C, C++ |
PostgreSQL | PostgreSQL Global Development Group | Лицензия PostgreSQL (бесплатное ПО с открытым исходным кодом, либеральная лицензия) | C |
MongoDB | MongoDB Inc. | Различные варианты лицензирования | |
DB2 | IBM | Проприетарная EULA | Assembly, C, C++ |
Microsoft Access | Microsoft Corporation | Пробное ПО | |
Redis | Salvatore Sanfilippo | Лицензия BSD | ANSI C |
SQL-базы данных
1. Oracle
Oracle RDBMS (она же Oracle Database) на первом месте среди СУБД. Система популярна у разработчиков, проста в использовании, у нее понятная документация, поддержка длинных наименований, JSON, улучшенный тег списка и Oracle Cloud.
- Разработчик: Oracle Corporation
- Написана на:Assembly, C, C++
- Блог: Oracle NoSQL
- Скачать: Oracle NoSQL
- Последняя версия: 18.3
Особенности
- Обрабатывает большие данные.
- Поддерживает SQL, к нему можно получить доступ из реляционных БД Oracle.
- Oracle NoSQL Database с Java/C API для чтения и записи данных.
2. MySQL
MySQL работает на Linux, Windows, OSX, FreeBSD и Solaris. Можно начать работать с бесплатным сервером, а затем перейти на коммерческую версию. Лицензия GPL с открытым исходным кодом позволяет модифицировать ПО MySQL.
Эта система управления базами данных использует стандартную форму SQL. Утилиты для проектирования таблиц имеют интуитивно понятный интерфейс. MySQL поддерживает до 50 миллионов строк в таблице. Предельный размер файла для таблицы по умолчанию 4 ГБ, но его можно увеличить. Поддерживает секционирование и репликацию, а также Xpath и хранимые процедуры, триггеры и представления.
- Разработчик: Oracle Corporation
- Написана на C, C++
- Последняя версия: 8.0.16
- Скачать: MySql
Особенности
- Масштабируемость.
- Лёгкость использования.
- Безопасность.
- Поддержка Novell Cluster.
- Скорость.
- Поддержка многих операционных систем.
3. Microsoft SQL Server
Самая популярная коммерческая СУБД. Она привязана к Windows, но это плюс, если вы пользуетесь продуктами Microsoft. Зависит от платформы. И графический интерфейс, и программное обеспечение основаны на командах. Поддерживает SQL, непроцедурные, нечувствительные к регистру и общие языки баз данных.
Особенности
- Высокая производительность.
- Зависимость от платформы.
- Возможность установить разные версии на одном компьютере.
- Генерация скриптов для перемещения данных.
4. PosgreSQL
Масштабируемая объектно-реляционная база данных, работающая на Linux, Windows, OSX и некоторых других системах. В PostgreSQL 10 есть такие функции, как логическая репликация, декларативное разбиение таблиц, улучшенные параллельные запросы, более безопасная аутентификация по паролю на основе SCRAM-SHA-256.
- Разработчик: PostgreSQL Global Development Group
- Написана на C
- Используется в компаниях: Apple, Cisco, Fujitsu, Skype, and IMDb
- Последняя версия: 11.2
- Блог: PostgreSQL
- Скачать: PostgreSQL
Особенности
- Поддержка табличных пространств, а также хранимых процедур, объединений, представлений и триггеров.
- Восстановление на момент времени (PITR).
- Асинхронная репликация.
NoSQL-базы данных
5. MongoDB
Самая популярная NoSQL система управления базами данных. Лучше всего подходит для динамических запросов и определения индексов. Гибкая структура, которую можно модифицировать и расширять. Поддерживает Linux, OSX и Windows, но размер БД ограничен 2,5 ГБ в 32-битных системах. Использует платформы хранения MMAPv1 и WiredTiger.
- Разработчик: MongoDB Inc. в 2007
- Написана на C++
- Последняя версия: 4.1.9
- Блог: MongoDB
- Скачать: MongoDB
Особенности
- Высокая производительность.
- Автоматическая фрагментация.
- Работа на нескольких серверах.
- Поддержка репликации Master-Slave.
- Данные хранятся в форме документов JSON.
- Возможность индексировать все поля в документе.
- Поддержка поиска по регулярным выражениям.
6. DB2
Работает на Linux, UNIX, Windows и мейнфреймах. Эта СУБД идеально подходит для хост-сред IBM. Версию DB2 Express-C нельзя использовать в средах высокой доступности (при репликации, кластеризации типа active-passive и при работе с синхронизируемым доступом к разделяемым данным).
- Разработчик: IBM
- Написана на C, C++, Assembly
- Последняя версия: 11.1
- Скачать: DB2
Особенности DB2 11.1
- Улучшенное встроенное шифрование.
- Упрощённая установка и развёртывание.
7. Microsoft Access
Система управления базами данных от Microsoft, которая сочетает в себе реляционное ядро БД Microsoft Jet с графическим интерфейсом пользователя и инструментами разработки ПО.
Идеально подходит для начала работы с данными, но производительность не рассчитана на большие проекты. В MS Access можно использовать C, C#, C++, Java, VBA и Visual Rudimental.NET. Access хранит все таблицы БД, запросы, формы, отчёты, макросы и модули в базе данных Access Jet в виде одного файла.
- Разработчик: Microsoft Corporation
- Последняя версия: 16.0
- Скачать: Microsoft Access
Особенности
- Можно использовать VBA для создания многофункциональных решений с расширенными возможностями управления данными и пользовательским контролем.
- Импорт и экспорт в форматы Excel, Outlook, ASCII, dBase, Paradox, FoxPro, SQL Server и Oracle.
- Формат базы данных Jet.
8. Cassandra
СУБД активно используется в банковском деле, финансах, а также в Facebook и Twitter. Поддерживает Windows, Linux и OSX. Для запросов к БД Cassandra используется SQL-подобный язык — Cassandra Query Language (CQL).
- Разработчик: Apache Software Foundation
- Написана на: Java
- Последняя версия: 3.11.4
- Блог: Cassandra
- Скачать: Cassandra
Особенности
- Линейная масштабируемость.
- Быстрое время отклика.
- Поддержка MapReduce и Apache Hadoop.
- Максимальная гибкость.
- P2P архитектура.
9. Redis
Redis или Remote Dictionary Server — СУБД с открытым исходным кодом, которая снабжена механизмами журналирования и снимков. Поддерживаются списки, строки, хэши, наборы. Используется для БД, брокеров сообщений и кэшей. Все операции в Redis атомарные. Система написана на языке C и поддерживается практически всеми языками программирования.
- Разработчик: Salvatore Sanfilippo
- Последняя версия: 5.0.5
- Блог: Redis
- Скачать: Redis
Особенности
- Автоматическая обработка отказа.
- Транзакции.
- Сценарии LUA.
- Вытеснение LRU-ключей.
- Поддержка Publish/Subscribe.
10. Elasticsearch
Легко масштабируемая поисковая система корпоративного уровня с открытым исходным кодом. Благодаря обширному и продуманному API обеспечивает чрезвычайно быстрый поиск, работает в том числе с приложениями для обнаружения данных. Используется такими компаниями, как Википедия, The Guardian, StackOverflow, GitHub. ElasticSearch позволяет создавать копии индексов и сегментов.
- Разработчик: Elastic NV
- Написана на Java
- Последняя версия: 7.2.0
- Блог: Elasticsearch
- Скачать: Elasticsearch
Особенности
- Масштабируемость вплоть до нескольких петабайт структурированных и неструктурированных данных.
- Многопользовательская поддержка.
- Масштабируемый поиск, поиск в режиме реального времени.
Рейтинги СУБД
Рейтинг | СУБД | Балл | |||||
Июль 2017 | Июнь 2017 | Июль 2016 | Июль 2017 | Июнь 2017 | Июль 2016 | ||
1 | 1 | 1 | Oracle | Реляционная СУБД | 1374.88 | +23.11 | -66.65 |
2 | 2 | 2 | MySQL | Реляционная СУБД | 1349.11 | +3.8 | -14.18 |
3 | 3 | 3 | Microsoft SQL Server | Реляционная СУБД | 1226 | +27.03 | +33.11 |
4 | 4 | 5↑ | PostgreSQL | 369.44 | +0.89 | +58.28 | |
5 | 5 | 4↓ | MongoDB | Документная СУБД | 332.77 | -2.23 | +17.77 |
6 | 6 | 6 | DB2 | Реляционная СУБД | 191.25 | +3.74 | +6.17 |
7 | 7 | 8↑ | Microsoft Access | Реляционная СУБД | 126.13 | -0.42 | +1.23 |
8 | 8 | 7↓ | Cassandra | СУБД типа BigTable | 124.12 | -0.0 | -6.58 |
9 | 9 | 10↑ | Redis | СУБД типа «ключ-значение» | 121.51 | +2.63 | +13.48 |
10 | 11↑ | 11↑ | Elasticsearch | Поисковая система | 115.98 | +4.42 | +27.36 |
А какую СУБД предпочитаете вы? Аргументируйте свой выбор 😉
proglib.io
Реализации систем управления базами данных |
---|
dic.academic.ru
Системы управления базами данных — Базы данных
По модели данных
Иерархические
Используется представление базы данных в виде древовидной (иерархической) структуры, состоящей из объектов (данных) различных уровней.
Между объектами существуют связи, каждый объект может включать в себя несколько объектов более низкого уровня. Такие объекты находятся в отношении предка (объект более близкий к корню) к потомку (объект более низкого уровня), при этом возможна ситуация, когда объект-предок не имеет потомков или имеет их несколько, тогда как у объекта-потомка обязательно только один предок. Объекты, имеющие общего предка, называются близнецами (в программировании применительно к структуре данных дерево устоялось название братья).
Иерархической базой данных является файловая система, состоящая из корневого каталога, в котором имеется иерархия подкаталогов и файлов.
Примеры: Caché, Google App Engine Datastore API.
Сетевые
Сетевые базы данных подобны иерархическим, за исключением того, что в них имеются указатели в обоих направлениях, которые соединяют родственную информацию.
Примеры: Caché.
Реляционные
Практически все разработчики современных приложений, предусматривающих связь с системами баз данных, ориентируются на реляционные СУБД. По оценке Gartner в 2013 году рынок реляционных СУБД составлял 26 млрд долларов с годовым приростом около 9%, а к 2018 году рынок реляционных СУБД достигнет 40 млрд долларов. В настоящее время абсолютными лидерами рынка СУБД являются компании Oracle, IBM и Microsoft, с общей совокупной долей рынка около 90%, поставляя такие системы как Oracle Database, IBM DB2 и Microsoft SQL Server.
Объектно-ориентированные
Управляют базами данных, в которых данные моделируются в виде объектов, их атрибутов, методов и классов.
Этот вид СУБД позволяет работать с объектами баз данных так же, как с объектами в программировании в объектно-ориентированных языках программирования. ООСУБД расширяет языки программирования, прозрачно вводя долговременные данные, управление параллелизмом, восстановление данных, ассоциированные запросы и другие возможности.
Примеры: GemStone.
Объектно-реляционные
Этот тип СУБД позволяет через расширенные структуры баз данных и язык запросов использовать возможности объектно-ориентированного подхода: бъекты, классы и наследование.
Зачастую все те СУБД, которые называются реляционными, являются, по факту, объектно-реляционными.
В данном курсе мы будем, в первую очередь, гооврить об этом виде СУБД.
Примеры: PostgreSQL, DB2, Oracle, Microsoft SQL Server.
По способу доступа к БД
Файл-серверные
В файл-серверных СУБД файлы данных располагаются централизованно на файл-сервере. СУБД располагается на каждом клиентском компьютере (рабочей станции). Доступ СУБД к данным осуществляется через локальную сеть. Синхронизация чтений и обновлений осуществляется посредством файловых блокировок. Преимуществом этой архитектуры является низкая нагрузка на процессор файлового сервера. Недостатки: потенциально высокая загрузка локальной сети; затруднённость или невозможность централизованного управления; затруднённость или невозможность обеспечения таких важных характеристик как высокая надёжность, высокая доступность и высокая безопасность. Применяются чаще всего в локальных приложениях, которые используют функции управления БД; в системах с низкой интенсивностью обработки данных и низкими пиковыми нагрузками на БД.
На данный момент файл-серверная технология считается устаревшей, а её использование в крупных информационных системах — недостатком.
Примеры: Microsoft Access, Paradox, dBase, FoxPro, Visual FoxPro.
Клиент-серверные
Клиент-серверная СУБД располагается на сервере вместе с БД и осуществляет доступ к БД непосредственно, в монопольном режиме. Все клиентские запросы на обработку данных обрабатываются клиент-серверной СУБД централизованно. Недостаток клиент-серверных СУБД состоит в повышенных требованиях к серверу. Достоинства: потенциально более низкая загрузка локальной сети; удобство централизованного управления; удобство обеспечения таких важных характеристик как высокая надёжность, высокая доступность и высокая безопасность.
Примеры: Oracle, Firebird, Interbase, IBM DB2, Informix, MS SQL Server, Sybase Adaptive Server Enterprise, PostgreSQL, MySQL, Caché, ЛИНТЕР.
Встраиваемые
Встраиваемая СУБД — СУБД, которая может поставляться как составная часть некоторого программного продукта, не требуя процедуры самостоятельной установки. Встраиваемая СУБД предназначена для локального хранения данных своего приложения и не рассчитана на коллективное использование в сети. Физически встраиваемая СУБД чаще всего реализована в виде подключаемой библиотеки. Доступ к данным со стороны приложения может происходить через SQL либо через специальные программные интерфейсы (API).
Примеры: OpenEdge, SQLite, BerkeleyDB, Firebird Embedded, Microsoft SQL Server Compact, ЛИНТЕР.
lecturesdb.readthedocs.io
горячая десятка / RUVDS.com corporate blog / Habr
Если вашей организации нужно хранить и обрабатывать данные, то, независимо от их объёма, без облачной или локальной СУБД не обойтись. Сегодня мы поговорим о ведущих представителях рынка корпоративных баз данных, о тех разработках, на которые стоит обратить внимание в 2016-м году.Рынок корпоративных СУБД существует уже несколько десятилетий. Полагаем, оценивая ту или иную систему, нелишним будет, кроме прочего, учитывать и её историю. Но зрелость рынка не значит, что в наши дни он – место тихое и спокойное. Уровень конкуренции здесь очень высок.
Требования бизнеса постоянно растут, меняются подходы к созданию IT-инфраструктур. Разработчики СУБД либо успевают дать рынку то, чего он хочет, либо оказываются на периферии. А пользователи баз данных, благодаря возможности выбора, от подобного положения дел лишь выигрывают.
Нельзя сказать, что выбрать корпоративную СУБД просто, но мы уверены, что среди ведущих систем, о которых мы расскажем, вы сможете найти ту, которая вас заинтересует.
Oracle Database
Oracle выпустила свою первую реляционную СУБД в 1979-м году. За годы присутствия компании на рынке слово «Oracle» стало синонимом понятий «корпоративная СУБД» и «надёжная работа с данными». Oracle, как, кстати, и некоторые другие компании, разработки которых присутствуют в нашем обзоре, входит в список Fortune 500. Главное направление деятельности Oracle – мощное и довольно сложное решение в области баз данных.
Текущая версия СУБД компании называется Oracle 12c. Буква «c» означает «cloud». Это отражает движение Oracle в сторону облачных технологий, которые позволяют организациям консолидировать базы данных и управлять ими как облачными службами. Среди особенностей СУБД Oracle – многоарендная архитектура, быстрое развёртывание решений, возможности по обработке данных в памяти.
Microsoft SQL Server
О Microsoft можно говорить всё, что угодно, но это – одна из самых прибыльных технологических компаний в мире. Её настольные операционные системы буквально повсюду, однако, не последнюю роль в успехе Microsoft сыграл SQL Server. Трудно представить себе сервер, на котором установлена ОС от Microsoft, без SQL Server.
Простота использования SQL Server, его доступность и тесная интеграция с ОС семейства Windows, делают его очевидным выбором для компаний, пользующихся продуктами Microsoft для корпоративных целей. Microsoft говорит о свежем выпуске SQL Server 2016 как о платформе для локальных и облачных баз данных, а так же для систем бизнес-аналитики.
Кроме того, Microsoft занимается продвижением SQL Server 2016 как решения, способного помочь организациям в построении критически важных приложений для оперативной обработки транзакций (OLTP). Такие решения характеризуются высокой производительностью, возможностями по обработке данных в памяти и по защите данных при их хранении и перемещении. На базе SQL Server 2016 можно создавать хранилища большого объема, системы анализа данных.
Есть различные варианты аренды MS SQL Server. Можно приобрести лицензию на одного пользователя, можно лицензировать ядра сервера, без ограничения количества пользователей.
Можно также скачать бесплатный выпуск начального уровня SQL Server 2016 Express, который оптимально подходит для развертывания небольших баз данных в рабочих средах и установить его на недорогой VPS, этого вполне достаточно для создания небольших серверных приложений для обработки данных, занимающих до 10 ГБ места на диске.
IBM DB2
Говорят, что компания IBM получила прозвище «Голубой гигант» из-за своих мейнфреймов 50-х 60-х годов, которые занимали целую комнату и были выкрашены в соответствующий цвет. Усилия компании по продвижению СУБД DB2, её безжалостная конкурентная борьба с Oracle, позволяют предположить, что IBM хочет заполнить компьютерами, на которых установлена её СУБД, многие и многие серверные комнаты. Есть исследования, посвящённые сравнению сопоставимых решений от IBM и Oracle. Например, здесь можно взглянуть на данные отчёта, который подготовила ITG. Отчёт говорит о серьёзной экономии при использовании DB2 и сопутствующих технологий IBM.
В апреле сего года вышла свежая версия СУБД – DB2 11.1. Она может работать на многих системах, в частности, на Linux, Unix и Windows, на мейнфреймах IBM z Systems, поддерживает аппаратное ускорение на процессорах Power 8.
SAP ASE
Первый выпуск СУБД Sybase увидел свет в 1987 году под именем SQL Server. Он вырос в Adaptive Server Enterprise – самый известный и успешный продукт компании. В 2010-м Sybase была поглощена SAP, в итоге сегодня база данных называется SAP Adaptive Server Enterprise (SAP ASE). Хотя Sybase и стала частью другой компании, её СУБД всё ещё является одним из основных игроков корпоративного рынка. Кроме того, Sybase известна тем, что направляла значительные усилия на мобильные корпоративные решения, как правило, покупая разработчиков перспективных продуктов. Судя по всему, SAP продолжает эту традицию.
SAP ASE 16, самый свежий выпуск СУБД, поддерживает технологию блокировок на уровне разделов, интеграцию с SAP HANA и SAP Business Suite. База данных отличается экономичностью, возможностями эффективного масштабирования и системного аудита, поддерживает динамическое назначение потоков, оптимизацию плана запросов с соединениями типа «звезда» и многие другие возможности.
PostgreSQL
PostgreSQL, наследник Postgres, разработка которой началась в 1986-м году, – это бесплатная объектно-реляционная СУБД с открытым исходным кодом. Она находит применение в весьма интересных местах, как интернет-казино, системы автоматизации дата-центров, реестры доменов. Кроме того, её используют в высоконагруженных задачах Yahoo! и Skype. PostgreSQL можно обнаружить в таком количестве скрытых от постороннего взгляда систем, что она вполне может называться «Секретной корпоративной базой данных».
Текущий стабильный релиз PostgreSQL – 9.6. Он выпущен 29 сентября этого года.
PostgreSQL поддерживает множество операционных систем. Среди них – Linux, Windows, FreeBSD, Solaris. PostgreSQL используется как стандартная база данных в ОС от Apple, начиная с Mac OS X Lion. Возможности этой СУБД сравнимы с разработками Oracle и IBM. В частности, она характеризуется полным соответствием требованиям ACID по надёжности транзакций, способна поддерживать высокие параллельные нагрузки.
MariaDB Enterprise
MariaDB Enterprise – это СУБД с полностью открытым исходным кодом, выпущенным под лицензиями GPL, LGPL или BSD. Путь MariaDB начался в 2009-м году. Эта система была форком MySQL, над которым работало сообщество разработчиков под руководством создателей MySQL. Они начали новый проект, обеспокоенные политикой лицензирования Oracle, которая приобрела MySQL.
Популярной MariaDB стала за счёт MySQL. В частности, после того, как MariaDB заняла место MySQL в известных дистрибутивах Linux. Так, только в 2013 году, разработчики Red Hat Enterprise Linux отказались от MySQL в пользу MariaDB, то же самое было сделано в Fedora 19, на MariaDB перешли openSUSE и Slackware Linux. Кроме того, MariaDB стала использоваться в качестве серверной базы данных в проекте Wikipedia.
Ещё один важнейший фактор, повлиявший на то, что MariaDB оказалась впереди MySQL, заключается в наличии расширенного оптимизатора запросов и других улучшений, касающихся скорости работы.
Самый свежий релиз MariaDB Enterprise Server – 10.1, известный так же как MariaDB Enterprise Spring 2016. Этот выпуск улучшает защиту данных от атак на уровне приложений и сетей и способствует разработке новых, высокопроизводительных приложений.
MySQL
MySQL начинала как узкоспециализированное решение для разработчиков, но выросла в одного из ключевых игроков рынка корпоративных СУБД. Сначала, в 2008-м, она была продана Sun Microsystems, позже, в 2009-м, стала частью империи Oracle. Уже много лет MySQL – это нечто гораздо большее, нежели нишевое решение. На MySQL работают сотни тысяч коммерческих веб-сайтов, она служит в качестве серверной СУБД для огромного количества внутренних корпоративных приложений.
Сегодня MySQL остаётся весьма популярным вариантом для веб-решений, она продолжает служить центральным компонентом стека LAMP. В то же самое время, MySQL, из-за поглощения Oracle, испытывает ослабление поддержки со стороны пользователей и независимых разработчиков.
Падение популярности MySQL позволило ускорить адаптацию других СУБД с открытым исходным кодом и её собственных форков, наподобие Percona или вышеупомянутой MariaDB с полностью открытым исходным кодом, в которой нет закрытых модулей, появившихся в новых версиях MySQL Enterprise Edition.
Самый свежий выпуск этой СУБД, MySQL Community Server 5.7.15, увидел свет в начале августа 2016-го.
Teradata Database
Слышали о компании Teradata? Если вы занимались созданием большого хранилища данных, то, скорее всего, слышали. Teradata ведёт историю с конца 1970-х. Именно тогда она начала работу над решениями, которые позже стали называться «хранилищами данных». В 1992 году Teradata построила первую терабайтную БД для Wal-Mart. С тех времён слово «Teradata» постоянно упоминается в разговорах экспертов по корпоративным системам хранения данных.
Возможности Teradata Database относятся к сфере очень больших баз данных. Эта система отлично подходит для поддержки таких популярных в последнее время течений, как исследование больших данных, бизнес-аналитика, интернет вещей. Teradata выпустила версию 15.10 своей реляционной СУБД в начале 2015-го.
IBM Informix
Как видите, в нашем списке имеется ещё одна разработка IBM. Компания предлагает широкий диапазон вариантов объектно-реляционной СУБД Informix. Её продвигают как интеллектуальную базу данных, которую можно развернуть на множестве платформ.
Часто ассоциируемая с учебными заведениями, Informix пришла в корпоративный мир и заняла первое место по удовлетворённости клиентов. Пользователи этой СУБД обычно весьма лестно выражаются о её низкой стоимости, о необходимости небольшого объёма технического обслуживания и высокой надёжности.
Ingres
Реляционная СУБД Ingres весьма актуальна на корпоративном рынке, кроме того, она – один из старожилов мира баз данных. Работа над ней началась в начале 1970-х.
Ingres имеет привлекательную модель формирования цены, что может означать уменьшение общей стоимости владения системой. Эта система может похвастаться продвинутыми возможностями по переходу на неё с более дорогих СУБД. Кроме того, она отличается высокими характеристиками безопасности, необходимыми для соответствия требованиям HIPAA и закону Сарбейнза – Оксли.
Самая свежая корпоративная версия Ingres – это 10.2. Она вышла в 2015-м, представив поддержку геопространственных типов данных, удалённых GCA-клиентов, транслитерации UTF-8, DBMS-аутентификации и других новых возможностей.
В июне 2016 года была выпущена для тестирования Ingres 11 Technical Preview.
Amazon SimpleDB
Это – уже одиннадцатый пункт в нашем списке. Можете считать его десертом к основным десяти блюдам.
На первый взгляд понятия «Amazon» и «СУБД» могут показаться не вполне совместимыми, но на самом деле это не так, особенно сегодня, в эру облачных вычислений. SimpleDB (Simple Database Service) предлагает организациям простую, гибкую и недорогую альтернативу традиционным СУБД.
SimpleDB позволяет пользователям хранить данные и работать с ними посредством запросов к веб-сервисам. Она отличается масштабируемостью, высокой скоростью, минимальными требованиями по обслуживанию и интеграцией с другими службами Amazon. Начать работу с SimpleDB можно бесплатно.
Итоги
Нет единственно правильного решения для всех задач по работе с данными. Не существует и идеальной корпоративной СУБД. У каждой из них есть свои плюсы и минусы, которые, к тому же, очень сильно зависят от специфики бизнеса.
Лучшее, что можно сделать для того, чтобы выбрать подходящую СУБД – проанализировать всё, что предлагает рынок, с учётом особенностей конкретной организации.
Надеемся, наш рассказ о ведущих корпоративных СУБД 2016-го года внёс посильный вклад в дело выбора системы, которая вам подойдёт.
habr.com
Система управления базами данных — это… Что такое Система управления базами данных?
Систе́ма управле́ния ба́зами да́нных (СУБД) — совокупность программных и лингвистических средств общего или специального назначения, обеспечивающих управление созданием и использованием баз данных[1].
Основные функции СУБД
Обычно современная СУБД содержит следующие компоненты:
- ядро, которое отвечает за управление данными во внешней и оперативной памяти, и журнализацию,
- процессор языка базы данных, обеспечивающий оптимизацию запросов на извлечение и изменение данных и создание, как правило, машинно-независимого исполняемого внутреннего кода,
- подсистему поддержки времени исполнения, которая интерпретирует программы манипуляции данными, создающие пользовательский интерфейс с СУБД
- а также сервисные программы (внешние утилиты), обеспечивающие ряд дополнительных возможностей по обслуживанию информационной системы.
Классификации СУБД
По модели данных
Примеры:
По степени распределённости
- Локальные СУБД (все части локальной СУБД размещаются на одном компьютере)
- Распределённые СУБД (части СУБД могут размещаться на двух и более компьютерах).
По способу доступа к БД
В файл-серверных СУБД файлы данных располагаются централизованно на файл-сервере. СУБД располагается на каждом клиентском компьютере (рабочей станции). Доступ СУБД к данным осуществляется через локальную сеть. Синхронизация чтений и обновлений осуществляется посредством файловых блокировок. Преимуществом этой архитектуры является низкая нагрузка на процессор файлового сервера. Недостатки: потенциально высокая загрузка локальной сети; затруднённость или невозможность централизованного управления; затруднённость или невозможность обеспечения таких важных характеристик как высокая надёжность, высокая доступность и высокая безопасность. Применяются чаще всего в локальных приложениях, которые используют функции управления БД; в системах с низкой интенсивностью обработки данных и низкими пиковыми нагрузками на БД.
На данный момент файл-серверная технология считается устаревшей, а её использование в крупных информационных системах — недостатком[2].
Примеры: Microsoft Access, Paradox, dBase, FoxPro, Visual FoxPro.
Клиент-серверная СУБД располагается на сервере вместе с БД и осуществляет доступ к БД непосредственно, в монопольном режиме. Все клиентские запросы на обработку данных обрабатываются клиент-серверной СУБД централизованно. Недостаток клиент-серверных СУБД состоит в повышенных требованиях к серверу. Достоинства: потенциально более низкая загрузка локальной сети; удобство централизованного управления; удобство обеспечения таких важных характеристик как высокая надёжность, высокая доступность и высокая безопасность.
Примеры: Oracle, Firebird, Interbase, IBM DB2, Informix, MS SQL Server, Sybase Adaptive Server Enterprise, PostgreSQL, MySQL, Caché, ЛИНТЕР.
Встраиваемая СУБД — СУБД, которая может поставляться как составная часть некоторого программного продукта, не требуя процедуры самостоятельной установки. Встраиваемая СУБД предназначена для локального хранения данных своего приложения и не рассчитана на коллективное использование в сети. Физически встраиваемая СУБД чаще всего реализована в виде подключаемой библиотеки. Доступ к данным со стороны приложения может происходить через SQL либо через специальные программные интерфейсы.
Примеры: OpenEdge, SQLite, BerkeleyDB, Firebird Embedded, Microsoft SQL Server Compact, ЛИНТЕР.
См. также
Примечания
Литература
Отечественная
- Когаловский М.Р. Энциклопедия технологий баз данных. — М.: Финансы и статистика, 2002. — 800 с. — ISBN 5-279-02276-4
- Кузнецов С. Д. Основы баз данных. — 2-е изд. — М.: Интернет-университет информационных технологий; БИНОМ. Лаборатория знаний, 2007. — 484 с. — ISBN 978-5-94774-736-2
Переводная
- Дейт К. Дж. Введение в системы баз данных = Introduction to Database Systems. — 8-е изд. — М.: Вильямс, 2005. — 1328 с. — ISBN 5-8459-0788-8 (рус.) 0-321-19784-4 (англ.)
- Коннолли Т., Бегг К. Базы данных. Проектирование, реализация и сопровождение. Теория и практика = Database Systems: A Practical Approach to Design, Implementation, and Management. — 3-е изд. — М.: Вильямс, 2003. — 1436 с. — ISBN 0-201-70857-4
- Гарсиа-Молина Г., Ульман Дж., Уидом Дж. Системы баз данных. Полный курс = Database Systems: The Complete Book. — Вильямс, 2003. — 1088 с. — ISBN 5-8459-0384-X
Иностранная
Ссылки
На русском языке
На английском языке
dic.academic.ru
Базы данных: какие бывают | WebShake.RU
В статье рассказывается о роли баз данных в современных реалиях и сформировано определение. Помимо этого, указываются виды баз данных и их классификация на основе структуры хранения данных. MySQL как эталонная СУБД для хранения данных в интернет-пространстве.
Ещё до появления информационных технологий у людей возникала необходимость в упорядоченном хранении тех или иных данных. Для удобства их разделяли по определённому признаку, объединяли в группы, создавали иерархическое представление и применяли множество других способов.
С развитием компьютерной техники и интернета большинство методов, которые ранее использовались в библиотеках и архивах, были взяты за основу для хранения данных уже на носителях информации. В случае с интернет-пространствам данные хранятся на конкретном носителе, который присутствует в серверной машине. Сервер под размещение базы данных можно заказать у Rackstore тут.
База данных с точки зрения информатики — это хранение информации в упорядоченном виде, следуя определённой, заранее установленной разработчиком, системе.
Выделяются следующие виды баз данных по структуре:
- иерархические;
- сетевые;
- реляционные;
Рассмотрим каждый из них.
Иерархическая база данных
Под иерархической понимается такая база данных, в которой хранение данных и их структурирование осуществляется по принципу разделения элементов на родительские и дочерние. Преимуществом таких баз является лёгкость в чтении запрашиваемой информации и её быстрое предоставление пользователю.
Компьютер способен быстро ориентироваться в ней. Иерархический принцип взят за основу в структурировании файлов и папок в операционной системе Windows, а реестр хранит информацию о параметрах работы тех или иных приложений в структурированном иерархическим способом виде.
Все интернет-ресурсы также построены по иерархическому принципу, так как при его использовании ориентироваться в рамках сайта очень легко.
В качестве примера можно привести базу данных на языке XML, содержащую в себе очерки о состоянии сельского хозяйства в регионах России. В этом случае родительским элементом выступит государство, далее пойдёт разделение на субъекты, а в рамках субъектов будет своё разветвление. В данном случае от верхнего элемента к нижнему идёт строго одно обращение.
Сетевая база данных
Под сетевой базой данных понимается модифицированная иерархическая. Её особенность заключается в том, что элементы могут быть связаны с друг другом в нарушение иерархии. То есть дочерний элемент одновременно может иметь несколько предков.
В этом случае также примером выступает база данных на основе языка XML.
Реляционная база данных
Под данным типом баз данных понимается их представление в рамках двумерной таблицы. Она имеет несколько столбцов, в которых устанавливаются такие параметры, как, например, тип вводимых данных (текст, число, дата и др.).
Таблица здесь является способом хранения введённых в неё данных и способна реагировать на любые обращения со стороны СУБД. Главная проблема в работе с реляционными базами данных состоит в их правильном проектировании.
Во время проектирования базы данных следует учесть следующие два фактора:
- база данных должна быть компактной и не содержать избыточных компонентов;
- обработка базы данных должны происходить просто.
Проблема в том, что эти факторы друг другу противоречат. А ведь проектирование — важнейший момент при составлении базы данных и дальнейшей работе с ней. Заниматься им рекомендуется администратору сервера, обладающему определённым опытом.
В крупных проектах задействовано множество таблиц, которых может быть более сотни. При этом обойтись без них невозможно, если человек имеет дело с важным и сложным проектом.
Перед составлением таблицы следует составить диаграмму или схему, в которой содержится информация о видах хранимой информации, а также о типе данных, который лучше всего подойдёт для таких целей.
СУБД
Система управления базами данных — это термин, который не нужно расшифровывать. Она представляет собой встраивыемый модуль или полноценную программу, которая способна работать с данными и вносить изменения в базы.
Существует две модели СУБД — реляционная и безсхемная. О том, что такое реляционные базы данных, уже рассказано выше. Безсхемные СУБД основанные на принципах неструктурированного подхода избавляют программиста от проблем реляционной модели, в число которых входит низкая производительность и трудное масштабирование данных в горизонтальном формате.
Неструктурированные базы данных (NoSQL) создают структуру по ходу и убирают необходимость в создании жёстко определённых связей между данными. Здесь можно экспериментировать с разными способами доступа к тем или иным видам данных.
К реляционным базам данных относятся:
- SQLite;
- MySQL;
- PostgreSQL.
Из них наиболее распространённой является база данных MySQL, но остальные тоже имеют популярность и с ними можно столкнуться.
Принцип работы таких систем заключается в слежении за строгой структурой данных, которая представлена в виде комплекса таблиц. В свою очередь внутри таблицы есть ячейки и поля, которыми также управляет MySQL.
По принципу NoSQL работает база данных MongoDB. Они хранят все данные как единое целое в одной базе. При этом данные могут быть и одиночным объектом, но в то же время любой запрос не останется без ответа.
Каждая NoSQL имеет собственную систему запросов, что требует дополнительного изучения данной системы.
Сравнение SQL и NoSQL
- Если SQL-системы основаны исключительно на строгом представлении данных, то NoSQL-системы предоставляют свободу и способны работать с любым типом данных.
- SQL-системы стандартизированы, за счёт чего запросы формируются с использованием языка SQL. В то же время NoSQL-системы базируются на специфической для каждой из них технологии, что является недостатком.
- Масштабируемость. Обе СУБД способны обеспечить вертикальное масштабирование, то есть увеличить объём системных ресурсов на обработку данных. При этом NoSQL, будучи более новой разновидностью баз данных, позволяет применять простые методы горизонтального масштабирования.
- В плане надёжности SQL обладает уверенным лидерством.
- У SQL-баз есть качественная техническая поддержка за счёт их продолжительной истории, в то время как NoSQL-системы весьма молоды и и решить какую-либо проблему сложнее.
- Хранение данных и доступ к их структурам в рамках реляционных систем лучше всего происходит в SQL-системах.
Таким образом, хоть NoSQL и является стремительно развивающейся разновидностью систем управления базами данных, однако на данном этапе рекомендуется остановить свой выбор на SQL.
Надёжность SQL-систем, особенно MySQL, подтверждается временем и массовостью. Сегодня любой уважающий себя ресурс использует для хранения данных именно систему MySQL.
webshake.ru
Типы систем управления базами данных и их преимущества
- Подробности
- января 26, 2016
- Просмотров: 23972
База данных используются для сбора, хранения и группировки данных. Хорошая система управления базами данных (СУБД) обеспечивает эффективное управление сохраненными данными, предоставляет пользователям и администратору доступ к ней, а также поддерживает безопасность данных. В этой статье я перечислю и опишу различные типы систем управления базами данных и их преимущества.
Проще говоря
Система управления базами данных или менеджер базы данных — это набор компьютерных программ, которые позволяют пользователям создавать и получать доступ к данным, и предоставляет им способы извлечения и изменения этих данных.
Базы данных организуют связанные данные таким образом, чтобы они могли быть легко доступны для пользователей. СУБД предназначена для управления информацией, которая включает в себя управление правами доступа пользователей для просмотра, добавления, удаления и изменения записей. IBM для информационной системы менеджмента (IMS) была одной из первых систем управления базами данных.
База данных обрабатывает запросы пользователей и обеспечивает целостность данных. Это означает, что данные защищены, хотя всегда открыта для доступа.
На основе числа поддерживаемых пользователей, система управления базами данных может быть классифицирована как однопользовательская или многопользовательская. Однопользовательская база данных поддерживает только одного пользователя одновременно, что означает, что другие пользователи должны ждать, пока первый закончит с ней работу. Многопользовательская база данных, как следует из ее названия, позволяет нескольким пользователям получить доступ к данным одновременно, но с ограниченными правами для каждого пользователя.
Базы данных системы могут также быть классифицированы как централизованные или распределенные. Централизованная база данных системы состоит из процессора, который обрабатывает несколько запоминающих устройств вместе. Централизованная база данных поддерживает центральное расположение при обращении к данным с нескольких сайтов. Распределенная база данных имеет данные распределенные по нескольким компьютерам или сетям. Эта база данных также как централизованная может иметь центральное расположение. Безопасность достигается за счет сохранения основной базы данных в центральном расположении с копией данных по другим адресам. Данные периодически синхронизируются так, что изменения, внесенные в одном месте, отражались на остальных.
Типы систем управления базами данных и их преимущества.
Flat File
База данных с двумерными файлами. Двухмерная модель наиболее простая. Каждая строка текста содержит одну запись обычно через запятую. Также могут быть использованы другие разделители. База данных может содержать записи без ссылок между ними. Она не может содержать несколько таблиц, как в реляционных БД. Для реализации двумерных файлов используется электронная таблица или текстовый процессор. Примерами базы данных с двумерными файлами являются Excel и filemaker.
Преимущества
- Все записи хранятся в одном месте. Простая структура.
- Хорошо работает для небольших баз данных и имеет минимальные программные и аппаратные требования.
Иерархическая
Иерархическая база данных состоит из записей, которые связаны друг с другом. Каждая запись-это набор полей, каждое из которых содержит одно значение. Иерархическая база данных устроена таким образом «родитель-ребенок». Для лучшего понимания, представьте, что это перевернутая елка.
Иерархическая база данных представлена в виде коробки. Отношения между родителем и ребенком может быть один-к-одному или один-ко-многим». Родитель может иметь или не иметь стрелку, указывающую на ребенка, но ребенок должен иметь стрелку, указывающую в направлении своего родителя. Иерархическая база данных может не справиться с такой структурой данных как «многие-ко-многим», для них применяются реляционные базы данных. Примером иерархической базы данных является программа adabas (Адаптируемая база данных).
Преимущества
- Так как большинство связей имеют тип «один к одному», структура базы данных проста для понимания даже для непрограммистов. После нахождения первой записи, вам не нужно делать просмотр индекса. Вы можете просто следовать за родителями, по указателям, которые направят вас к следующей записи.
- Так как данные хранятся в единой базе, просматривать их становится легче. Модификации, если таковые имеются, могут быть легко добавлены в файл, заменяя существующие данные.
- Иерархическая база данных легка для администрирования и поддержания путем изменения записей в соответствующих областях.
Реляционная
Реляционная база данных — это набор элементов, организованных в таблицы, состоящие из строк, называемых записями, и столбцов, называемых полями, с которых данные могут быть доступны в любое время. Реляционная база данных может быть доступна с использованием языков запросов таких как SQL. Запросы используются для создания, изменения или извлечения данных.
В реляционной базе данные как правило, хранятся в виде таблиц. Каждая таблица имеет первичный ключ. В первичный ключ используется как уникальный идентификатор для каждой записи. Никакие две записи не могут иметь одинаковый первичный ключ. Понятие внешние ключи используется для установления отношения между двумя или более таблицами. Внешний ключ — это поле одной таблицы, который однозначно определяет строку в другой таблице. Он используется для перекрестных ссылок и связывание данных между таблицами. Примерами реляционной базы данных являются MySQL и SQL.
Преимущества
- Права пользователя могут быть ограничены в зависимости от того, какие данные должны быть видимыми или модифицируемыми. Это предоставляет большую безопасность.
- Для работы с иерархической базой данных, необходимо открыть корневой каталог. В отличие от этого, реляционная база данных дает большую гибкость доступа.
- Можно избежать дублирования данных, таким образом, это уменьшит размер базы данных. Это снижает требования к памяти и повышает работоспособность.
Сетевая
Сетевая база данных была создана для представления сложных данных более эффективно. Она похожа на иерархическую модель, но в этом случае потомок может иметь несколько родителей и наоборот. Она формирует общее граф или сеть иерархий.
Схема, подсхемы, и язык управления данными являются ключевыми компонентами этой базы данных. Схема является концептуальным представлением базы данных в то время как подсхемы, содержат данные в базе данных. Язык управления данными определяет характеристики и структуру данных для того, чтобы манипулировать данными. В конечном итоге она была заменена на реляционную модель, что сделало хранение и изменение данные одновременно более простым. Примеры систем сетевых базы данных включает интегрированное хранилище данных (IDS) и интегрированные системы управления базами данных (IDMS).
Преимущества
- Как и в иерархической базе данных, компоненты сетевой базы данных могут иметь несколько-родительских отношений.
- Так как всегда есть связь между родителем и потомком, целостность данных сохраняется.
- База данных тратит меньше времени на ведение учета устранения избыточных таблиц, что повышает эффективность и общую производительность.
Объектно-ориентированная
Как видно из названия, это база данных, состоит из объектов, используемый в объектно-ориентированном программировании. Эти базы данных хорошо работают с объектно-ориентированными языками, такими как Perl, C++, Java, smalltalk и другие.
Похожие объекты группируются в класс и каждый объект определенного класса, называется экземпляром. Классы позволяют программисту определять данные, которые не включены в программу. Так как классы определяют только те данные, которые запускаются, они не смогут получить доступ к другим данным, таким образом исключается возможность повреждения данных и обеспечивается безопасность. Классы обмениваться данными между собой через сообщения, называемые методами. Они имеют свойство наследования, которое означает, что если класс определен, подкласс может наследовать свойства, не определяя его собственные методы. Это означает, что подкласс может реализовать тот же код. Это ускоряет разработку программ. Примеры объектно-ориентированных систем баз данных включают Versant.
Преимущества
- Классы позволяют группировать объекты, имеющие сходные характеристики. Суперклассы могут быть созданы для объединения всех классов. Это приводит к уменьшению избыточности данных и возможности повторного использования класса, что позволяет упростить обслуживание данных.
- База данных может хранить различные типы данных, такие как аудио, видео, изображения, и т.д.
- Язык запросов может быть не нужен, так как все изменения происходят прозрачно при доступе к объектам.
Многомерная
Многомерная база данных тесно связана с оперативной аналитической обработкой, которая является частью бизнес-аналитики и хранилища данных. Интерактивная аналитическая обработка (OLAP) позволяет легко извлекать и просматривать данные через разные точки. Она может быть использован для доступа к многомерным данным. Многомерные базы данных могут быть визуализированы в виде кубов данных, представляющих различные размеры имеющихся данных. Она сочетает в себе преимущества иерархических и реляционных баз данных. Примеры многомерных баз данных включают Oracle Essbase и Microsoft SAS.
Преимущества
- Она отвечает на запросы быстрее, чем реляционные базы данных, за счет многомерного индексирования и оптимизированного хранения.
- Вывод многомерных баз данных имеет табличный вид, который не достижим в случае реляционных баз данных.
Объектно-реляционная
Объектно-реляционная база данных предлагает лучшее из обоих миров. Она обладает всеми преимуществами реляционной базы данных в сочетании с понятиями объектно-ориентированного программирования, такими как объекты, классы, наследование и полиморфизм. Она функционирует аналогично реляционным базам данных. Примеры включают IBM DB2.
Преимущества
- Она может легко получать данные через полиморфизм. Повторное использование данных становится проще.
- Поскольку она вбирает в себя лучшее из реляционных и объектно-ориентированных баз данных, масштабируемость — не является для нее проблемой. Внутри классов могут храниться огромные объемы данных.
Гибридная
Гибридная система представляет собой комбинацию из двух или более баз данных. Гибриды используются, когда один тип базы данных не является достаточным для обработки всех запросов. Она поддерживает хранение и на диске, и в памяти. При доступе к базе данных используется оперативная память, в то время как для хранения основной базы используется диск. При использовании оперативной памяти повышается производительность, в то время как данные на диске более долговечны и экономичны. Гибридная база данных сочетает в себе оба этих преимущества. Примеры включают ALTIBASE HDВ.
Преимущества
- Гибридная конструкция предназначена, чтобы пожинать преимущества двух или более типов баз данных, из которых она составлена.
- Извлечение данных из памяти вместо диска, делает операции намного быстрее. Это дает гибридным базам данных высокий балл по производительности.
Это были различные типы систем управления базами данных. Каждый Тип имеет свои преимущества, но решающим выбором является та, которая наилучшим образом подходит для конкретной организации и зависит от характера и объема данных, которые она должна обрабатывать.
Читайте также
juice-health.ru