Що таке база даних?
База даних — це організоване сховище інформації, яке дозволяє швидко знаходити, змінювати й надійно зберігати дані за одночасної роботи багатьох користувачів. Керує нею окрема програма — СУБД, наприклад PostgreSQL або MySQL.
У реляційних базах дані лежать у таблицях зі строгою структурою, а звʼязки між ними задаються явно: замовлення посилаються на клієнтів, товари — на категорії. Звертаються до таких баз мовою SQL.
У нереляційних (NoSQL) базах структура гнучкіша: документи, пари «ключ — значення», графи. Їх обирають, коли форма даних заздалегідь невідома або важлива швидкість на величезних обсягах.
Ключова відмінність бази від звичайного файлу — гарантії. Вона захищає дані від втрати при збої, не дає двом користувачам зіпсувати один запис і залишається швидкою на мільйонах рядків.
Де застосовується
База даних стоїть за кожним застосунком, де щось треба памʼятати між візитами: інтернет-магазин зберігає товари й замовлення, банк — рахунки та операції, CRM — угоди й листування. Проєктує структуру бекенд-розробник, а підтримують її адміністратор баз даних і DevOps-інженер.
Вибір типу бази зазвичай продиктований задачею. PostgreSQL і MySQL беруть для основної бізнес-логіки, де важлива цілісність даних. Redis ставлять поруч як швидкий кеш, MongoDB — під документи з непередбачуваною структурою, а векторні бази зʼявилися в AI-проєктах для пошуку за змістом.
Приклад
Два менеджери одночасно оформлюють останню одиницю товару. База не дасть обом списати той самий залишок: транзакція другого дочекається першої й завершиться помилкою. Якби дані лежали у файлі, магазин продав би товар двічі.
CREATE TABLE customers (
id SERIAL PRIMARY KEY,
name VARCHAR(120) NOT NULL,
email VARCHAR(160) UNIQUE NOT NULL
);
CREATE TABLE orders (
id SERIAL PRIMARY KEY,
customer_id INT NOT NULL REFERENCES customers(id),
total NUMERIC(10, 2) NOT NULL,
created_at TIMESTAMP DEFAULT now()
); Часті запитання
Чим база даних відрізняється від файлу Excel?
Гарантіями і масштабом. База не дасть двом користувачам зіпсувати один запис, збереже дані при збої живлення, перевірить коректність звʼязків і залишиться швидкою на мільйонах рядків. Таблиця в Excel нічого з цього не обіцяє і розрахована на одну людину.
Що обрати: SQL чи NoSQL?
Якщо дані мають зрозумілу структуру і звʼязки важливі — гроші, замовлення, документи — беруть реляційну базу. NoSQL доречний, коли форма даних заздалегідь невідома, обсяги величезні, а частину суворих гарантій можна обміняти на швидкість. У великих системах їх часто використовують разом.
Що таке індекс і навіщо він потрібен?
Це додаткова структура, яка допомагає знаходити рядки, не перебираючи всю таблицю, — приблизно як абетковий покажчик у книзі. Індекси радикально пришвидшують вибірки, але сповільнюють запис і займають місце, тому їх ставлять точково, а не на кожне поле.
Що таке СКБД?
Система керування базами даних — програма, яка фізично зберігає дані й обслуговує запити до них: PostgreSQL, MySQL, MS SQL Server, Oracle. У розмові «база даних» і «СКБД» часто змішують, хоча строго база — це самі дані, а СКБД — рушій навколо них.