Продолжаем серию постов про СУБД. Представляю небольшой обзор систем управления базами данных, актуальных и востребованных в 2023 году. Это только малая часть из всех существующих СУБД. Но с моей личной точки зрения, именно эта часть заслуживает изучения в первую очередь.
С моей точки зрения, на нижеперечисленных СУБД управляется порядка 50% всех данных, которые существуют сейчас в мире. Не могу брать в расчёт такие данные как картинки (фотографии и другие бинарные файлы), поскольку их хранение зачастую обходит стороной СУБД, и работает напрямую с файловыми системами.
Так же замечу, что в списке присутствуют 6 различных систем. Из них, 3 системы являются платными, а 3 - бесплатными. Соответственно, имея желание изучить приложения такого типа, можно сразу начинать соответствующую деятельность. Любое из нижеперечисленных решений может быть установлено на обычном компьютере возрастом около 4-5 лет.
MySQL 🐬
Условно-бесплатная, классическая простая СУБД. Широко применима для создания интернет-сайтов, небольших проектов, стартапов. Широко известная во всём мире комбинация для веб-разработки представляет из себя связку PHP + MySQL. Большая часть знакомых мне систем уровня "малый и средний бизнес" использует именно эту систему.
Плюсами MySQL является простота, понятность, надёжность. Её легко развернуть и обслуживать на обычном компьютере. Неприхотлива к окружающей среде, толерантна к проявлению идиотизма со стороны разработчиков. В общем, простая как лопата, надёжная как кирпич. Тем не менее, при росте количества пользователей больше 30-50 тысяч в сутки, становится ограниченно применима.
Первый релиз MySQL состоялся в 2000 году. Создатель этой системы - Майкл Видениус. В 2010 году MySQL была выкуплена компанией Oracle, о которой я расскажу подробнее в следующем пункте.
MySQL используется в качестве стандартной базы данных для веб-разработки. Например популярная система Wodpress для создания сайтов, о которой я писал в одной из прошлых статей, использует в первую очередь MySQL для хранения данных. Иначе говоря, MySQL прочно занимает первую строчку в веб-проектах и небольших стартапах.
Кстати, скачать и запустить MySQL на своём компьютере можно прямо с их официального сайта. Есть несколько вариантов установки, в том числе для самых простых компьютеров. Я определённо рекомендую начинать изучение СУБД именно с этой системы. С практической точки зрения, на ней можно быстро обучиться работе с базами данных, без лишних стрессов. Ссылка на сайт.
Oracle 🔮
Мамонт-динозавр, выживший и адаптировавшийся к современности. Первопроходцы в мире СУБД с 1979 года. Это сложная и высокопроизводительная СУБД, которая предназначена для создания больших систем. Преимущественно применяется в гос.секторе, в проектах где требуется быстрая обработка огромных массивов данных.
Oracle Занимают 30% мирового рынка баз данных. Их СУБД является платным продуктом, а стоимость лицензий доходит до нескольких миллионов рублей. Лицензирование обычно происходит по количеству процессоров на сервере. Например в одном из вариантов, цена Oracle для компьютера с 4 ядрами составляет порядка $18.000.
Основатель Oracle - Ларри Эллисон, IT предприниматель с состоянием ~$145 млрд. Кстати говоря, образ "Железного человека" в киновселенной Marvel списан именно с него. Внешне, кстати, тоже похож.
Я не рекомендую начинать изучение СУБД с Oracle. Хотя с точки зрения больших планов на жизнь, и при условии ориентации на внешние рынки, хорошие специалисты Oracle очень хорошо зарабатывают. Ссылка на сайт.
Microsoft SQL Server 🟥
СУБД от Microsoft. Коммерческая система, в целом так же классика СУБД с угла обзора от Microsoft. Так же как и Oracle, это высокопроизводительная система для больших проектов. Тем не менее, субъективно относится ко 2-3 месту относительно лидеров рынка.
Проект запущен в 1989 году (всего-то спустя 10 лет после Oracle). Когда-то была очень любима различными гос.учреждениями, в том числе в России. Субъективно стоит чуть дешевле чем Oracle, в каких-то вопросах чуть проще и не так запредельно сложно. Короче если представить что Oracle это Java, то Microsoft SQL Server это C#. Немного топорное сравнение, но надеюсь смысл ясен.
Я не рекомендую начинать изучение СУБД с этой системы - тем более с учётом санкций, и отказа от продукции Microsoft в долгосрочной перспективе. Ссылка на сайт.
🟧 Microsoft Access
Так же СУБД от Microsoft. Простой вариант базы данных, ориентированный на локальный компьютер и небольшие сети. Входит в пакет поставки Office.
В современном мире применяется достаточно ограниченным образом. В какой-то степени можно сравнить Access с Excel, только с большим уклоном в реляционность. Тем не менее, система хорошо подходит для решения прикладных бизнес-задач МСБ, и хранения данных в рамках небольшого предприятия.
Когда-то, за неимением большого количества доступных альтернатив, применялась в качестве "классической СУБД". Сейчас за, при наличии таких решений как MySQL и PostgreSQL, постепенно отходит на второй план. В России эта система не особенно распространена. Ссылка на сайт.
PostgreSQL 🐘
Условно бесплатная, классическая СУБД с ориентацией на крупные и сложные проекты. Систему создаёт сообщество независимых разработчиков с 1996 года.
В отличие от MySQL, это уже более серьезная и сложная система. С личной точки зрения это конечно ещё не уровень Oracle, но весьма интересный и уважаемый продукт. Автор и один из главных программистов PostgreSQL - Майкл Стоунбрейкер. В 2014 году был удостоен премии Тьюринга - что-то вроде Нобелевской премии в сфере IT.
В PostgreSQL хранят данные Авито и Госуслуги, её использует Яндекс и много других крутых ребят. В последние годы, госсектор РФ сменил курс, и вместо закупок СУБД у Oracle и Microsoft, активно внедряет PostgreSQL. Где-то недавно читал о том, что затраты на внедрение этой системы составляют около 2 млрд. руб.
Отдельным большим плюсом PostgreSQL является открытый исходный код - всё прозрачно, предсказуемо и понятно. Кстати говоря, вот ссылка на исходные коды на GitHub - можно скачать и создать собственную СУБД на основе PostgreSQL.
Тем не менее, для использования PostgreSQL нужна более серьёзная подготовка. Эта система гораздо более прихотлива и требует от разработчика большей квалификации. В общем, принцип программирования "на отвали" в этом случае не прокатывает - система готова надавать воспитательных лещей за безграмотность на любом уровне применения. Ссылка на сайт.
SQLite 🕊
Условно бесплатная, мини-СУБД с ориентацией на небольшие приложения. Простая система с ориентацией на мобильную разработку, а так же хранение данных "без лишних заморочек".
Широко используется в смартфонах, небольших программах и другой компактной разработке. SQLite являются частью таких продуктов как Telegram, Mozilla Firefox, Viber, Skype, и многих других.
Автор SQLite - Ричард Хипп. Вот ссылка на его страничку на GitHub - https://github.com/drhsqlite . Первая версия системы вышла в свет в августе 2000 года. Общий размер СУБД составляет порядка 500Кб - что является одним из рекордов в компактном размере подобных систем.
Удобство SQLite проявляется в том, что это "встраиваемая" СУБД. Если все вышеперечисленные системы должны запускаться и работать в фоновом режиме компьютера - то SQLite работает как часть приложения. Ссылка на сайт.
С чего начать? 👨💻
Я рекомендую начинать с MySQL, и потом плавно переходить к изучению PostgreSQL. В этом случае, сначала ты сможешь получить комфортный и спокойный опыт, исследовав базы данных в безопасной среде. Потом, когда твой навык достаточно прокачается и появится моральная готовность - начинай использовать PostgreSQL и работать с более сложными структурами данных.
Я так же не рекомендую начинать свой путь с экзотических, малоизвестных или noSQL-решений. С моей точки зрения, вышеперечисленные в этой статье системы являются мировой классикой, на которой основаны современные информационные технологии. Совокупного использования вышеуказанных систем в их различных комбинациях, избыточно хватает для решения задач по хранению и обработке данных.
🔥 Понравилось? Подпишись! Победим восстание роботов вместе! 🔥
🚀 P.S. Ты можешь круто поддержать меня и проект "Войти в IT" на boosty! Я публикую там более эксклюзивный и профессиональный, иногда немного личный контент. Хочешь посмотреть как я выгляжу в реальной жизни? Тогда жми: Ссылка 🚀
P.S.2 У меня ещё есть Telegram-канал. Там посты чуть попроще, и чуть повеселей. Ссылка