SQLite срещу MySQL срещу Системи за управление на бази данни PostgreSQL сравнение
- Система за управление на бази данни
- Система за управление на релационни бази данни
- Типове данни и връзки между тях
- Популярни и основен релационна база данни
- SQLite
- типове данни SQLite
- Ползи SQLite
- недостатъци SQLite
- Кога да се използва SQLite?
- Когато откаже SQLite?
- MySQL
- типове данни MySQL
- Предимства на MySQL
- недостатъци на MySQL
- Кога да се използва MySQL?
- Кога да се откаже от MySQL?
- PostgreSQL
- Видове PostgreSQL база данни
- Предимствата на PostgreSQL
- PostgreSQL недостатъци
- Кога да се използва PostgreSQL?
- Когато откаже PostgreSQL?
Система за управление на бази данни
база данни - е специално проектирана за съхранение на различни видове данни. Всяка база данни има определен модел (релационна, документ ориентирани), който осигурява лесен достъп до данни. системи за управление на бази данни (СУБД) - специално приложение (или библиотека) за управление на бази данни на различни размери и форми.
Системата за управление на релационни бази данни (RDBMS)
СУБД трябва да предостави релационния модел на данните. Самият модел предполага определен тип отношения между лица от различни таблици. За съхранение и обработка на данни, този тип СУБД трябва да има определена структура (таблицата). Таблиците в всяка колона може да съдържа данни от различни типове. Всеки запис се състои от множество от атрибути (колони) и уникален ключ се съхранява в една и съща маса - всички тези данни са свързани помежду си, както е описано в релационния модел.
Типове данни и връзки между тях
Взаимоотношения в бази данни могат да се разглеждат като математическа комплект, който съдържа редица качества, които заедно представляват база данни и информацията, съхранявана в него (фразата за тези, които разбират какво математически комплект).
При създаването на всяко поле структура на записите в таблицата трябва да има предварително описано тип (например: низ стойност цяло число, и т.н.). Всички бази данни са съставени от различни видове данни, които не винаги са взаимозаменяеми. Когато се работи с базата данни винаги трябва да се справят с такива ограничения.
Забележка. ако искате да използвате неструктурирани данни (т.е. записи в една и съща маса, могат да имат различна структура), е необходимо да се помисли за използване NoSQL (bezskhemnaya СУБД).
Популярни и основен релационна база данни
В тази статия, ние ще разгледаме три основни svobono разпределени СУБД.
SQLite - много мощна вградена система за контрол
MySQL - най-популярната и обща база данни
PostgreSQL - най-модерната база данни
Забележка. безплатен софтуер винаги е възможно да се променят, за да отговаря на нуждите ви. почти винаги можете да получите безплатно копие на хранилището от системата за контрол на източника.
Ако се интересувате от тези копия, а след това се обърне внимание на някои от тях, като например MariaDB.
Тя може лесно да се интегрира в приложение за база данни. Тъй като тази система се основава на файлове, тя осигурява доста широка гама от инструменти, за да работят с него, в сравнение с базата данни на мрежата. Когато се работи с това обръщение база данни се появят директно на файлове (тези файлове се съхраняват данни), вместо на пристанищата и контакти в базата данни на мрежата. Ето защо е много SQLite, бърз и мощен благодарение на библиотеки, обслужващи технологии.
типове данни SQLite
Ползи SQLite
- Файл структура - цялата база данни се състои от един файл, така че е много лесно да се прехвърлят между различните машини
- прилаганите стандарти - въпреки че тя може да изглежда, че тази база данни примитивен, но тя се използва от SQL. Някои функции на птоза (дясната външна JOIN или от всеки отчет), но ядрото все още се поддържа
- Отлично в проектирането и тестването - в процеса на разработване на приложения често се налага мащабиране. SQLite предлага всичко, което е необходимо за тези цели, тъй като тя се състои от само един файл и библиотеки, написани на C.
недостатъци SQLite
- Липсата на потребители на системата - толкова по-голяма база данни в нея членуват системи за управление на правата за достъп на потребителя. Обикновено, използването на тази функция не е толкова критична, тъй като се използва тази база данни в малки приложения.
- липса на възможност за увеличаване на ефективността - отново въз основа на проекта, е трудно да изтръгне нещо по-продуктивни в тази база данни.
При използване на SQLite
- вградени приложения - ако е от значение възможността лесно да пренесете приложение и не е критично мащабируемост. Такива като приложения за един потребител, мобилни приложения или игри
- директен достъп до диска - ако е необходимо, за да имат директен достъп до диска, можете да спечелите, когато отидете на тази база данни в функционалност и лекота на използване на SQL
- Тестване - използването на допълнителни процеси в функционално тестване, това забавя прилагането.
Когато откаже SQLite
- Multi-потребителски приложения - ако трябва да се осигури достъп до данни за множество потребители, а също така да се прави разлика между тях по права на достъп, той трябва да има пълна база данни (например: MySQL) е логичен избор
- Burn големи обеми от данни - един от ограниченията на SQLite е операция за запис. Разрешено процес само един запис в интервала от време, което силно ограничава производителността.
MySQL - е най-често срещаните сървърни СУБД висок клас. MySQL е много функционална, свободно достъпна база данни, която работи успешно с различни уеб сайтове и уеб приложения. Обучен в използването на тази база данни е съвсем проста, тъй като в интернет лесно можете да намерите повече информация.
Забележка. Заслужава да се отбележи, че поради популярността на базата данни, има огромен брой различни плъгини и разширения, които улесняват работата със системата.
Въпреки факта, че тя не е изпълнила цялата функционалност на SQL, MySQL предлага много инструменти за разработка на приложения. Тъй като този сървър СУБД, заявления за достъп до информация, за разлика да се работи с SQLite MySQL услуги.
- TINYINT - много малки числа
- SMALLINT - малки числа
- MEDIUMINT - средни стойности целочислени
- INT или INTEGER - стандартни стойности целочислени
- BIGINT - големи стойности целочислени
- FLOAT - малки стойности с плаваща запетая (с точност до стойност след десетичната точка). Винаги подписани ценности
- DOUBLE, BOUBLE ТОЧНОСТ, REAL - стандартни стойности с плаваща запетая. винаги знак
- Десетичен, Цифри - разопакова плаваща запетая стойност, винаги подписан.
- ДАТА - дата
- DATETIME - дата и час в известен смисъл
- TIMESTAMP - клеймото клеймото
- TIME - Time
- година, 2 или 4 числа (4 - - по подразбиране) на годината
- ЧАР - низ от фиксирана дължина, дясна пропуски винаги се добавят към специфичните дължини за сортиране
- VARCHAR - низ с променлива дължина
- TINYBLOB, TINYTEXT - BLOB тип стойност или текст, 255 (2 ^ 8 - 1) символи - дължина maksimalnyya
- BLOB, текст - тип стойност BLOB или текст, 65535 (2 ^ 16-1) символи - дължина maksimalnyya
- MEDIUMBLOB, MEDIUMTEXT - тип стойност BLOB или текст, 16777215 (2 ^ 24-1) символи - дължина maksimalnyya
- LONGBLOB, LONGTEXT - BLOB тип стойност или текст, 4294967296 (2 ^ 32-1) символи - дължина maksimalnyya
- ENUM - обявата
- SET - много
Предимства на MySQL
- Лесен за употреба - MySQL е доста лесен за инсталиране. Допълнителни приложения, като например графичния потребителски интерфейс, го прави доста лесно да се работи с бази данни
- Богатата функционалност - MySQL поддържа повечето от SQL функционалността.
- Безопасност - голям брой функции, за да се гарантира сигурността, който се поддържа по подразбиране
- Скалируемост - MySQL е лесно да се работи с големи обеми от данни и може лесно да бъде намалена
- Скорост - опростяване на определени стандарти позволява MySQL до значително повишаване на производителността.
недостатъци на MySQL
- Известни ограничения - които се замислени в MySQL включени някои ограничена функционалност, която понякога се изисква най-взискателните приложения.
- Проблеми на надеждност - дължащи се на определени методи на MySQL данни (комуникация, одит сделка) е понякога по-нисши в надеждността на други СУБД.
- Бавно развитие - Въпреки софтуер технически MySQL с отворен код, има оплаквания относно процеса на развитие. Заслужава да се отбележи, че има и други доста успешна база данни, създадена на базата на MySQL, MariaDB пример.
Кога трябва да използвам MySQL
- разпределен на работа - ако SQLite функционалност не е достатъчно, трябва да помислите за MySQL. Тъй като тази база данни съчетава усъвършенствана функционалност и свободен достъп до изходния код.
- високо ниво на сигурност - MySQL система за сигурност включва прост и в същото време един достоен начин за достъп до защитата на личните данни
- Уеб сайтове и уеб приложения - повечето сайтове и онлайн приложения лесно да работят с MySQL въпреки някои ограничения. Тя е лесна за конфигуриране и мащабируема система - MySQL е проверена от времето.
- Индивидуални решения - ако се работи с всеки конкретен проект, MySQL лесно може да ви помогне, благодарение на широките възможности за настройка и функционален.
Когато е по-добре да се откаже от MySQL
- -Така стандарти за привеждане в съответствие, като MySQL не си е поставила за цел - да отговаря напълно на стандарта SQL, тази база данни не поддържа изцяло SQL. Ако в бъдеще се планира да се премести в такава система, на MySQL - не най-добрият избор.
- Multithreading - въпреки че някои данни двигатели е доста лесно да се извърши паралелно четене, успоредни на четене и запис може да създаде проблеми
- Липса на функционален - някои двигатели MySQL, например, не поддържат търсене на пълен текст.
PostgreSQL
PostgreSQL е най-професионално от трите изследвани бази данни нас. Тя е свободно да се разпространява и да се увеличат SQL стандарта. PostgreSQL или Postgres се опитват да прилагат изцяло стандартите за SQL ANSI / ISO своевременно с пускането на нови версии.
От други PostgreSQL СУБД версия поддържа поиска от и / или приближаването на обектно-ориентиран релационна база данни. Например, пълна поддръжка за сигурни транзакции, т.е. Валентност, последователност, изолация, сила (валентност, последователност, изолация, Трайност (киселина).) Чрез осигуряване на мощни технологии Postgre много продуктивна. Паралелизъм не се постига чрез блокиране чете, и благодарение на прилагане на контрол многократно паралел (MVCC), който също така гарантира, че киселината. PostgreSQL е много лесно да се разшири своите процедури, които се наричат съхранени процедури. Тези характеристики улесняват използването на постоянно повтарящи се операции.
Докато PostgreSQL и не може да се похвали с голяма популярност в контраст с MySQL, има доста голям брой приложения, които улесняват работата с PostgreSQL, въпреки всичко на функционалния капацитет. Сега това е доста лесно да се инсталира с помощта на стандартни пакети на операционната система за управление на база данни.
Видове PostgreSQL база данни
PostgreSQL достойнство
- Open Source стандарта SQL - PostgreSQL - безплатен софтуер с отворен код. Тази база данни е много мощна система.
- Голяма общност - има доста голяма общност, в която можете лесно ще намерите отговорите на своите въпроси
- Голям брой добавки - въпреки огромното количество вградени функции, има много добавки, което позволява да се развива данните за базата данни и да ги управлявате.
- Разширяване - възможно ли е да се подобри функционалността чрез поддържане своите процедури.
- Обективност - PostrgreSQL е не само релационна система за управление на бази данни, но също така и обектно-ориентиран наследство с поддръжка и много други
PostgreSQL недостатъци
- Изпълнение - с една проста PostgreSQL прочетете операции могат значително да забавят сървъра и да са по-бавни от конкурентите си, като MySQL
- Популярност - по своята същност, тази популярна база данни не може да се похвали, че има доста голяма общност.
- Уеб хостинг - по силата на посочените по-горе фактори, понякога е доста трудно да се намери хостинг с поддръжка на тази база данни.
Кога да се използва PostgreSQL
- Целостта на данните - когато надеждност и цялостност на данните - Вашите изисквания, PostgreSQL е може би най-добрият избор
- Комплекс процедура обичай - ако трябва да се използва процедура, обичай, PostgreSQL има вградена поддръжка за тях
- Интеграция - ако в бъдеще планирате да преминете към платени бази данни, като Oracle, можете да го направите с PostgreSQL е съвсем проста в сравнение с други безплатни бази данни
- Сложни структури от данни - в сравнение с други PostgreSQL база данни с отворен предоставя повече възможности за създаване на сложни структури от данни, без да има какво zhertovat или аспекти.
Когато не се използва PostgreSQL
- Скорост - ако бързо се чете за вас единственият фактор, трябва да се търсят в другия базата данни
- Лесна настройка - ако не искате интегрирани данни, ACID спазване или комплекс от данни структури, конфигурацията на PostgreSQL може доста дръпнете нервите
- Репликация - ако не сте готови да похарчите времето и енергията, които могат лесно да се направи MySQL, а след това може би ще е по-лесно за него и да остане.