Кожен проект потребує правильного вибору технології для його реалізації. І одне з найскладніших рішень – правильний вибір типу бази даних.
Що таке дані?
Це інформація, яку має зберігати наша система й з якою буде працювати. Дані можуть бути фактами, пов’язаними з будь-яким предметом. Як от, ваше ім’я, вік, зріст, вага. Зображення, файл теж можна вважати даними.
Що таке база даних?
Це велике електронне сховище, де зібрані файли даних і занесені в комп’ютер. Так постачальник електрики використовує базу даних для управління рахунками, проблемами, пов’язаними з клієнтами, для обробки даних про несправності.
SQL vs NoSQL
При виборі бази даних постає питання “Яку саме варто обрати”? Реляційну чи не реляційну?
Реляційні бази (SQL) зберігають структуровані дані, які представляють об’єкти реального світу. Скажімо, це можуть бути відомості про людину, або про вміст кошика для товарів в магазині, згруповані в таблицях, формат яких заданий на етапі проектування сховища. Приклад: MySQL, Oracle Database та Microsoft SQL Server.
Ось ознаки проектів, для яких ідеально підійдуть SQL-бази:
- Є логічні вимоги до даних, які можуть бути визначені заздалегідь.
- Дуже важлива цілісність даних.
- Потрібна технологія якою володіють багато розробників та є добра технічна підтримка.
Нереляційні бази (NoSQL) влаштовані інакше. Наприклад, документо-орієнтовані бази зберігають інформацію у вигляді ієрархічних структур даних. Може йтися про об’єкти з довільним набором атрибутів. Те, що в реляційної БД буде розбито на кілька взаємопов’язаних таблиць, в нереляційних може зберігатися у вигляді цілісної сутності.
Приклад: MongoDB, Cassandra.
А ось властивості проектів, для яких підійде щось зі сфери NoSQL:
- Вимоги до даних нечіткі, невизначені, або змінюються з розвитком проекту.
- Проект може коригуватися з часом, при цьому важлива можливість негайного початку розробки. Дуже важлива швидкiсть.
Ще більше корисної інформації про бази даних та інші критичні для проектних менеджерів й бізнес аналітиків знання ви дізнаєтесь на курсі Online Technical Skills for PMs and BAs.