Какой продукт не является субд

Содержание статьи

ТОП-10 систем управления базами данных в 2019 году

Умение выбрать СУБД важно при разработке любого ПО. Мы собрали 10 систем управления базами данных и разобрались в их преимуществах.

Популярные системы управления базами данных

РазработчикЛицензияНаписана на
OracleOracle CorporationПроприетарнаяAssembly, C, C++
MySQLOracle CorporationGPL v2 или проприетарнаяC, C++
Microsoft SQL ServerMicrosoft CorporationПроприетарнаяC, C++
PostgreSQLPostgreSQL Global Development GroupЛицензия PostgreSQL (бесплатное ПО с открытым исходным кодом, либеральная лицензия)C
MongoDBMongoDB Inc.Различные варианты лицензированияC++, C, JavaScript
DB2IBMПроприетарная EULAAssembly, C, C++
Microsoft AccessMicrosoft CorporationПробное ПО
RedisSalvatore SanfilippoЛицензия BSDANSI 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, непроцедурные, нечувствительные к регистру и общие языки баз данных.

  • Разработчик: Microsoft Corporation
  • Написана на C, C++
  • Блог: SQL Server Blog
  • Скачать: Microsoft SQL Server

Особенности

  • Высокая производительность.
  • Зависимость от платформы.
  • Возможность установить разные версии на одном компьютере.
  • Генерация скриптов для перемещения данных.

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 и . Поддерживает 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/be.

10. Elastic

Легко масштабируемая поисковая система корпоративного уровня с открытым исходным кодом. Благодаря обширному и продуманному API обеспечивает чрезвычайно быстрый поиск, работает в том числе с приложениями для обнаружения данных. Используется такими компаниями, как Википедия, The Guardian, StackOverflow, GitHub. Elastic позволяет создавать копии индексов и сегментов.

  • Разработчик: Elastic NV
  • Написана на Java
  • Последняя версия: 7.2.0
  • Блог: Elastic
  • Скачать: Elastic

Особенности

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

Рейтинги СУБД

РейтингСУБДМодель базы данныхБалл
Июль

2017

Июнь

2017

Июль

2016

Июль

2017

Июнь

2017

Июль

2016

111OracleРеляционная СУБД1374.88+23.11-66.65
222MySQLРеляционная СУБД1349.11+3.8-14.18
333Microsoft SQL ServerРеляционная СУБД1226+27.03+33.11
445↑PostgreSQLРеляционная СУБД369.44+0.89+58.28
554↓MongoDBДокументная СУБД332.77-2.23+17.77
666DB2Реляционная СУБД191.25+3.74+6.17
778↑Microsoft AccessРеляционная СУБД126.13-0.42+1.23
887↓CassandraСУБД типа BigTable124.12-0.0-6.58
9910↑RedisСУБД типа «ключ-значение»121.51+2.63+13.48
1011↑11↑ElasticПоисковая система115.98+4.42+27.36

А какую СУБД предпочитаете вы? Аргументируйте свой выбор 😉

Источник

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

Систе́ма управле́ния ба́зами да́нных, сокр. СУБД (англ. Database Management System, сокр. DBMS) — совокупность программных и лингвистических средств общего или специального назначения, обеспечивающих управление созданием и использованием баз данных[1].

СУБД — комплекс программ, позволяющих создать базу данных (БД) и манипулировать данными (вставлять, обновлять, удалять и выбирать). Система обеспечивает безопасность, надёжность хранения и целостность данных, а также предоставляет средства для администрирования БД[2].

Основные функции СУБД[править | править код]

  • управление данными во внешней памяти (на дисках);
  • управление данными в оперативной памяти с использованием дискового кэша;
  • журнализация изменений, резервное копирование и восстановление базы данных после сбоев;
  • поддержка языков БД (язык определения данных, язык манипулирования данными).

Состав СУБД[править | править код]

Обычно современная СУБД содержит следующие компоненты:

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

Классификации СУБД[править | править код]

По модели данных

Примеры:

  • Иерархические
  • Сетевые
  • Реляционные
  • Объектно-ориентированные
  • Объектно-реляционные

По степени распределённости

  • Локальные СУБД (все части локальной СУБД размещаются на одном компьютере)
  • Распределённые СУБД (части СУБД могут размещаться не только на одном, но на двух и более компьютерах).

По способу доступа к БД

  • Файл-серверные

В файл-серверных СУБД файлы данных располагаются централизованно на файл-сервере. СУБД располагается на каждом клиентском компьютере (рабочей станции). Доступ СУБД к данным осуществляется через локальную сеть. Синхронизация чтений и обновлений осуществляется посредством файловых блокировок. Преимуществом этой архитектуры является низкая нагрузка на процессор файлового сервера. Недостатки: потенциально высокая загрузка локальной сети; затруднённость или невозможность централизованного управления; затруднённость или невозможность обеспечения таких важных характеристик, как высокая надёжность, высокая доступность и высокая безопасность. Применяются чаще всего в локальных приложениях, которые используют функции управления БД; в системах с низкой интенсивностью обработки данных и низкими пиковыми нагрузками на БД. На данный момент файл-серверная технология считается устаревшей, а её использование в крупных информационных системах — недостатком[3]. Примеры: Microsoft Access, Paradox, dBase, FoxPro, Visual FoxPro.

  • Клиент-серверные

Клиент-серверная СУБД располагается на сервере вместе с БД и осуществляет доступ к БД непосредственно, в монопольном режиме. Все клиентские запросы на обработку данных обрабатываются клиент-серверной СУБД централизованно. Недостаток клиент-серверных СУБД состоит в повышенных требованиях к серверу. Достоинства: потенциально более низкая загрузка локальной сети; удобство централизованного управления; удобство обеспечения таких важных характеристик, как высокая надёжность, высокая доступность и высокая безопасность. Примеры: Oracle Database, Firebird, Interbase, IBM DB2, rmix, MS SQL Server, Sybase Adaptive Server Enterprise, PostgreSQL, MySQL, Caché, ЛИНТЕР.

  • Встраиваемые

Встраиваемая СУБД — СУБД, которая может поставляться как составная часть некоторого программного продукта, не требуя процедуры самостоятельной установки. Встраиваемая СУБД предназначена для локального хранения данных своего приложения и не рассчитана на коллективное использование в сети. Физически встраиваемая СУБД чаще всего реализована в виде подключаемой библиотеки. Доступ к данным со стороны приложения может происходить через SQL либо через специальные программные интерфейсы. Примеры: OpenEdge, SQLite, BerkeleyDB, Firebird Embedded, Microsoft SQL Server Compact, ЛИНТЕР.

Стратегии работы с внешней памятью[править | править код]

СУБД с непосредственной записью

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

СУБД с отложенной записью

В таких СУБД изменения аккумулируются в буферах внешней памяти до наступления любого из следующих событий:

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

Такая стратегия позволяет избежать частого обмена с внешней памятью и значительно увеличить эффективность работы СУБД.

См. также[править | править код]

  • Архитектура ANSI — SPARC
  • Информационная система

Примечания[править | править код]

Литература[править | править код]

  • Когаловский М.Р. Энциклопедия технологий баз данных. — М.: Финансы и статистика, 2002. — 800 с. — ISBN 5-279-02276-4.
  • Кузнецов С. Д. Основы баз данных. — 2-е изд. — М.: Интернет-университет информационных технологий; БИНОМ. Лаборатория знаний, 2007. — 484 с. — ISBN 978-5-94774-736-2.
  • Дейт К. Дж. Введение в системы баз данных = duction to Database Systems. — 8-е изд. — М.: Вильямс, 2005. — 1328 с. — ISBN 5-8459-0788-8 (рус.) 0-321-19784-4 (англ.).
  • Коннолли Т., Бегг К. Базы данных. Проектирование, реализация и сопровождение. Теория и практика = Database Systems: A Practical Approach to De, Implementation, and Management. — 3-е изд. — М.: Вильямс, 2003. — 1436 с. — ISBN 0-201-70857-4.
  • Гарсиа-Молина Г., Ульман Дж., Уидом Дж. Системы баз данных. Полный курс = Database Systems: The Complete Book. — Вильямс, 2003. — 1088 с. — ISBN 5-8459-0384-X.
  • C. J. . on Database: Writings 2000-2006. — Apress, 2006. — 566 с. — ISBN 978-1-59059-746-0, 1-59059-746-X.

Ссылки[править | править код]

  • Database of Databases — онлайн-энциклопедия СУБД, составляемая группой баз данных Университета Карнеги — Меллона (руководитель — Энди Павло)
  • Список всех коммерческих СУБД, доступных в США на 1987 год (англ.) // Computerworld, 10 августа 1987
  • Рейтинг «популярности» СУБД, согласно ресурсу DB-Engines, основан, в основном, на частоте упоминаний СУБД и не учитывает количество установок и реальное использование в информационных системах (см. описание метода ранжирования)

Источник

Что такое СУБД

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

  • Подробнее о СУБД
  • SQL и реляционные БД: почему в них важно разбираться
  • Наиболее популярные СУБД

Подробнее о СУБД

Основные функции СУБД:

  • управление данными во внешней памяти (на дисках);
  • управление данными в оперативной памяти с использованием дискового кэша;
  • журнализация изменений (сохранение истории), резервное копирование и восстановление базы данных после сбоев;
  • поддержка языков БД (язык определения данных, язык манипулирования данными).

Каждая СУБД основывается на какой-либо модели данных, это является одним из признаков классификации. По модели данных СУБД бывают:

  1. Иерархические. В этой модели данных используется представление БД в виде древовидной структуры, состоящей из данных разных уровней.
  2. Сетевые. Данная модель является расширением иерархического подхода. Иерархическая модель подразумевает, что запись-потомок может иметь строго одного предка, в то время как в сетевой структуре потомок может иметь любое количество предков.
  3. Реляционные. СУБД, ориентированные на организацию данных как набор связанных записей и атрибутов в двумерной таблице.
  4. Объектно-ориентированные. Для управления БД, основанными на объектной модели данных. Как правило основываются на объектно-ориентированных языках программирования.
  5. Объектно-реляционные. Объединяет в себе концепции реляционной модели с дополнительными объектно-ориентированными возможностями.

SQL и реляционные БД: почему в них важно разбираться

Сегодня по-прежнему наиболее популярными при создании веб-приложений и сервисов остаются реляционные базы данных. Для управления реляционными базами данных используется язык SQL (Structured Query Language — структурированный язык запросов). Изначально SQL был инструментом работы пользователя с базой данных, однако со временем язык усложнился и стал скорее инструментом разработчика, чем конечного пользователя.

Наиболее популярные СУБД

Различные рейтинги самых популярных СУБД возглавляют Oracle, MySQL, Microsoft SQL Server, PostgreSQL.

MySQL

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

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

Microsoft SQL Server

Как следует из названия, фирменная СУБД, разработанная Microsoft. Оптимальная для использования в операционных системах семейства Windows, однако может работать и с Linux.

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

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

PostgreSQL

СУБД PostgreSQL — еще одна популярная и бесплатная система. Наибольшее применение нашла для управления БД веб-сайтов и различных сервисов. Она универсальна, то есть подойдет для работы с большинством популярных платформ.

При этом PostgreSQL — объектно-реляционная СУБД, что дает ей некоторые преимущества над другими бесплатными СУБД, в большинстве являющимися реляционными.

Oracle

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

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

Источник

Типы и структура СУБД: три богатыря

Реляционные системы управления данных применяются уже очень давно. Их популярность выросла благодаря успешным реализациям в системах управления, которые оказались весьма удобными для работы с данными разных типов. В нашей заметке мы поговорим от «трёх богатырях» в СУБД: MySQL, SQLite и PostgreSQL. Сравним их, рассмотрим преимущества, недостатки, поддерживаемые типы данных.

Пару слов о системах управления базами данных

База данных — это логически смоделированное хранилище различных типов данных. При этом каждая БД, если она не является бессхемной, следует модели, задающей определённую структуру обработки этих самых данных. Если говорить о системах управления (СУБД), то под данными терминами понимают приложения (либо библиотеки), управляющие базами данных разных типов, размеров и форм.

Реляционные СУБД

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

Отношения и типы данных в СУБД

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

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

Самые популярные СУБД (РСУБД)

Наиболее популярными реляционными СУБД являются: • SQLite — мощная встраиваемая СУБД; • MySQL — наиболее часто используемая и популярная СУБД; • PostgreSQL — гибкая и более продвинутая СУБД.

Поговорим про каждую из этих СУБД подробнее.

SQLite

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

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

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

Поддерживаемые типы данных:

— NULL (значение NULL); — INTEGER (целое число со знаком); — REAL (число с плавающей запятой); — TEXT (текстовая строка); — BLOB (тип данных, хранится в том же виде, в каком был получен).

Более подробную информацию об обрабатываемых типах данных смотрите по ссылке на официальную документацию.

Преимущества СУБД SQLite:

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

Минусы:

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

О целесообразности использования:

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

В некоторых случаях эту систему управления базами данных использовать не рекомендуется: — многопользовательские приложения (для них больше подходит полнофункциональные СУБД, к примеру, MySQL); — программы записи больших объёмов данных (одно из ограничений SQLite — операции записи, то есть допускается единовременное исполнение только одной операции записи).

MySQL

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

Поддерживаемые типы данных:

— TINYINT: очень маленькое целое; — MEDIUMINT: целое среднего размера; — SMALLINT: маленькое целое; — INT либо INTEGER: целое нормального размера; — FLOAT: число с плавающей запятой (одинарная точность); — BIGINT: большое целое; — DOUBLE, REAL, DOUBLE PRECISION: число с плавающей запятой (2-я точность); — DECIMAL, NUMERIC: число с плавающей запятой; — : комбинация времени и даты; — : дата; — : время; — STAMP: отметка времени; — YEAR: год (формат YY либо YYYY); — CHAR: фиксированная строка, дополняется пробелами справа до максимальной длины; — SET: множества; — ENUM: перечисление; — VARCHAR: строка переменной длины и прочие.

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

— легкая и простая установка, плюс много сторонних инструментов, облегчающих работу с базами данных; — расширенная функциональность (поддерживается большая часть SQL-функционала); — много функций, обеспечивающих безопасность данных; — мощность, масштабируемость (хорошо работает с большими объёмами данных); — скорость (пренебрежение некоторыми стандартами даёт возможность этой СУБД работать производительнее).

Недостатки:

— всё, что угодно, вы всё же не сделаете, так как определённые ограничения функциональности всё же присутствуют; — ряд операций реализован не так надёжно, как в других системах управления базами данных; — застой в разработке (хотя это и open-source-продукт, работа над СУБД и скорость её развития оставляют желать лучшего).

Рекомендации по применению:

— распределённые операции (если нужен больший функционал, чем имеется в SQLite, используйте MySQL); — приложения и веб-сайты (СУБД отличается гибкостью, возможна работа с большинством веб-ресурсов); — кастомные решения (если работаете над специфичным продуктом, эта СУБД вам подойдёт за счёт расширенного спектра настроек и режимов работы).

Но если требуется полная SQL-совместимость, эта система управления базами данных не подойдёт, т. к. возможны проблемы в процессе интеграции с другими СУБД. Также проблемы могут вызывать одновременные операции чтения-записи. Если неправильно выбрать движок, может недоставать ряда функций.

PostgreSQL

Наиболее продвинутая система управления базами данных, которая ориентируется на расширяемость и полное соответствие SQL-стандартам ANSI/ISO. Отличается от других систем объектно-ориентированным функционалом и полной поддержкой концепта ACID.

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

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

Поддерживаемые типы данных:

— bigint: знаковое 8-байтное целое; — boolean: булевская величина; — bigserial: инкрементируемое (автоматически) 8-битное целое; — box: прямоугольник на плоскости; — bit [(n)]: битовая строка (имеет фиксированную длину); — bit varying [(n)]: тоже битовая строка, но уже переменной длины; — circle: круг на плоскости; — bytea: бинарные данные; — : календарная дата; — character varying [(n)]: строка символов, имеющая фиксированную длину; — character [(n)]: аналогично, но переменной длины; — integer: знаковое 4-байтное целое; — cidr: сетевой адрес IPv6 либо IPv4; — inet: адрес хоста IPv6 либо IPv4; — macaddr: MAC-адрес; — polygon: многоугольник на плоскости; — line: бесконечная прямая на плоскости; — lseg: отрезок на плоскости; — xml: XML-данные; — path: геометрический путь; — money: денежная величина и прочие типы.

Достоинства:

— полная SQL-совместимость; — поддержка опытным профессиональным сообществом; — поддержка сторонними организациями; — расширяемость (систему управления базами данных можно программно расширить, используя хранимые процедуры); — объектная ориентированность (СУБД PostgreSQL является не только реляционной, но и объектно-ориентированной).

Минусы:

— в простых операциях чтения эта СУБД иногда уступает конкурентам; — система данных довольна сложна, поэтому не очень популярна; — сложно найти подходящего провайдера.

В каких случаях желательно использовать эту СУБД:

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

Есть и «противопоказания» применения PostgreSQL: — если всё, что вам нужно — быстрые операции чтения, однозначно не стоит брать эту СУБД; — когда повышенная надёжность, ACID и т. д. вам не требуются, то данная СУБД — это стрельба из пушки по воробьям.

Статья является свободным переводом отсюда, поэтому можете почитать её в оригинале.

Источник

Читайте также:  Какие продукты дольше всего усваиваются