Регистрация
Войти
Стать экспертом Правила
Информатика

В чем разница между типов библиотек: MySQL, SQLite, Flat File?

ОТВЕТЫ

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

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

NULL: NULL-значение.

INTEGER: целое со знаком, хранящееся в 1, 2, 3, 4, 6, или 8 байтах.

REAL: число с плавающей запятой, хранящееся в 8-байтовом формате IEEE.

TEXT: текстовая строка с кодировкойUTF-8, UTF-16BE или UTF-16LE.

BLOB: тип данных, хранящийся точно в таком же виде, в каком и был получен.

Note: для получения более подробной информации ознакомьтесь с документацией.

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

Файловая: вся база данных хранится в одном файле, что облегчает перемещение.

Стандартизированная: SQLite использует SQL; некоторые функции опущены (RIGHT OUTER JOIN или FOR EACH STATEMENT), однако, есть и некоторые новые.

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

Недостатки

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

Невозможность дополнительной настройки: опять-таки, SQLite нельзя сделать более производительной, поковырявшись в настройках — так уж она устроена.

MySQL

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

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

TINYINT: очень маленькое целое.

SMALLINT: маленькое целое.

MEDIUMINT: целое среднего размера.

INT или INTEGER: целое нормального размера.

DATE: дата.

DATETIME: комбинация даты и времени.

TIMESTAMP: отметка времени.

TIME: время.

YEAR: год в формате YY или YYYY.

CHAR: строка фиксированного размера, дополняемая справа пробелами до максимальной длины.

ENUM: перечисление.

SET: множества.

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

Простота: MySQL легко устанавливается. Существует много сторонних инструментов, включая визуальные, облегчающих начало работы с БД.

Много функций: MySQL поддерживает большую часть функционала SQL.

Безопасность: в MySQL встроено много функций безопасности.

Мощность и масштабируемость: MySQL может работать с действительно большими объёмами данных, и неплохо походит для масштабируемых приложений.

Недостатки

Известные ограничения: по определению, MySQL не может сделать всё, что угодно, и в ней присутствуют определённые ограничения функциональности.

Вопросы надёжности: некоторые операции реализованы менее надёжно, чем в других РСУБД.

Застой в разработке: хотя MySQL и является open-source продуктом, работа над ней сильно заторможена. Тем не менее, существует несколько БД, полностью основанных на MySQL (например, MariaDB). Кстати, подробнее о родстве MariaDB и MySQL можно из нашего интервью с создателем обеих РСУБД — Джеймсом Боттомли.

Недостаток функций: в зависимости от выбора движка MySQL может недоставать некоторых функций.

PostgreSQL

PostgreSQL — это самая продвинутая РСУБД, ориентирующаяся в первую очередь на полное соствие стандартам и расширяемость. PostgreSQL, или Postgres, пытается полностью соствовать SQL-стандартам ANSI/ISO.

Будучи основанным на мощной технологии Postgres отлично справляется с одновременной обработкой нескольких заданий. Поддержка конкурентности реализована с использованием MVCC (Multiversion Concurrency Control), что также обеспечивает совместимость с ACID.

Хотя эта РСУБД не так популярна, как MySQL, существует много сторонних инструментов и библиотек для облегчения работы с PostgreSQL.

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

bigint: знаковое 8-байтное целое.

bigserial: автоматически инкрементируемое 8-битное целое.

bit [(n)]: битовая строка фиксированной длины.

bit varying [(n)]: битовая строка переменной длины.

boolean: булевская величина.

box: прямоугольник на плоскости.

bytea: бинарные данные.

character varying [(n)]: строка символов фиксированной длины.

character [(n)]: строка символов переменной длины.

lseg: отрезок на плоскости.

macaddr: MAC-адрес.

money: денежная величина.

path: геометрический путь на плоскости.

point: геометрическая точка на плоскости.

polygon: многоугольник на плоскости.

real: число с плавающей запятой одинарной точности.

smallint: знаковое 2-байтное целое.

serial: автоматически инкрементируемое 4-битное целое.

text: строка символов переменной длины.

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

Полная SQL-совместимость.

Сообщество: PostgreSQL поддерживается опытным сообществом 24/7.

Поддержка сторонними организациями: несмотря на очень продвинутые функции, PostgreSQL используется в многих инструментах, связанных с РСУБД.

474
Контакты
Реклама на сайте
Спрошу
О проекте
Новым пользователям
Новым экспертам