Базы данных Flashcards
Какие СУБД вы знаете?
MySQL, PostgreSQL, MS SQL Server, SQLite, Oracle Database, Mariadb
В чем различия SQL и NoSQL?
Sql имеет строгие связи между таблицами, из-за чего также имеет строгую схему данных, четкую структуру запрососв, большее сообщество и историю.
Соответственно, Nosql может хранить внутри себя почти любой тип данных, имеет специфические запросы и.д.
LEFT и INNER JOIN.
INNER JOIN SELECT * FROM table1 INNER JOIN table2 ON table1.id = table2.id; LEFT JOIN SELECT * FROM t1 LEFT JOIN t2 ON t1.id = t2.id;
Что такое и как использовать UNION, GROUP BY, ORDER BY, CONCAT
(CONCAT_WS)?
UNION - объединение результатов двух запросов в 1
GROUP BY - группировка результатов запроса по полю
ORDER BY - сортировка результатов запроса по полю
CONCAT - конкатенация
CONCAT_WS - конкатенация с разделителем |
Что такое HAVING?
аналог WHERE, который используется после GROUP BY. Содержит условия для уже сгруппированных даных. Используется перед ORDER BY
Использование LIKE в MySQL.
позволяет искать части строк в WHERE, где
% - любая последовательность символов
_ - один любой символ
Задача на проектирование простой БД из 2-4 таблиц.
…
Задача на построение запросов с использованием JOIN, группировкой.
…
Что такое и зачем может использоваться VIEW?
Результат выполнения запроса SELECT
Упрощает работу с базой данных, ускоряет время ответа сервера, т.к. вместо запроса к нескольким таблицам проще обратиться к представлению.
Модифицируемые представления - при изменении данных в самом представлении, эти данные меняются и в таблицах.
Master-slave репликация, зачем и когда?
Репликация — одна из техник масштабирования баз данных.
Состоит эта техника в том, что данные с одного сервера базы данных постоянно копируются (реплицируются) на один или несколько других (называемые репликами). Для приложения появляется возможность использовать не один сервер для обработки всех запросов, а несколько. Таким образом появляется возможность распределить нагрузку с одного сервера на несколько.
В режиме master-slave репликации есть один master-сервер, обрабатывающий запросы на изменения данных, и несколько slave-серверов, обрабатывающих запросы на чтение. В случае выхода мастера из строя, один из слейвов становится мастером.
В режиме master-master все сервера равноценны и могут обрабатывать любые запросы. Но она сложнее и если один из серверов дохнет, вы можете получить повреждение данных.