NewSQL — эволюция реляционных СУБД

NewSQL — эволюция реляционных СУБД для распределённых систем

Почему появился NewSQL На рубеже 2000-х и 2010-х годов индустрия оказалась в ловушке: классические реляционные СУБД не справлялись с растущей нагрузкой, а NoSQL-решения жертвовали транзакционностью ради масштабируемости. Термин NewSQL предложил аналитик Мэтью Аслет (451 Group) в 2011 году, обозначив им класс систем, которые одновременно: Поддерживают реляционную модель данных и язык SQL Гарантируют ACID-транзакции Обеспечивают горизонтальное масштабирование, как NoSQL Используют современное ядро, а не унаследованную архитектуру традиционных RDBMS Проще говоря, NewSQL — это ответ на вопрос: «Почему мы должны выбирать между масштабированием и надёжностью транзакций?» ...

30 июня 2026 г. · 8 минут · CrazyElephant_x
SQL на собеседовании — разбор по шагам

SQL на собеседовании: SELECT, GROUP BY, HAVING, JOIN — разбираем по шагам

SQL — одна из частых тем на техническом интервью для аналитиков, разработчиков и архитекторов. Задачи кажутся простыми, но именно здесь легко разволноваться и не выполнить задание. В этом посте разберём путь от базового SELECT до уверенного применения JOIN и HAVING — с задачами, которые реально давали на собеседованиях. В теле поста краткое описание теории и задачи, в самом конце ответы. Дорожная карта подготовки Изучай темы именно в этом порядке — каждая следующая строится на предыдущей: ...

12 июня 2026 г. · 5 минут · CrazyElephant_x
Транзакции

Транзакции

Транзакции, что это за зверь, какие с ними проблемы, зачем они нужны. Давайте разбираться. Начнем конечно с определения. Транзакция — это набор действий с данными, объединенный в логическую единицу. Она либо выполняется целиком, либо нет. Проблемы неизолированных транзакций Потерянное обновление. Когда две транзакции записывают разные значения в одну и ту же ячейку, одно из изменений теряется. Грязное чтение. Когда читаются данные, которые в этот момент изменяются транзакцией, а потом транзакция откатывается и данные исчезают. Неповторяющееся чтение. Когда несколько раз читаются данные, которые в этот момент изменяются транзакцией — каждый раз данные могут отказаться другими. Фантомное чтение. Одна транзакция в ходе своего выполнения несколько раз выбирает множество строк по одним и тем же критериям. Другая транзакция в интервалах между этими выборками добавляет или удаляет строки или изменяет столбцы некоторых строк, используемых в критериях выборки первой транзакции, и успешно заканчивается. В результате получится, что одни и те же выборки в первой транзакции дают разные множества строк. Изоляция транзакций Чтобы параллельные транзакции могли выполняться, не мешая друг другу, придумали концепцию изоляции транзакций. Всего есть четыре уровня изоляции, но некоторые базы данных вводят свои уровни. ...

5 ноября 2024 г. · 3 минуты · CrazyElephant_x
Резервный набор данных содержит копию базы данных отличной от существующей базы данных

Резервный набор данных содержит копию базы данных

Резервный набор данных содержит копию базы данных отличной от существующей базы данных Резервный набор данных содержит копию базы данных отличной от существующей базы данных — если вы получили такую ошибку при попытке восстановить базу данных из копии, то вам в эту заметку. Разберем этот простой и неприятный случай. Восстановление базы данных из копии рядовое действие, которое постоянно используется для создания баз для разработки, тестовых сред и баз для проверки гипотез. ...

23 сентября 2022 г. · 2 минуты · CrazyElephant_x
SQL команда Order by

SQL команда Order by

Команда ORDER BY позволяет сортировать записи при выборке из базы данных по определенному полю. Синтаксис команды ORDER BY Сортировка по полю, по возрастанию SELECT * FROM имя_таблицы ORDER BY поле_для_сортировки Сортировка по нескольким полям, по возрастанию SELECT * FROM имя_таблицы ORDER BY поле1_для_сортировки, поле2_для_сортировки Что бы сортировать записи по убыванию нужно добавить DESC SELECT * FROM имя_таблицы ORDER BY поле_для_сортировки DESC ASC — означает сортировку по возрастанию (используется по умолчанию) ...

9 сентября 2021 г. · 1 минута · CrazyElephant_x