Ответ
Реляционная база данных (RDBMS) — это тип базы данных, который организует данные в виде набора взаимосвязанных таблиц (отношений) со строками и столбцами. Связи между таблицами определяются с помощью ключей. Это стандарт для структурированных данных, требующих надежности и согласованности.
Ключевые концепции:
- Таблица (Relation): Состоит из строк (записей, кортежей) и столбцов (атрибутов, полей).
- Первичный ключ (Primary Key): Уникальный идентификатор каждой строки в таблице.
- Внешний ключ (Foreign Key): Столбец, который ссылается на первичный ключ другой таблицы, устанавливая связь.
- SQL (Structured Query Language): Язык для управления и запросов к данным.
- Транзакции и ACID: Гарантии атомарности, согласованности, изолированности и долговечности операций.
Пример структуры для простого блога:
-- Таблица пользователей
CREATE TABLE users (
id SERIAL PRIMARY KEY,
username VARCHAR(50) UNIQUE NOT NULL,
email VARCHAR(100) NOT NULL
);
-- Таблица постов со ссылкой на пользователя
CREATE TABLE posts (
id SERIAL PRIMARY KEY,
title VARCHAR(200) NOT NULL,
content TEXT,
author_id INTEGER REFERENCES users(id) ON DELETE CASCADE,
created_at TIMESTAMP DEFAULT NOW()
);
Роль в DevOps:
- Управление схемой: Миграции базы данных (с помощью инструментов вроде Liquibase, Flyway) являются критической частью pipeline. Они версионируют изменения структуры БД.
- Резервное копирование и восстановление: Автоматизация бэкапов (pg_dump, mysqldump) и их тестирование.
- Мониторинг и тюнинг: Отслеживание медленных запросов, использование connection pool'ов (например, PgBouncer для PostgreSQL), настройка репликации для отказоустойчивости и чтения.
- Контейнеризация: Запуск СУБД в контейнерах (чаще для разработки/тестирования) с учетом stateful-природы данных и необходимости persistent volumes.
Популярные СУБД в стеке DevOps: PostgreSQL, MySQL/MariaDB, Amazon RDS, Google Cloud SQL.
Видео-ответы
▶
Ex-Oracle проводит собеседование на Java разработчика по базам данных
▶
Тестовое собеседование на позицию middle аналитика
▶
Рубрика: Собеседование с Подписчиком на Тестировщка (qa engineer) / Подготовка к поиску РАБОТЫ!
▶
78 QA Interviews Stream. 14.01.2023 at 10:25 GMT(UTC) +3
▶
Рубрика: СОБЕСЕДОВАНИЕ С ПОДПИСЧИКОМ! Как нужно проходить собес, чтобы взяли на работу (Junior QA)
▶
Собеседование на позицию Java junior #1 Антон
▶
73 QA Interviews Stream. 22.10.2022 at 09:15 GMT(UTC) +3
▶
72 QA Interviews Stream. 15.10.2022 at 08:40 GMT(UTC) +3
▶
71 QA Interviews Stream. 13.10.2022 at 19:45 GMT(UTC) +3
▶
71 QA Interviews Stream. 13.10.2022 at 19:45 GMT(UTC) +3
▶
Рубрика: СОБЕСЕДОВАНИЕ С ПОДПИСЧИКОМ! - Свеженький, только после курсов)))
▶
Профессия #тестировщик. №3. Собеседование тестировщика.
▶
Тестовое собеседование Java разработчика #10 - Максим Матло