Лекция
Одно из наиболее важных решений, принимаемое разработчиком, заключается
в том, какую базу данных использовать. В течение многих лет
опции были ограничены разными вариантами реляционных баз данных, которые
поддерживали MOBY структурированных запросов (SQL). К ним
относятся MS SQL Server, Oracle, MySQL, PostgreSQL, DB2 и
многие другие.
За последние 15 лет на рынке появилось много новых баз данных
В рамках подхода No-SQL. К ним относятся хранилища ключей.
значений, такие как Redis и Amazon DynamoDB, широкие колоночные
базы, такие как Cassandra и HBase, хранилища документов, такие как
MongoDB и Couchbase, а также графовые базы данных и поисковые
системы, такие как Elasticsearch и Solr.
Redis — это in-memory noSQL СУБД с открытым исходным кодом класса key-value. Он был создан итальянским разработчиком Сальваторе Санфилиппо для решения типовой классической задачи — кэширования запросов при обращениях в базу данных.
Первая версия была написана на языке Tcl и содержала всего 319 строк кода. Затем ее переписали на языке C и в 2009 году презентовали в The Hacker News. Сейчас система поддерживает различные языки программирования, включая C#, Java Go, Python, Node.js.
Изначально проект был опубликован под лицензией BSD, но в 2024 сменил лицензию на двойную - RSALv2+SSPLv1, потому что ребята тоже хотят заработать)
Кстати, название системы не имеет никакого отношения к сочному хрустящему корнеплоду: в данном случае слово «Redis» — это аббревиатура от REmote DIctionary Server.
Одна из наиболее популярных систем управления базами данных SQL
это MySQL с открытым исходным кодом. Она реализована в первую
очередь как система управления базами данных (RDBMS) для программных
приложений на основе веб-технологий.
Так выглядит простая таблица SQL базы данных:
иа пате birthday last visit clothing favorite ice- adopted
size cream
1 Jimmy 09-22-1992 09-01-2019 и Mint chocolate false
2 Jessica 07-21-1992 02-22-2018 М Rocky road true
Существует множество баз данных NoSQL ("не только SQL").
Базы данных NoSQL моделируют данные исключающими способами
табличные отношения, используемые в реляционных базах
данных. Эти базы данных стали популярны в начале 2000-х годов
среди компаний, которым требовалась облачная кластеризация баз данных
из-за их явных требований к масштабированию (например, Facebook). В
таких приложениях согласованность данных была гораздо менее важной,
чем производительность и масштабируемость.
В начале базы данных NoSQL часто использовались для
нишевых задач управления данными. В основном, когда дело
доходила до веб и облачных приложений, базы данных NoSQL обрабатывали
и распределяли внушительные объемы данных. Работающим инженерам 3
NoSQL также понравилась гибкая схема данных (или ее полная
отсутствие), так что были возможны быстрые изменения в обновляемых
приложениях.
Ключевые особенности NoSQL:
Для лучшего понимания NoSQL, naBaiite рассмотрим пример.
Представим, что нам нужно хранить какую-то определенную информацию о родственниках
в блокноте. Тогда на обложке блокнота будет написано большими
буквами "Родственники", а на первой странице будут данные о первом
родственника:

А например на второй:

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